02:46 imirkin: anyone remember bugs involving weird depth things (other than the tomb raider: underworld thing)?
09:37 karolherbst: something improved pixmark_piano by 0.2% in mesa since the last time I checked
09:44 karolherbst: mhh, I thought the dual issue thing changed more in pixmark_piano: score: 1021 -> 1056
09:44 karolherbst: still, 3.5% are 3.5% :)
09:56 Tom^: karolherbst: https://aur.archlinux.org/packages/nouveau-kepler/ =D
09:56 karolherbst: :D
09:56 Tom^: it just had to be done.
09:57 karolherbst: the deps are wrong though
09:57 karolherbst: it doesn't work on 4.8
09:57 karolherbst: :D
09:57 Tom^: oh meh
09:57 Tom^: guess i need to change that >= to == then
09:57 Tom^: or well not even that
09:57 Tom^: it needs a >= 4.7 and < 4.8
09:57 Tom^: :P
09:58 karolherbst: yes
10:02 karolherbst: send out my dual issue stuff
10:02 karolherbst: *sent
10:03 Tom^: im also getting this lockup or freeze randomly like once a day
10:03 Tom^: always been in a bad timing so i havent had time to ssh in, if its even possible. but journalctl doesnt show any errors
10:04 Tom^: gonna try lower the boost clocking a bit. see if it helps
10:05 karolherbst: it might
10:06 karolherbst: you clocks area also a bit higher than usual
10:06 karolherbst: how much do you get full boosted? 1050MHz?
10:10 Tom^: karolherbst: AC: core 1096 MHz memory 6999 MHz
10:10 Tom^: but thats just what i have on blob tho
10:10 karolherbst: uhh 1096MHz is _quite_ high
10:10 vyadhaka: I just removed nvidia from Debian Jessie and tried to get Nouveau working, nouveau is running but the xorg.conf is missing and the resolution is incorrect, monitor settings under the GUI are incorrect, monitor comes up as unknown? any suggestions how to change settings for nouveau
10:11 karolherbst: vyadhaka: use a xrandr frontend
10:11 Tom^: karolherbst: same as blob when boosted :(
10:11 karolherbst: vyadhaka: or remove nomodeset
10:13 Tom^: oh well il go to boost 1 isntead, 1046 and test.
10:13 Tom^: but no lower!'
10:15 vyadhaka: "karolherbst: how to nomodeset? also the debian doc says "KMS is enabled by default on Linux in Debian kernels from Squeeze on, so no hand modification should be necessary. KMS is required for using the nouveau package"
10:16 Tom^: vyadhaka: does cat /proc/cmdline contain nomodeset?
10:16 vyadhaka: Tom^: no
10:17 Tom^: good, then its something else
10:17 karolherbst: vyadhaka: cat /sys/module/nouveau/parameters/modeset
10:18 vyadhaka: also I just noticed there are a whole bunch of xserver-xorg-video-* packages already installed, Debian doc says nv (xserver-xorg-video-nv) and VESA (xserver-xorg-video-vesa) Xorg driver, and the proprietary 3D driver (nvidia-glx) are incompatible with KMS.
10:18 vyadhaka: karolherbst: there is no nouveau under /sys/module
10:19 karolherbst: vyadhaka: then nouveau isn't loaded at all
10:19 karolherbst: vyadhaka: find /etc/modprobe.d/ -type f -exec grep nouveau {} +
10:20 vyadhaka: found a file with nouveau blacklist, I renamed it by adding date to the start but looks like it is getting picked up
10:20 karolherbst: yeah
10:20 karolherbst: I think the ending is checked
10:20 karolherbst: every file ending with .conf
10:21 karolherbst: or so
10:21 karolherbst: or just remove it
10:21 Tom^: karolherbst: btw what was that cache or buffer that i fiddled with some month ago, dont have irclogs that far back any more.
10:22 karolherbst: how should I know
10:22 Tom^: because it was something you had noticed you ran out of, something uh i think shader related?
10:22 Yoshimo: Tom^: the main channel is logged so you might find it ;)
10:23 Tom^: Yoshimo: if only i could search them
10:23 karolherbst: Tom^: no idea
10:25 karolherbst: does anybody want to try some perf patches for gt200+ teslas?
10:25 karolherbst: or even teslas in general
10:33 vyadhaka: karolherbst: thank you! it's sorted now, everything looks ok.
10:33 karolherbst: nice :)
10:43 karolherbst: mupuf: I was able to setup a OpenGL over VNC setup to run OpenGL applications on the remote
10:43 karolherbst: I could create some configs for reator for this too
10:43 karolherbst: no idea if anybody really needs it though
10:48 Tom^: "2016-05-13 16:17 < karolherbst> imirkin_: maybe we should increase the space for shaders? Because in eon based games I usually hit this"
10:48 Tom^: i knew it.
10:48 karolherbst: ahh that thing
11:52 enyc:wondering if a setup with one nouveau dual-head and a matrox using xinerama etc. going to behave and be more efficitevy than nouveau with 2 gpus at once, that seems to fail/misbehave =)
11:53 enyc: NVS450 4-output-card is that weird 2 dualhead gpus on the same card ....
13:20 karolherbst: imirkin, mwk: how hard would it be to write a test application, which executes a program on the gpu with 3 instructions and get pwer counters result from this? I am especially thinking about REing dual issueing this way
14:01 Namidairo: the pci config space mirror in bar0 isn't 1:1 is it
14:02 Namidairo: keep seeing the same 32-bit value where there are supposed to be 0's
14:05 karolherbst: Namidairo: what do you mean precisely?
14:06 Namidairo: just expected it to be exactly the same
14:07 karolherbst: why should it?
14:07 Namidairo:shrgs
14:09 karolherbst: and which config space mirror do you mean?
14:10 Namidairo: bar0 + 0x88000
14:10 karolherbst: well
14:10 karolherbst: that's not a mirror at all
14:10 karolherbst: just the mmio area of the pci stuff
14:11 karolherbst: the gpu abstracts hardware pci things away
14:11 karolherbst: so the gpu interface to the pci parts are simplified
14:11 karolherbst: there is even a new range at +0x8c000
14:11 karolherbst: since kepler
14:14 Namidairo: thought i was just going crazy and the reads were getting stuffed
14:15 karolherbst: nope
14:15 karolherbst: did you check rnndb?
14:15 karolherbst: for a few mmio regs we know what they are for
14:16 karolherbst: and some manipulate the pci config a bit, but usually we leave those things alone except for link speed changes
14:16 karolherbst: you could check out the pci subdev too: https://github.com/skeggsb/nouveau/tree/master/drm/nouveau/nvkm/subdev/pci
14:30 karolherbst: Namidairo: but is there something special you want to achieve?
14:45 Namidairo: not really
16:12 imirkin: enyc: people have definitely used the NVS450 successfully with zaphodheads + xinerama
16:13 imirkin: karolherbst: i have a GT215 plugged in, may be able to test stuff
16:16 karolherbst: imirkin: those have no perf counters yet, right?
16:18 imirkin: karolherbst: sure they do
16:18 karolherbst: also for inst_issued1 and inst_issued2?
16:19 karolherbst: or soomething similiar
16:20 karolherbst: then I would like to see the result of all inst_issued counters enabled from mesa master and once from my dual_issue branch
16:20 karolherbst: the last commit enables some dual issueing for gt200+
16:21 karolherbst: but pixmark_piano crashes on my tesla
16:21 karolherbst: no clue why
16:21 imirkin: karolherbst: https://cgit.freedesktop.org/mesa/mesa/tree/src/gallium/drivers/nouveau/nv50/nv50_query_hw_sm.c
16:24 karolherbst: no dual issue stuff as it seems
16:24 karolherbst: well under pixmark piano you should see a performance difference though
16:24 karolherbst: even if that's below 1%
16:28 imirkin: karolherbst: btw, i'm moderately sure that while it's "dual issue", it's "dual issuing", not issueing
16:28 karolherbst: mhh might be
16:28 karolherbst: right
16:35 karolherbst: imirkin: but do you also get a crash trying to run pixmark_piano?
16:35 imirkin: dunno
16:35 imirkin: never tried it
16:35 imirkin: no clue what it is or how to run it, tbh
16:35 imirkin: (at least not beyond it being "some benchmark")
16:36 karolherbst: k, it is part of gputest
16:36 imirkin: hmmm... did i install that at one point?
16:36 karolherbst: and a core only benchmark with no memory requiernements
16:36 imirkin: what's the binary called?
16:36 karolherbst: GpuTest
16:36 imirkin: hm. i have a zip file...
16:36 karolherbst: bunch of shell scripts for various things
16:36 karolherbst: like start_pixmark_piano_windowed_1024x640.sh
16:37 karolherbst: but that may leave you with like 1 fps at most :D
16:37 imirkin: i have 0.7.0 - do i want something newer?
16:37 karolherbst: no clue, I also have 0.7.0
16:37 karolherbst: seems to be the newest
16:38 imirkin: k
16:38 imirkin: and then i do?
16:38 karolherbst: run it like this: ./GpuTest /test=pixmark_piano /benchmark /no_scorebox /msaa=0 /benchmark_duration_ms=60000 /width=1024 /height=640
16:38 imirkin: k
16:38 karolherbst: you can adjust resolution and duration
16:39 karolherbst: ;)
16:39 imirkin: harsh...
16:39 imirkin: modprobe: ERROR: could not insert 'nvidia': No such device
16:39 imirkin: good thing i wasn't running this as root!
16:39 karolherbst: yeah, it calls cuda I think
16:39 karolherbst: or so, no clue
16:40 karolherbst: but does it run at least on your end?
16:40 imirkin: on the NV106, yes
16:40 karolherbst: mhh
16:40 imirkin: segfault on tesla
16:40 imirkin: super.
16:40 karolherbst: :)
16:40 karolherbst: well
16:40 karolherbst: it produces 5k instruction binaries
16:40 karolherbst: I doubt tesla was developed with that in mind
16:40 karolherbst: unoptimized over 12k
16:40 imirkin: interesting.
16:40 karolherbst: yeah
16:40 imirkin: it dies in RA
16:40 karolherbst: pixmark_piano is one fat pixel shader
16:41 imirkin: in a very odd place in RA
16:41 karolherbst: and prodcues slideshows everywhere
16:41 imirkin: gonna have a closer look
16:41 karolherbst: k, no idea which benchmark would be fitting for testing dual issueing though
16:42 karolherbst: maybe tessmark? :D
16:42 karolherbst: let me test here
16:42 imirkin: ooh, fun
16:43 imirkin: it segfaults on NV106 as well
16:43 imirkin: just at the very end
16:43 karolherbst: yeah
16:43 karolherbst: that's normal though
16:43 imirkin: lol
16:43 imirkin: if you say so
16:43 imirkin: i got 7-9fps on mine
16:43 imirkin: at 1024x640
16:43 karolherbst: :D
16:43 karolherbst: that's not that bad
16:43 karolherbst: on master?
16:43 imirkin: 12.0.1
16:43 karolherbst: ohh wait, that's maxwell
16:43 imirkin: no
16:44 imirkin: it's a GK208B
16:44 karolherbst: ohh kepler2
16:44 karolherbst: mhh, do we dual issue on those?
16:44 imirkin: hopefully!
16:44 karolherbst: cat _geeks3d_gputest_scores.csv
16:44 karolherbst: it should give you the points at the end of the line
16:44 imirkin: PixMark Piano,Gallium 0.4 on NV106,3.0 Mesa 12.0.1,1024,640,NO,Off,7,60000,0,423
16:44 karolherbst: k
16:44 karolherbst: try with my branch
16:44 karolherbst: and hopefully it will be 460+
16:44 karolherbst: ...
16:44 imirkin: well, i don't have an opt build
16:45 karolherbst: what do I say
16:45 karolherbst: 430+ :D
16:45 imirkin: and it's pointless to run this sort of thing in debug (at least for perf)
16:45 karolherbst: doesn't matter
16:45 karolherbst: doesn't matter
16:45 karolherbst: it has 60 calls per frame
16:45 imirkin: ah hehe
16:45 karolherbst: and half of them are for the tux
16:46 karolherbst: as I said: one big fat fragment shader :p
16:46 karolherbst: (well 2, but the tux doesn't count)
16:46 imirkin: karolherbst: btw, do you remember any games with weird depth issues?
16:46 imirkin: (or perhaps just plain "weird" issues)
16:46 karolherbst: like talos?
16:46 karolherbst: or something else?
16:47 imirkin: like talos. but something else. pretty sure talos won't be affected by this.
16:47 imirkin: i checked tr:u, didn't fix it either
16:47 karolherbst: mhhh, saints row 1 has weird color issues if you max the settings up
16:47 karolherbst: everything is tainted in violett
16:47 imirkin: it has to be something new enough to be using ARB_clip_control
16:47 karolherbst: uhhh
16:48 karolherbst: it is eon ported
16:48 imirkin: we were messing up the near/far planes in that case
16:48 imirkin: i even knew that we were, but i couldn't find anything where it mattered, so i left it alone
16:48 karolherbst: no idea, didn't noticed anything
16:48 imirkin: since my understanding of depth is ... not deep
16:48 karolherbst: ...
16:50 imirkin: [66969.257880] nouveau 0000:02:00.0: X[1610]: nv50cal_space: -16
16:51 imirkin: heh
16:51 karolherbst: I would guess it can't handle such big shaders :p
16:51 imirkin: that has nothing to do with shaders
16:51 imirkin: also that's the GK208
16:51 karolherbst: I thought it is related to the RA issue
16:51 karolherbst: k
16:52 imirkin: soooo many issues.... :(
16:52 imirkin: maybe if i stick my head in the sand, they'll all go away
16:52 imirkin: works for ostriches...
16:55 karolherbst: mhh pixmark_volplosion: 884->892 @ 20 sec
16:58 RSpliet: imirkin: actually, the ostriches are still there even when your head is in the sand... you just don't see them
16:58 imirkin: when i close my eyes, the world goes away
17:02 karolherbst: imirkin: does "./GpuTest /test=pixmark_julia_fp32 /benchmark /no_scorebox /msaa=8 /benchmark_duration_ms=20000 /width=1024 /height=640" also crash on your tesla?
17:03 imirkin: works fine
17:03 karolherbst: k, then it is vgl messing up
17:03 imirkin: 80-100fps
17:04 karolherbst: k, then once with mesa master and once with my dual_issue branch
17:04 karolherbst: and then compare the poits from the csv file, thanks :)
17:04 imirkin: PixMark JuliaFP32,Gallium 0.4 on NVA3,3.0 Mesa 12.0.1,1024,640,NO,8X MSAA,89,20000,0,1777
17:04 imirkin: PixMark JuliaFP32,Gallium 0.4 on NV106,3.0 Mesa 12.0.1,1024,640,NO,8X MSAA,169,20000,0,3371
17:06 imirkin: oh. that backtrace on telsa makes more sense with debugging symbols
17:06 imirkin: #3 0x00007ffff2644eb8 in nv50_ir::isShortRegOp (insn=0x0)
17:06 imirkin: heh
17:06 imirkin: probably not a great idea.
17:06 karolherbst: PixMark JuliaFP32,Gallium 0.4 on NVE6,3.0 Mesa 12.1.0-devel (git-4784c83),1024,640,NO,8X MSAA,478,20000,0,9514
17:06 karolherbst: :p
17:06 imirkin: my GK208 was free, the GT215 was $35 (with shipping). how much did yours cost? :p
17:07 karolherbst: :D
17:07 mwk: karolherbst: I have such a thing in hwtest for Tesla
17:08 karolherbst: it was included with the laptop :p
17:08 karolherbst: mwk: ohh nice
17:08 mwk: see hwtest/g80_anything.c
17:08 karolherbst: I would like to push like every combination through that
17:08 karolherbst: or at least verify what we do
17:09 karolherbst: mhh, have to dig through that, the thing is, I have to read out the perf counters too
17:09 mwk: and ideally I'd love to have the same thing for Fermi+ as well
17:09 mwk: oh, that's trivial
17:09 karolherbst: k
17:09 mwk: either use the "mov from $sr" insn or jus read the mmio registers directly
17:10 karolherbst: ahh k
17:10 karolherbst: so I would just do computer programs and test dual issue there, and I can also read out the perf counters while at it
17:13 imirkin: crud. http://hastebin.com/jekihelamo.coffee
17:14 karolherbst: mhh
17:15 imirkin: now i have to remember how to get valgrind and gdb to play together
17:16 karolherbst: valgrind --gdb?
17:16 imirkin: i thought i had to do some gdbserver bs
17:16 karolherbst: --vgdb
17:17 karolherbst: but I think you can also do without it actually
17:17 imirkin: you feed it some arg
17:17 imirkin: then it spins up a gdb server
17:17 imirkin: and a cmdline to get gdb to connect to it
17:17 imirkin: something like that
17:17 karolherbst: mhh
17:18 karolherbst: the gdbserver way is explained here: http://billiob.net/blog/20140330_vgdb.html
17:34 karolherbst: !(a &&b) <=> !a || !b, right?
17:34 karolherbst: I think I made a mistake in my patch indeed
17:35 karolherbst: ohh wait
17:35 karolherbst: double !!
17:36 imirkin: i didn't say that your code is strictly incorrect
17:36 imirkin: just there's a dual condition which doesn't need to be there
17:36 karolherbst: I know, it was my mistake to think it was wrong
17:36 imirkin: and yes, de morgan's law... !(a && b) == !a || !b
17:37 karolherbst: you swaped this and i once too much
17:37 imirkin: i did? or you did?
17:37 karolherbst: I explained :p
17:37 karolherbst: any other combination broke stuff though
17:37 karolherbst: so I am quite sure it is right that way
17:37 imirkin: ah ok
17:37 imirkin: i wasn't paying close enough attention
17:38 imirkin: i thought the "this" stayed the same
17:38 imirkin: but i guess not
17:38 karolherbst: oop ain't easy :p
17:38 karolherbst: I called a method on the argument
17:38 karolherbst: then this changes
17:38 imirkin: right
17:42 karolherbst: imirkin: mupuf especially wrote a script for gputest to timeout the process, because it sometimes doesn't even quite (even after the benchmark was finished)
17:42 imirkin: ok, well i very much run it manually
17:43 karolherbst: my tesla is damn slow :/
17:44 karolherbst: PixMark JuliaFP32,Gallium 0.4 on NVAC,3.0 Mesa 12.1.0-devel (git-e179347),1024,640,NO,8X MSAA,22,20000,0,443
17:49 imirkin: the GT215 is pretty beefy, it's the one with GDDR5
17:49 imirkin: sadly i can't reclock it
17:49 imirkin: but it's still fast even at base clocks
17:50 imirkin: memory could use a bit of a boost... http://hastebin.com/afatimuqeb.mel
17:50 karolherbst: can't you reclock to 0f without memory?
17:50 karolherbst: not that it matters much
17:51 imirkin: exactly :)
17:51 imirkin: not worth the hassle
17:51 karolherbst: but for pixmark_piano this would mean 35% more perf
17:51 karolherbst: :D
17:52 karolherbst: and julia_fp32 also doesn't really need high memory clocks
17:53 imirkin: btw, i've also recently come into a GM107, so i might get the ddx working on maxwell
17:54 imirkin: which should make ben and dave immensely unhappy
17:54 karolherbst: :D
17:54 karolherbst: they want to use modesetting, right?
17:54 imirkin: yes
17:54 imirkin: and i want !that
17:55 imirkin: really what i want is to not deal with the bajillion bugs that will come in as a result
17:55 karolherbst: mhh
17:55 imirkin: the GL driver is *not* hardened at all
17:55 karolherbst: true
17:55 imirkin: the intel driver has an exit() conveniently located in error-handling code
17:55 karolherbst: I am sure you can read out sensitive data from webgl that way pretty easy
17:55 karolherbst: :D
17:56 imirkin: i'm sure we do clever things like that in nouveau as well
17:56 imirkin: i don't mean wrt permissions
17:56 imirkin: i mean wrt not crashing
17:56 karolherbst: ahh
17:56 imirkin: the ddx code is all very simple, every error is always handled to some reasonable degree
17:56 karolherbst: right
17:56 imirkin: if enough shit hits enough fans, it keels over, but a lot of stuff *is* dealt with
17:57 karolherbst: I don't think the glamor stuff will be any time faster
17:57 imirkin: whereas the approach in GL is "just crash, they'll restart the game and it'll all be good"
17:58 karolherbst: maybe something low level like vulkan might be better suited? Allthough the error handling approach is there is kind of unsuited too
17:59 karolherbst: so you end up writing low level ddx in the end, if you would follow that thought
17:59 imirkin: well, it's not the API's fault
17:59 imirkin: more like the driver implementers' fault
17:59 imirkin: but it's a complex api
17:59 imirkin: lots of things can go wrong
17:59 imirkin: etc
17:59 imirkin: and the recourse when some low-level thing goes wrong is often not particularly clear
18:00 imirkin: there's all this recent robustness stuff which has come about which might help
18:00 karolherbst: I might should test bioshock on master too :O
18:00 imirkin: i'm sure it's much improved with marek's stuff
18:00 imirkin: almost none of his improvements were radeonsi-specific
18:00 imirkin: although i think state changes are way more expensive on radeonsi
18:01 imirkin: so, without having measured or analyzed anything, my guess is it won't be as pronounced of an effect on nouveau
18:01 karolherbst: yeah, I will compare master wiht last stable release
18:01 karolherbst: well, if it is 5% faster, I am happy
18:01 imirkin: might want to use opt for that one :)
18:01 karolherbst: closer to nvidia
18:01 imirkin: yeah, it'll almost definitely be faster
18:01 imirkin: just probably not the 40% or whatever
18:01 karolherbst: yeah
18:02 karolherbst: with bioshock we were around 60% close
18:02 karolherbst: to nvidia
18:02 karolherbst: if we get to 70%+ => very good
18:02 karolherbst: but the latest phoronix results are still funky
18:03 karolherbst: every gpu is somehow equally fast
18:03 karolherbst: (or bad)
18:03 imirkin: well, sounds like it's coded with a TON of driver overhead
18:03 karolherbst: yep
18:03 karolherbst: nvidia gtx 950 2x perf compared to those high end amds
18:03 karolherbst: this is just crazy :D
18:05 imirkin: my guess is that the game uses some functionality that's not exposed on mesa
18:05 karolherbst: might be, yes
18:05 imirkin: and/or has carefully optimized paths that use NV_gpu_program5 & co
18:05 karolherbst: though the dev always say they didn't optimize for nvidia
18:05 karolherbst: just developed against it :D
18:06 imirkin: that's generally a lie
18:06 imirkin: nvidia provides developers to integrate into the game developers' dev team
18:06 imirkin: (for major games, not for everyone obviously)
18:06 karolherbst: well, those eon guys don't develop the game though
18:06 karolherbst: no source access
18:06 tobijk: imirkin: true, but still within the ogl ports?
18:07 imirkin: uhhh... eon definitely has source access
18:07 tobijk: i'd more guess nvidia does not care there :D
18:07 karolherbst: imirkin: nope
18:07 karolherbst: they don't
18:07 imirkin: wtf?
18:07 karolherbst: yep
18:07 karolherbst: if game engine is broken -> they have to hack around that in their eon layer
18:07 imirkin: ok, well VP definitely has source access :)
18:07 karolherbst: not afaik
18:08 karolherbst: eon is closer to wine than anything else
18:08 karolherbst: they even started from wine until they decided to change a lot of things
18:08 karolherbst: anyway, they use the original game binaries as they are
18:09 karolherbst: the dev also told me, that the saints row I engine is broken as hell, but they can't fix it, so they have to deal with it
18:10 imirkin: neat-o
18:11 karolherbst: yep
18:20 karolherbst: ohh, on ultra settings there are graphical issues now
18:21 Sophira: Hi all. Sorry I haven't been around here lately.
18:22 imirkin: karolherbst: yay? :)
18:22 karolherbst: ambient occlusion High+ is broken
18:24 karolherbst: Sophira: no problem
18:24 Sophira: How is everyone?
18:25 karolherbst: better actually. Just have to write stuff, but mupuf isn't around :/
18:25 karolherbst: anybody else want to read my proposal for XDC?
18:25 karolherbst: I think it is too short, so I need to know what I should add .D
18:26 karolherbst: mhh actually I should work on that, instead of anything else right now...
18:26 Sophira:doesn't feel like she would be of much help.
18:27 karolherbst: well
18:27 karolherbst: especially you would be of help
18:27 karolherbst: cause you don't know the topic at all :D
18:28 Sophira: Ooo, okay.
18:28 Sophira: In that case, sure.
18:28 Sophira: :)
19:04 imirkin: ok, well on the bright side, the issue repros 100% with that piano shader
19:05 imirkin: on the down side, it's something annoying
19:48 karolherbst: mhh, we are 5 nouveau and 5 nvidia guys at XDC, we should do some team stuff against each others, like football (the real one, not this US fake :p ) or so :D
19:48 karolherbst: or poker, they bet documentations and we bet to screw up in stuff
19:49 imirkin: neat. found a little buglet in BitSet
19:49 imirkin: oh. but it's never called. that's why it's never come up before.
19:57 imirkin: sssuuuper. i think the nv50 bug is triggered by an issue in the spill logic.
19:58 karolherbst: :)
19:59 imirkin: that's fucking fantastic.
19:59 imirkin: gr.
19:59 imirkin: and of course, not the spilling logic itself
19:59 imirkin: but rather somewhere in the "spill then undo all that and repeat" dance
19:59 karolherbst: ...
19:59 karolherbst: again
19:59 karolherbst: I already fixed on of those bad boys...
20:00 imirkin: believe it or not, but multiple bugs can exist in a single piece of code :)
20:00 karolherbst: :D
20:00 imirkin: (in coding interviews, that tends to be the #1 false assumption candidates make)
20:00 imirkin: "oh, i fixed 1 bug. it must be perfect now."
20:00 karolherbst: sure
20:01 karolherbst: that's how I do things usually :p and I don't learn even after reworking things 5 times
20:01 imirkin: well, with something like the RA code, you ain't exactly gonna find those bugs by pure inspection
20:01 imirkin: it's one of the rare times that i end up having to break out gdb to assist
20:04 karolherbst: I think it already troublesome to debug stuff like mesa with valgrind...
20:04 karolherbst: something I really don't plan to do at all
20:05 imirkin: well, i think i see the general location of the issue
20:05 imirkin: following up on a few details now
20:05 karolherbst: might be some missed cleanups again
20:06 imirkin: did you report the piano-on-tesla issue earlier?
20:06 karolherbst: and list overflowing
20:06 karolherbst: I think I mentioned it at some point
20:06 imirkin: hrm ok. sorry i didn't pick up on it :(
20:06 karolherbst: no worries
20:06 imirkin: feel free to bug me often about various bugs, esp if i don't acknowledge them
20:06 karolherbst: :D
20:06 imirkin: i do *attempt* to stay on top of it all, even if i don't always get around to fixing everything
20:07 karolherbst: I am sure you indeed noticed that one, but it was more like "currently no time, might look later into that" :p
20:13 karolherbst: hah!
20:13 karolherbst: imirkin: "[Sunday, June 5, 2016] [12:21:07 AM CEST] <imirkin> where do i get this pixmark piano?"
20:13 karolherbst: :p
20:13 karolherbst: after I said "[Sunday, June 5, 2016] [12:18:09 AM CEST] <karolherbst> does anybody here has a tesla can could check if pixmark_piano crashes?" :p
20:13 imirkin: hehe
20:14 imirkin: sounds a lot like today's conversation
20:14 karolherbst: yeah
20:14 imirkin: maybe that's when i downloaded but then promptly forgot about it
20:15 karolherbst: maybe
20:33 jcallen: anyone able to help me figure out why I get no output after loading the nouveau driver? dmesg output via journalctl: https://gist.github.com/anonymous/2340a3ec82737a8b68037e1e2dac4896
20:36 imirkin: jcallen: because you are the proud owner of a GTX 970 with 4GB of vram
20:36 imirkin: jcallen: you can boot with nouveau.noaccel=1 nouveau.nofbaccel=1 in order to avoid any acceleration from being used for now
20:37 jcallen: at that point, I might as well keep using the proprietary driver... :(
20:37 imirkin: jcallen: i believe skeggsb is working on a fix, but basically nouveau makes some bogus assumptions about the memory layout which that particular model happens to break
20:38 imirkin: jcallen: oh, if you're after perf you won't find it with nouveau on the GM20x series -- nvidia has locked away some functions behind signed firmware, including fan control
20:38 imirkin: which means that reclocking is out (since the gpu will just burn)
20:39 jcallen: lovely -- I guess this means that my next video card purchase will be AMD...
20:39 imirkin: jcallen: if you're looking for open-source support, i highly recommend sticking to intel or amd
20:40 imirkin: (unless the very unlikely thing happens and nvidia makes this various firmware redistributable, which seems unlikely at this point)
20:52 imirkin: crud. this ra rabbithole keeps getting deeper =/
20:52 imirkin: i think i have a solid idea of what's going on now
20:52 imirkin: just need to figure out how to fix it :(
21:06 Tom^: wow i didnt know the fan control functions went into the firmware
21:06 karolherbst: Tom^: I am sure it was pretty much that way since always or so (well always being gt200+)
21:07 Tom^: yea but here i thought nvidia being the half non bad guys actually releasing firmware, it just seems then they released half useless crap :p
21:08 karolherbst: well
21:09 karolherbst: they didn't release the pmu stuff yet
21:09 karolherbst: which you need for reclocking
21:09 karolherbst: well actually the reclocking bits we can do
21:09 karolherbst: :p
21:09 karolherbst: ohh wait, I will try something
21:10 karolherbst: is reator down?
21:25 imirkin: gr. my beautiful theory. ruined. something didn't work, still getting the same error :(
21:54 enyc: imirkin: hrrrm, how do i actually generate a configuration for zaphodheads+xinerama ???
21:55 enyc: imirkin: the mate 'monitors' control panel not showing me anything on other part of the gpu etc
21:55 enyc: imirkin: nor the proper resolitions
21:55 imirkin: enyc: https://nouveau.freedesktop.org/wiki/MultiMonitorDesktop/
21:55 imirkin: when you use xinerama, that kills xrandr
21:55 imirkin: so you can't configure that stuff at runtime
21:56 enyc: imirkin: ok and theres no equivalante to that nvidia base mosaic approach ?
21:56 karolherbst: imirkin: I see that GCRA::stack and GCRA::relDegree isn't cleared in cleanup
21:56 imirkin: enyc: sorry, not 100% sure what that means
21:57 imirkin: enyc: does the base mosaic approach work with multiple different drivers and gpu types?
21:57 enyc: imirkin: dont know not tried
21:57 enyc: imirkin: i do now have a dualhead Matrox G550 card instlalled (but not connected to any monitors) so i could use that
21:58 imirkin: anyways, xinerama is the "old" way of doing things
21:58 imirkin: it loses you things like direct rendering and dynamic monitor layout
21:58 imirkin: but on the bright side it's simple and works
22:00 enyc: hrrm
22:00 enyc: i would rather like direct rendering and rotation, but don't need dynamic
22:00 enyc: i don't need multiple gpu cards
22:00 enyc: except, the NVS 450 is 2 gpus on one card, seemingly
22:01 imirkin: right
22:01 enyc: is this 100% impossible in current nouveau ?
22:01 imirkin: so if you want to use both gpu's, you do need multiple gpu's :)
22:01 imirkin: no, it's quite possible
22:01 imirkin: i guess i wasn't clear on what you were trying to achieve
22:01 imirkin: i thought you were specifically looking to use xinerama
22:01 enyc: not necessarially
22:02 imirkin: ok, then dump your xorg.conf and everything should Just Work (tm)
22:02 enyc: i just want 3 or 4 monitors working on the one nvs 450 / nouveau
22:02 enyc: it didn't ;p
22:02 imirkin: then let's move up from there
22:02 imirkin: show me an xorg log
22:05 enyc: will do ina moment
22:06 enyc: i was about to install xserver-xorg-video-nouveau 1.0.12 update (over 1.0.11) and start this with no xorg.conf, booted in linux 4.7.0-rc7 ...
22:08 Tom^: 4.7 is out nowadays seeing that you still run rc7 :p
22:10 enyc: Tom^: hrrm not in debian packaging yet, at least
22:10 enyc: imirkin: https://complexity.enyc.org.uk/Xorg.0.log
22:11 imirkin: whoa. 1920x1080i ??
22:11 Tom^: huh why cant i reach that url
22:11 enyc: Tom^: are you only on legacy internet ?
22:11 Tom^: "complexity.enyc.org.uk’s server DNS address could not be found."
22:11 imirkin: Tom^: i reached it fine
22:11 karolherbst: yeah Tom^ can't do ipv6
22:11 karolherbst: :p
22:12 Tom^: oh
22:12 imirkin: enyc: ok. now run 'xrandr --setprovideroutputsource 1 0'
22:12 imirkin: enyc: followed by 'xrandr'
22:12 imirkin: (and pastebin the output of the latter)
22:12 karolherbst: and here I am with a native ipv6 uplink hihi
22:12 enyc: imirkin: what (should) that be doing?
22:12 Tom^: yeah my isp is useless, and since my router died im not doing ipv4to6 any more
22:12 imirkin: that should add the second gpu as a provider of outputs for the first gpu
22:12 enyc: imirkin: hrrrrrrrrrrm
22:12 karolherbst: Tom^: then go in with ipv6?
22:13 Tom^: karolherbst: my isp doesnt provide me with ipv6
22:13 karolherbst: crappy isp
22:14 karolherbst: I don't even have a IPv4 IP anymore
22:14 enyc: imirkin: https://complexity.enyc.org.uk/xrandr-after-setprovideroutputsource_1_0
22:14 imirkin: awesome. now do xrandr --output DP-1-1 --left-of DP-3
22:14 imirkin: er
22:14 imirkin: xrandr --output DP-1-1 --left-of DP-3 --auto
22:15 imirkin: (or right-of or whereever)
22:15 enyc: hrrm monitors misaligned and all that but doing something
22:16 imirkin: you can use one of those fancy monitor applets to configure it all properly
22:16 karolherbst: I recommend arandr
22:16 enyc: ineddeed trying it now
22:17 enyc: imirkin: ok next problem...
22:18 enyc: imirkin: how do i override the 'hsync out of range' error on the benq monitor not doint intts 2560x1440 properly
22:18 imirkin: how is it connected?
22:18 enyc: imirkin: direct displayport cable
22:18 imirkin: ok, so there's no hdmi in there?
22:19 enyc: imirkin: if there is, i dont' have a high speed active hdmi to displayport cable
22:19 imirkin: are you sure the hw supports it?
22:19 enyc: imirkin: the nvs 450 wil work with passive adapters for single-link-dvi / slow hdmi
22:19 enyc: imirkin: yes, it works under the nvidia driver
22:19 enyc: imirkin: in native resolution
22:19 imirkin: Capable of driving quad ultra high resolution displays at 2560x1600.
22:20 enyc: imirkin: I *think* i recall something about the edid being buggy on this monitor or something
22:20 imirkin: ah could be
22:20 imirkin: you could manually add a mode
22:20 enyc: imirkin: see the xorg log -- hsync out of range
22:22 enyc: imirkin: https://complexity.enyc.org.uk/Xorg.nvidia340.log might also be helpful
22:22 imirkin: # 2560x1440 59.95 Hz (CVT 3.69M9-R) hsync: 88.79 kHz; pclk: 241.50 MHz
22:22 imirkin: so that's the standard mode
22:22 imirkin: and it has
22:22 imirkin: [ 1276.663] (II) NOUVEAU(0): Ranges: V min: 50 V max: 76 Hz, H min: 30 H max: 88 kHz, PixClock max 275 MHz
22:22 imirkin: so ... 88.79 is out of range
22:22 imirkin: which is why X discards it i guess
22:22 enyc: [ 784.005] (WW) NVIDIA(GPU-0): The EDID for BenQ BL2710 (DFP-2) contradicts itself: mode
22:23 enyc: [ 784.005] (WW) NVIDIA(GPU-0): "1920x1080" is specified in the EDID; however, the EDID's
22:23 enyc: [ 784.005] (WW) NVIDIA(GPU-0): valid HorizSync range (30.000-88.000 kHz) would exclude
22:23 enyc: [ 784.005] (WW) NVIDIA(GPU-0): this mode's HorizSync (28.1 kHz); ignoring HorizSync check
22:23 enyc: ..... hahaha
22:23 karolherbst: :D
22:23 enyc: now how do we get nouveau to "ignoring horizsync check" =)
22:24 imirkin: wtvr, just add a new mode and use it
22:25 enyc: i dont know 'wtvr'
22:25 imirkin: "whatever"
22:25 imirkin: but fewer letters
22:25 imirkin: although now it's ending up as more
22:25 imirkin: since i have to explain
22:25 Tom^: https://cdn.meme.am/instances/57111962.jpg
22:26 Tom^: ^_^
22:26 karolherbst: well, you could also just answer y or n
22:26 karolherbst: but then people might think y could mean why
22:31 enyc: imirkin: add a mode in xorg.conf ?
22:32 imirkin: xrandr --newmode
22:32 imirkin: or something along those lines
22:32 enyc: imirkin: im familiar with overriding the horizsync range itself ...
22:32 imirkin: sorry, i don't remember specifics
22:32 enyc: imirkin: at least when ussing screen0 etc etc in xorg.conf ;p
22:32 imirkin: unfortunately, sticking stuff into xorg.conf tends to break the whole gpu offload thing
22:34 loa: if i have problems with compositing on my 660gtx will more newer cards improve situation or not? or it is just bad design flow of all components?
22:34 loa: i have two monitors and play some not heavy games from steam and in osu in wine.
22:35 imirkin: loa: GTX 660 should be fairly well supported
22:35 imirkin: loa: what's your specific issue?
22:36 loa: i have strange latency problems when i run wine with compositing enabled. when i run video player in chromium on another monitor things getting worse 3x.
22:36 loa: if i disable compositing all is workig as expected.
22:38 loa: so i wonder, can this be because that 660 is just old?
22:38 karolherbst: "old"
22:38 loa: outdated.
22:38 imirkin: loa: GTX 660 is a kepler, and kepler is probably the best-supported family right now
22:39 enyc: imirkin: "gtf 2560 1440 59" gives me a plausible mode ...
22:39 imirkin: enyc: i use 'cvt -r'
22:39 imirkin: Modeline "2560x1440R" 241.50 2560 2608 2640 2720 1440 1443 1448 1481 +hsync -vsync
22:40 imirkin: i think you can take most of that and feed it to --newmode
22:40 karolherbst: loa: maybe it is getting better if you reclock the gpu a bit
22:40 karolherbst: stock clocks are pretty low on keplers
22:40 enyc: imirkin: yes but will it then blow up on horizsync incompat
22:40 loa: your reclocking branch is working very well.
22:40 enyc: imirkin: if i went down to 59hz it would be 'within range'
22:40 karolherbst: ahh so you are already at the highest clocks?
22:41 loa: yes, we talk few days earlier.
22:41 loa: talked *
22:41 karolherbst: mhh
22:41 karolherbst: maybe switching over to dri3 might improve things
22:41 loa: it is just about compositing, vdpau and wine i think.
22:41 karolherbst: no idea about the state of that within nouveau though
22:41 karolherbst: I don't use the nouveau ddx
22:41 loa: or maybe acceleration in cromium.
22:42 loa: nouveau ddx?
22:42 karolherbst: X driver
22:42 Tom^: loa: just enabled compton, how do i uh test this latency?
22:42 enyc: imirkin: woooooooooooot manually setteng mode anyway just worked, thankyou!
22:43 imirkin: enyc: there might be a x server option to ignore stupid edid stuff
22:43 imirkin: enyc: definitely a way to feed your own hacked edid... i think
22:43 loa: Tom^, if it possible to use for example osu! in wine and chromium?
22:43 loa: or it is too complicated test?
22:43 Tom^: not really, il dl it.
22:44 loa: i read some comment that compton, accelerated chromium and games competing about glx context (dunno what is means)
22:44 loa: that's why there latency appear.
22:45 enyc: imirkin: yes, i've done the edid override at some point
22:45 enyc: imirkin: i notice online there are people reflashing the monitors' edid !!
22:46 enyc: I wonder how to auto-reload/restare the xrandr settings ;p none of these tools seem to have a 'create default setiup' button
22:47 imirkin: many DE's handle that for you
22:47 imirkin: otherwise you could stick something into your .xsession
22:48 imirkin: or however your startup works
22:48 loa: Tom^, i found that with every setting i tried with compton, compiz works better, but latency exists.
22:49 imirkin: urgh
22:49 imirkin: EMIT: ld u32 $r0 l[0x14] (8)
22:49 imirkin: EMIT: st u32 # l[0x14] $r0 (8)
22:49 imirkin: some day i'll defeat such code.
22:49 karolherbst: :D
22:49 imirkin: but not today.
22:50 karolherbst: shouldn't that be fairly simple?
22:52 Tom^: loa: yea forget it, dotnet40 requirement.
22:52 Tom^: wine barfs with most of dotnet, not in the mood for that. :P
22:53 loa: you can you playonlinux it will do all for you.
22:53 Tom^: no
22:53 loa: you can remove all of this after all.
22:54 imirkin: alright. apparently now i created an infinite loop :(
23:04 imirkin: karolherbst: fairly... keep in mind it's post-ra
23:04 imirkin: and is the result of complex spinning interactions =/
23:04 imirkin: er, spilling
23:04 karolherbst: I see
23:08 imirkin: EMIT: add f32 $r73 $r66 -5.250000 (8)
23:08 imirkin: 000008d8: b0008525 0c0a8003 add sat f32 $r9 neg $r2 0xc0a80000
23:08 imirkin: those are *basically* the same, but ... not quite
23:08 imirkin: grrrr
23:08 imirkin: this is the "you can't have immediates and long registers" issue :(
23:09 imirkin: phooey
23:09 enyc: ooh wow
23:09 enyc: ok i have it working ...for now...
23:09 enyc: before trying to save anything / fix edid / etc
23:09 enyc: i will just try *using* it for some time
23:10 imirkin: enyc: note that G98 is a pretty crappy gpu, so don't try anything intensive
23:11 enyc: imirkin: im interested in good xvideo direct rendering and reliable display ;p not into '3d' per se
23:11 imirkin: enyc: yeah, it's fine for all that. you should even have working vdpau on there for h264 accel
23:11 imirkin: [assuming you grab the firmware]
23:12 enyc: imirkin: err hows that bit done...
23:12 imirkin: https://nouveau.freedesktop.org/wiki/VideoAcceleration/
23:12 imirkin: (you have VP3)
23:13 enyc: imirkin: i'm noticing praticualr tendency to ''jam''/freeze for seconds in some cases when moving accelerated windows about across monitors...
23:14 imirkin: dunno, that can often be caused by the window manager
23:14 imirkin: e.g. WindowMaker freezes the whole display while moving windows around
23:14 imirkin: which then in turn causes all X calls to block, etc
23:19 imirkin: hrmph. i thought i had fixed that register range issue.
23:32 imirkin: hm. getting closer... still sometimes allocates registers out of range....
23:36 karolherbst: imirkin: well, if you find a fix, I will gladly try it out tomorrow, will head to bed now
23:37 imirkin: karolherbst: sure... i can test stuff locally too
23:37 karolherbst: yeah, but I am not even sure I got the dual issue bits right
23:38 imirkin: i mean, i have a tesla plugged in
23:38 karolherbst: the nvidia docs aren't really specific about this matter and I have to read up about dual issuing in tesla in general
23:38 imirkin: when i get the RA to produce emittable instrucitons
23:38 karolherbst: ohhh
23:38 karolherbst: right
23:38 imirkin: then i'll test it
23:38 imirkin: i already ran it once and it hung the card
23:38 imirkin: infinite loops and whatnot
23:38 imirkin: due to the wrong registers/etc
23:38 karolherbst: uhhh
23:38 karolherbst: right, that shader is a beast
23:39 imirkin: i fixed a bit of that, but there's more left
23:39 karolherbst: well I hope that will makes things on tesla more stable in general :)
23:39 imirkin: somehow it manages to decide that this is a good idea:
23:39 imirkin: EMIT: mul f32 $r118 $r1 0.750000 (8)
23:39 imirkin: nah... it's only for monster shaders
23:40 karolherbst: mhh, true
23:40 karolherbst: but on kepler it also just uses like 47 registers
23:40 imirkin: kepler1 only has 64 regs
23:40 karolherbst: no spilling
23:40 imirkin: and i'm sure it uses all of them
23:40 karolherbst: it doesn't
23:41 imirkin:checks
23:41 imirkin: are you sure?
23:41 karolherbst: yes
23:41 imirkin: 4594: ld u32 $r48 l[0x24] (8)
23:41 imirkin: 4595: ld u32 $r49 l[0xbc] (8)
23:41 imirkin: 4596: mul ftz f32 $r48 $r49 $r48 (8)
23:41 imirkin: looks like spilling to me
23:41 karolherbst: mhh
23:41 karolherbst: have to go :/
23:42 imirkin: could be an array that they indirectly index into
23:43 imirkin: pretty sure that's not the case though
23:44 imirkin: looks like kepler2 manages to avoid spilling
23:45 imirkin: and it uses ~110 regs
23:45 imirkin: i guess the nv50 isa is sufficiently worse at encoding stuff, since it requires spilling with 127 regs =/
23:49 enyc: imirkin: wow... thankyou for your rather helpful pointers today!
23:49 imirkin: enyc: glad you got things going
23:50 imirkin: enyc: btw, i think there were some fixes recently specifically related to the NVS 450 board... something about DP->DVI adapters or something like that
23:50 enyc: imirkin: its locking up from time-time though ;-(
23:50 enyc: imirkin: post-1.0.12 release ?
23:51 imirkin: kernel handles modesetting, not the ddx
23:51 imirkin: oh wait, i confused myself
23:52 imirkin: this was for the FX 380
23:53 imirkin: enyc: what do you mean by "locking up"?
23:54 enyc: https://complexity.enyc.org.uk/lockups-dmesg.txt
23:55 enyc: https://complexity.enyc.org.uk/lockups-Xorg.0.log.txt
23:55 enyc: jams ;p
23:55 enyc: mouse wont appear/move, then recovers, etc etc
23:55 imirkin: oh goodie
23:56 imirkin: the beloved 406040 error
23:56 imirkin: no clue why that happens, but it happens across a ton of tesla cards, for a ton of people
23:56 imirkin: doesn't happen to me ;)
23:57 enyc: should i try booting back into the 4.7 kernel / newer kernel-level driver, or the 3.16 or even 3.2 ?
23:57 enyc: or is it likely unaffected by kernel part version ?
23:58 imirkin: unlikely to be affected by kernel
23:58 imirkin: more likely to be affected by your desktop environment
23:58 imirkin: more modern = more likely to have breakage
23:58 enyc: deliberately using mate out of jessie stable, not overzealous / not newest either
23:59 imirkin: the less gl you use, the better
23:59 imirkin: e.g. avoid compositors, etc
23:59 enyc: right
23:59 enyc: well anyway... it loks like that error came quite early
23:59 enyc: before faffcing with display settings etc