09:43 mwk: *sigh* what sort of ritual am I missing
09:44 gnarface: blacklist the nvidia binary driver
09:44 mwk: my Rankine hangs when I try to read things from system memory, same thing with read from VRAM works just fine
09:44 gnarface: oh, nevermind
09:44 gnarface: ignore me, i dunno
10:14 mooch: mwk: nv3 only has 2 pci bars right?
10:14 mooch: or am i mistaken?
11:19 mwk: mooch: 3 actually
11:19 mwk: BAR0 with MMIO regs, BAR1 with VRAM and RAMIN windows, and BAR2, ie. I/O RMA
11:21 mooch: alright
11:21 mooch: i think the nv3 driver might be accessing something i'm not aware of
11:21 mooch: i/o rma doesn't make sense tho, it was already using bar0 for mmio
11:22 mwk: *shrug* not all driver behaviors make sense, you know
11:26 mooch: fair enough
11:28 mwk: well
11:28 mwk: NV30 appears to hate me
11:28 mwk: at least when it comes to reading system RAM
11:29 mwk: I suppose it was going too well...
12:24 mooch: mwk: i implemented the io rma and the hang went away, but now it flat out REFUSES to use the drivers
12:25 mooch: now, it just fails silently
15:07 karolherbst_: uhh OpenGL 4.6
15:07 karolherbst_: GL_ARB_gl_spirv and GL_ARB_spirv_extensions are part of it
15:09 tobijk: :o
15:09 karolherbst_: maybe I try to implement one of the 4.6 extensions for nouveau just to do that as well once
15:09 tobijk: heh
15:09 tobijk: i thought ou are not a man of the books, like you said yesterday
15:09 karolherbst_: so?
15:10 tobijk: never mind :)
15:10 tobijk: the specs are bad to read though :D
15:10 karolherbst_: need to learn a lot more about gallium anyway
15:13 tobijk: 6 fps on steam with a pascal chip *urgh* ^^
15:14 tobijk: but it actually works
15:14 karolherbst: mhhhh
15:14 tobijk: civ*
15:14 karolherbst: we need to solve that reclocking issue
15:14 tobijk: karolherbst: we have the fw for pascal reclocking? :O
15:14 karolherbst: no?
15:15 tobijk: then there is no issue with that
15:15 tobijk: on our side, yet
15:15 karolherbst: for me there won't be any firmware released by nvidia which is in any way usefull
15:15 karolherbst: and if we get something, it will be some ass crap kind of reclocking which is super useless to begin with
15:17 karolherbst: and on pascal getting the images is the hardest part. Implementing reclocking is easy, cause it's all inside the image
15:18 tobijk: not sure if its that easy, but full ack to the first point :)
15:18 karolherbst: we only need to configure the PMU
15:18 karolherbst: that'S all
17:40 karolherbst: tobijk: could you capture shaders for civ6 with MESA_SHADER_CAPTURE_PATH?
17:41 karolherbst: tobijk: and send it to me in private somehow?
18:07 karolherbst: okay, I thinks here is the deal with those ubershader spilling messup
18:07 karolherbst: first it stores a store values away
18:07 karolherbst: *first it stores some values away
18:08 karolherbst: then there might or might not be a mov
18:08 karolherbst: then there are st/ld pairs like this:
18:09 tobijk: ...
18:09 karolherbst: st l[x] a; ld b l[y]; st l[y] b; ld b l[z]; st l[z] b; ....
18:09 tobijk: ah :)
18:09 karolherbst: and I think those were simply movs in the end
18:09 karolherbst: usually generated from big phis
18:11 karolherbst: or from nothing at all
18:11 karolherbst: doing loop stuff
18:11 karolherbst: https://gist.github.com/karolherbst/841216686b5d4bb87cc73f1cd72572fe
18:12 karolherbst: I'll try to dump the thing before spilling
18:13 tobijk: kay
18:13 tobijk: the full output would be nice as well
18:13 tobijk: i fail to see where we unspill many of those vars for actual use
18:14 karolherbst: ohhhhhhh
18:14 karolherbst: I think I know it now
18:17 karolherbst: there are super many useless load/store pairs
18:18 tobijk: yeah
18:18 tobijk: somehow we spill and unspill right after
18:18 tobijk: uhm forget that
18:19 tobijk: yet we unspill for no reason
18:20 karolherbst: okay... as I thought
18:21 karolherbst: it's a mix of spilling and doing smart register allocation
18:21 karolherbst: tobijk: I've added the BB directly prior spilling https://gist.github.com/karolherbst/841216686b5d4bb87cc73f1cd72572fe
18:21 nyef`: ... Is "idom" the immediate dominator, and "df" the "dominance frontier"?
18:24 tobijk: oh wow actually movs
18:24 karolherbst: yeah
18:25 karolherbst: there you kind of see what is messing up maybe
18:25 karolherbst: those are basically movs to be able to loop at all
18:26 karolherbst: like to move values into the proper starting register
18:26 karolherbst: I think
18:26 karolherbst: imirkin_ might know more about it
18:26 tobijk: well actually we spill the values least used, so if we have a mov which dups a var into a register, that is likely to be spilled first
18:28 tobijk: is imirkin_ on hpolidays or something btw? (he is actually too quite :D)
18:30 tobijk: with intel civ fucks my firefox :o, blank pages everywhere
18:34 karolherbst: that mov looks pointless: https://gist.github.com/karolherbst/3780f8fdfa3851c97c412546ce04e121
18:39 tobijk: yeah it looks silly
18:43 karolherbst: the fuck
18:44 karolherbst: there is a game with a super odd fading out effect on quit, which is implemented as lowering the gamma until it's dark
18:44 karolherbst: super great idea
18:44 tobijk: heh
19:02 tobijk: mh we could add a soft_noSpill which is honored as long as possible and if really necessary we can spill those values too
19:02 tobijk: should lower the impact of my patch to where it is needed
19:38 tobijk: karolherbst, do you have a sane shader-db script to check the before and after runs? the nv-report.py crashes for me (with different successful shader compile counts)
19:48 tobijk: karolherbst: btw it would be nice to know which shaders regress in your shader-db with my patch, i cant find any in my small shader-db
20:52 karolherbst: tobijk: https://gist.github.com/karolherbst/9531ffd07b88c3798b0836ebd27a6b97
20:52 karolherbst: tobijk: and I use nv-report.py
20:53 karolherbst: ohh wait, I have local patches
20:53 karolherbst: git
20:57 karolherbst: tobijk: I have the two top patches applied locally: https://github.com/karolherbst/shader-db/commits/master
20:57 karolherbst: I could merge those....
20:58 karolherbst: oh well, don't care enough
21:04 karolherbst: it's impressive how well those dx10/dx11 games are running under wine now
21:04 karolherbst: even performance wise on nouveau
21:17 tobijk: karolherbst: actually merging those would be fine :>
21:22 tobijk: and wtf is going on with alien isolation using so many unions/merges
22:19 David_Hedlund: Which mailing list should I send this message?: Please add a "NV130" column to https://nouveau.freedesktop.org/wiki/FeatureMatrix/
22:21 tobijk: David_Hedlund: no message needed
22:21 David_Hedlund: There
22:21 tobijk: plase give me more info about the nv130, though
22:22 David_Hedlund: tobijk: Which mailing list should I send feedback to for https://nouveau.freedesktop.org/wiki/FeatureMatrix/
22:24 tobijk: David_Hedlund: nouveau@lists.freedesktop.org, or give me the info and i will add it (i do not have a real oversight what does work, especially video decoding)
22:25 David_Hedlund: tobijk: Thank you.
22:25 David_Hedlund: tobijk: How can I gather info for NV130?
22:26 tobijk: test things out
22:26 tobijk: :D
22:27 tobijk: David_Hedlund: but actually after i had a look at it, nv110 should be mostly on par with nv110
22:28 tobijk: with a 4.12 kernel you get acceleration
22:30 David_Hedlund: tobijk: Don't you have any data for NV130 to add at all?
22:30 tobijk: well i can guess most of them