03:21 karolherbst: can't this be optimized somehow? https://gist.github.com/karolherbst/2c7ab3d082244a36430a
03:22 karolherbst: maybe into this? 63: set ftz u8 $p0 lt f32 0x3d23d709 $r66 (8)
04:01 karolherbst: what about stuff like this? https://gist.github.com/karolherbst/5bb1c748d7a1f2c12d00
04:06 RSpliet: karolherbst: for NV50 I don't think that's possible at least
04:06 karolherbst: mhh the latter one?
04:07 karolherbst: currently checking if the blob does that
04:07 RSpliet: one of the source operands (the first iirc) must be a register
04:07 karolherbst: c[] and value might not work
04:07 karolherbst: ohh I see
04:07 RSpliet: might be different for Fermi/Kepler though!
04:08 karolherbst: but its a register there "set ftz u8 $p0 lt f32 0x3d23d709 $r66"
04:08 karolherbst: the last one
04:08 RSpliet: as far as the first one goes, not sure if set has an immediate format at all, check the decompiler for the most up-to-date specifications
04:08 karolherbst: see a lot of stuff like that "set ftz $p0 0x1 lt f32 $r43 0x3f000000" int eh blob output
04:08 karolherbst: maybe the last one has to be the immediate
04:09 karolherbst: yeah, seems like its always the last
04:09 karolherbst: then its even simplier
04:09 RSpliet: possibly you might get away with flipping the test to "ge" if that's possible
04:09 karolherbst: yeah
04:09 karolherbst: https://gist.github.com/karolherbst/2c7ab3d082244a36430a
04:10 karolherbst: the latter optimization might be "more" general
04:10 karolherbst: its strange that there is a fixed one in between
04:10 RSpliet: I don't know what you mean with that statement
04:11 karolherbst: there is a joinat between the instructions
04:13 RSpliet: I can't tell you much about that, sorry
04:13 karolherbst: seems not that important though, because the set depends on that mov directly
04:14 RSpliet: but if that means it's a branch end-point, then you should be careful that the particular register isn't set to a different value in a different codepath
04:17 karolherbst: the reg isn't used before the joinat and directly after the joinat is the set
04:17 karolherbst: so even if it would be overwritten in another branch, the set could be eliminated
04:17 karolherbst: *the mov
04:19 karolherbst: RSpliet: but what do you think about this? https://gist.github.com/karolherbst/5bb1c748d7a1f2c12d00
04:19 karolherbst: this would save one reg at no cost?
04:20 karolherbst: mhh, but I think there has to be a reg source :/
05:00 RSpliet: karolherbst: movs are cheap, too
05:01 RSpliet: I can't tell what the pipeline looks like, but probably no more than 3 cycles
05:02 karolherbst: I know, but I was thinking that reduce the amount of regs used is generally a good idea
05:02 karolherbst: especially if you only have 62 of them
05:02 RSpliet: mmm yes
05:04 karolherbst: also there is another thing I found. the blob seems to never dual issue the last istruction of a "instruction block"
05:05 karolherbst: https://github.com/karolherbst/mesa/commit/c4394f28a2adaa736f9d57414fdc60dbfbf385ff
05:05 karolherbst: at least if I don't dual issue the last one, there is no performance change
09:47 pmoreau: RSpliet: I am available this week-end for some distant RE'ing/testing on the G96 if you have time. :-)
10:01 ebrasca: how to make work GM107 [GeForce GTX 750 Ti] ?
10:01 pmoreau: You need a recent kernel at least
10:02 pmoreau: 4.1 will give you acceleration on GM107.
10:05 ebrasca: pmoreau: i have 4.1.6 but it start with intel
10:06 pmoreau: Optimus laptop? Could you paste your dmesg please?
10:09 ebrasca: pmoreau: here https://dpaste.de/VUWC
10:12 pmoreau: ebrasca: You should have a look at DRI_PRIME in http://nouveau.freedesktop.org/wiki/Optimus/
10:14 ebrasca: pmoreau: ne-pc% xrandr --listproviders
10:14 ebrasca: Providers: number : 1
10:14 ebrasca: Provider 0: id: 0x45 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 3 outputs: 3 associated providers: 0 name:Intel
10:14 ebrasca: pmoreau: why don't give some nouveau out?
10:15 pmoreau: I don't know...
10:15 marcosps1: imirkin: around?
10:16 pmoreau: ebrasca: One thought would have been that Nouveau auto-suspended and went to sleep, but can't see anything implying that in the dmesg.
10:17 pmoreau: ebrasca: Could you paste your Xorg.0.log as well please?
10:21 ebrasca: pmoreau: here https://dpaste.de/Pvsu
10:23 pmoreau: Hum... No mention of Nouveau.
10:27 pmoreau: ebrasca: Do you have xf86-nouveau or xf86-modesetting installed? (or similarly named packages)
10:27 ebrasca: pmoreau: xf86-video-nouveau ?
10:27 pmoreau: Yep
10:29 ebrasca: pmoreau: i don't know why but now give me to
10:29 ebrasca: Provider 1: id: 0x57 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 4 outputs: 4 associated providers: 1 name:nouveau
10:30 pmoreau: Eh?! Well...
10:30 pmoreau: By just waiting and without installing anything?
10:31 ebrasca: pmoreau: i have make nothing pc go off
10:31 pmoreau: Weird
10:32 pmoreau: You can have a try at DRI_PRIME now then
10:34 ebrasca: pmoreau: command not found: glxinfo
10:34 pmoreau: You need package mesa-demos
10:44 ebrasca: pmoreau: reboot and test
10:53 ebrasca: I broke something again.Thx for help
12:23 shining: hello
12:24 shining: I have a "new" card, GF119 [GeForce GT 610], no reclocking for these ?
12:25 mupuf: shining: well, you can always test it
12:25 shining: I can read /sys/class/drm/card0/device/pstate and see two modes, but I cannot change it
12:25 mupuf: what does it say?
12:25 shining: echo: write error: Function not implemented
12:25 shining: echo 0f > /sys/class/drm/card0/device/pstate
12:30 shining: well 2d support is good, and it's a fanless card so perfect for working. I was just curious to see if teeworlds was running, it does but it's a bit slow. and there is a good difference between the two modes
12:30 shining: 07: core 270 MHz memory 405 MHz / 0f: core 810 MHz memory 600 MHz
12:59 karolherbst: I don't think reclocking works for fermi in general
12:59 karolherbst: I have the same issue on my fermi card here
12:59 karolherbst: I planned to look into this after finishing other stuff first
13:01 Yoshimo: which would be?
13:02 imirkin: karolherbst: most instructions can only take an immediate in the second source
13:02 karolherbst: pcie and kepler/gddr5 stuff
13:02 karolherbst: imirkin: yeah I know, but I have a blob mmt trace here for some programs
13:04 karolherbst: imirkin: but I think this one is valid: https://gist.github.com/karolherbst/2c7ab3d082244a36430a
13:04 karolherbst: I see a lot of "set ftz $p0 0x1 lt f32 $r43 0x3fc00000" in the mmt
13:18 shining: karolherbst: but on http://nouveau.freedesktop.org/wiki/PowerManagement/ engine recloking is marked as mostly for nvc0, just like nv50 and nv30, where it seemed to work. though memory reclocking is only marked as wip.
13:20 karolherbst: shining: I don't know the exact state of fermi there
13:21 karolherbst: afaik kepler is more mature there
13:22 ebrasca: hi
13:23 ebrasca: now work my nouveau but work evil
13:26 pmoreau: ebrasca: How evil is it working?
13:26 shining: well if someone knows better what's the current state and if anything can be tested, let me know. see ya
13:27 ebrasca: pmoreau: letters disappear
13:27 pmoreau: I think there is an open bug report about it, let me find it
13:28 pmoreau: ebrasca: https://bugs.freedesktop.org/show_bug.cgi?id=90932
13:30 ebrasca: sori
13:30 ebrasca: x11 break
13:31 pmoreau: Doesn't seem to be really stable :/
13:31 ebrasca: pmoreau: how i can fix it?
13:32 pmoreau: The crash or the disappearing letters?
13:32 ebrasca: pmoreau: both
13:32 pmoreau: :D
13:33 pmoreau: Well, tbh I don't know for both cases.
13:33 pmoreau: You could follow the bug report I linked, so you'll know if a fix is found for the letters.
13:34 pmoreau: As for X, if you could paste the Xorg.log from the crash session, maybe there'll be some helpful information in it.
13:34 ebrasca: pmoreau: Sori i have lost link because x11 break
13:34 pmoreau: Ok
13:35 pmoreau: Here it is again: https://bugs.freedesktop.org/show_bug.cgi?id=90932
13:56 karolherbst: anybody have any idea if the X server shall load the modesetting driver for any new GPU, even if the gpu is set to dummy through xorg.conf?
14:06 airlied: karolherbst: xorg.conf should override all
14:07 karolherbst: I see
14:07 karolherbst: airlied: I have this nasty bug though: https://bugs.freedesktop.org/show_bug.cgi?id=91388
14:08 karolherbst: basically xorg-server loads the modesetting driver whenever I power on the gpu and load nvidia/nouveau afterwards
14:08 karolherbst: while X is running
14:08 karolherbst: only for nouveau, X crashes/restarts
14:10 airlied: karolherbst: Option "AutoAddGPU" "FALSE"
14:11 karolherbst: have that already
14:11 m3n3chm0:nasZ ¡¡
14:11 karolherbst: airlied: that's my config: https://gist.github.com/karolherbst/640ae2b42f2ba19911c8
14:12 karolherbst: airlied: it works though when nvidia/nouveau was loaded before X was started
14:12 karolherbst: modesetting is only loaded when the nouveau/nvidia is loaded after X started
14:12 airlied: those logs seem to suggest the opposite, though I've just woken up
14:12 karolherbst: so as a workaround I just load nvidia and restart X
14:13 karolherbst: then I can unload/load nouveau as I see fit
14:13 airlied: maybe AutoAddGPU needs mor ework
14:13 karolherbst: airlied: the second log has no modesetting driver load and the module was loaded before
14:14 airlied: oh actually should probably extend autoAddGPU to turn off hotplug
14:14 karolherbst: maybe
14:15 karolherbst: or is there aothe option?
14:15 karolherbst: *another
14:15 karolherbst: I am using the dummy driver, because I have a full DRI3 setup, so that I can remove the nouveau kernel module ;)
14:16 airlied: karolherbst: http://paste.fedoraproject.org/266569/92546144/
14:16 karolherbst: DRI2 seems to work worse here, so I don't care that much :D
14:16 airlied: should fix it
14:16 karolherbst: okay, will try that out later, thanks
14:27 pmoreau: \o/ I managed to get a binary out of my nouveau_codegen_spirv!
14:27 pmoreau: Well, it does nothing interesting and is weights only 8 bytes, but still, I'm happy! :D
14:27 pmoreau: s/is/it
14:33 RSpliet:gives pmoreau a high five
14:33 pmoreau: RSpliet: ;-)
14:34 pmoreau: pmoreau: Did you see my message for the G96 btw?
14:34 pmoreau: RSpliet: ^
14:34 pmoreau: (Getting late...)
14:34 RSpliet: yes, but I doubt I'll have time this weekend though, sorry
14:34 pmoreau: Ok, no problem