14:41 jekstrand: Does the nouveau kernel driver support the compute-only cards?
14:42 jekstrand: The Tesla cards (not necessarily Tesla architecture)
14:48 karolherbst: jekstrand: probably
14:48 karolherbst: question is just how buggy it would be
14:49 karolherbst: jekstrand: also, those are not compute only cards
14:49 karolherbst: they just have no display support
14:57 jekstrand: kk
14:57 jekstrand: I thought maybe they deleted some of the 3D HW
14:58 karolherbst: those cards are often used for desktop virtualization
14:58 karolherbst: with e.g. TGX
14:59 jekstrand: ah
14:59 karolherbst: so they also come with video accel and everything
15:00 ajax: yeah they're just missing pdisp or whatever it's called iirc
15:01 jekstrand: k
15:02 jekstrand: Does nouveau detect this and only provide a render node? Or does it still provide a master node that just doesn't have KMS?
15:03 karolherbst: good question, I suspect it provides both
15:03 karolherbst: at least on laptops having pure 3D discrete GPUs I also saw both, but I might be wrong
15:03 karolherbst: there is some code in nouveau to detect if we got the display engine on the GPU though
15:04 karolherbst: anyway, those tesla/grid GPUs aren't so special as often claimed
15:07 karolherbst: jekstrand: anyway, I know that nouveau loads fine on those as I had to debug/fix some vGPU bugs once. I just can't say how well they work in general with nouveau
15:08 jekstrand: Ok
15:09 jekstrand: Guy is asking if he should buy one. He found a pretty spiffy Kepler for $100 on ebay
15:09 jekstrand: I told him Kepler is getting a bit old.
15:09 karolherbst: we support reclocking on kepler :D
15:10 karolherbst: so chances are that some games are even playable
15:10 karolherbst: but without display support? mhh
15:10 karolherbst: jekstrand: which model btw?
15:11 karolherbst: some of those kepler ones are "werid" as in those are simply multiple GPUs on one board
15:11 jekstrand: https://www.ebay.com/itm/194919762324?chn=ps&norover=1&mkevt=1&mkrid=711-117182-37290-0&mkcid=2&itemid=194919762324&targetid=1263433206934&device=m&mktype=&googleloc=9003436&poi=&campaignid=14859008593&mkgroupid=130497710760&rlsatarget=pla-1263433206934&abcId=9300678&merchantid=6296724&gclid=Cj0KCQjwof6WBhD4ARIsAOi65agrmbHQbb1EABcY4Pz3wc72x2MabfXWs0KRmhsCneEWf5ZVm5XQbLsaAoFyEALw_wcB
15:12 karolherbst: ahh yeah
15:12 karolherbst: that's a dual GPU one
15:12 karolherbst: so you get two GPUs
15:13 ajax: it's also the only match on the big wikipedia table for the term "GK210"
15:13 karolherbst: which is fine, you just have to be aware of that
15:13 karolherbst: mhhh
15:13 jekstrand: Ok
15:14 karolherbst: depending on the chipset it might not even load atm... right
15:14 karolherbst: no idea if gk210 even load
15:14 jekstrand: Anyway, as long as we know the headless cards are supported, that's good enough for now.
15:14 jekstrand: Not planning to buy anything just yet
15:14 karolherbst: worst case, we need to do some reverse engineering to figure out if gk210 are special
15:14 ajax: but that probably means it's mostly a better gk110 if i remember their numbering scheme right
15:15 karolherbst: _but_ it's good to know that somebody we have access to actually owns such a card :D
15:15 karolherbst: worst case you ship it to me and I pay for everything or something
15:15 ajax: so... vulkan 1.2, gl 4.6, d3d12, what more do you want
15:15 karolherbst: yeah...
15:15 karolherbst: but you get reclocking
15:15 karolherbst: and for $100 it's probably not a terrible investment
15:17 ajax: 240GB/s of memory is still pretty dang healthy
15:17 ajax: about what the rx480 i'm typing on has
15:17 karolherbst: yeah.. it should compare to a RTX 2060 or 2070 even
15:17 karolherbst: just that you got two GPUs
15:17 karolherbst: which.... has some drawbacks
15:17 ajax: i believe you mean opportunities to work on multi-gpu vulkan support
15:17 karolherbst: :D
15:18 karolherbst: making sure CL works fine with multiple devices :P
15:18 karolherbst: but yeah.. I suspect it's mostly equal to the gk110
15:19 karolherbst: from a whitepaper: "Kepler GK110/210 GPU Computing Architecture" okay.. :)
15:19 karolherbst: let's see...
15:19 karolherbst: ohhh interesting
15:19 karolherbst: "GK210 expands upon GK110’s on-chip resources, doubling the available register file and shared memory capacities per SMX."
15:20 karolherbst: SM 3.7
15:20 karolherbst: GK110 is SM 3.5
15:21 karolherbst: more shared mem as well
15:21 karolherbst: so you get twice the threads if you go over 32 registers
15:21 karolherbst: big deal :)
15:22 karolherbst: okay, they seem to be pretty equal, just some differences which might or might not cause issues, but nothing I'd say isn't fixiable
15:54 pmoreau: Is BPTC supported by Tesla hardware? It is not gated behind `NOUVEAU_DRIVER == 0xc0` in nv50_formats.c but on the other hand the extension is not advertised on nv50.
16:00 pmoreau: Running with `MESA_EXTENSION_OVERRIDE=GL_ARB_texture_compression_bptc` and trying to display a BPTC-compressed texture does not seem to trigger any complaints from Nouveau, though I do get incorrect results and a grumpy gr reporting some “TRAP_TEXTURE - TP0: 00000003 [ FAULT]”, so maybe not or there is some plumbing missing.
16:40 jekstrand: pmoreau: It should. It's just a DX compression format.
16:40 jekstrand: I don't remember which one
16:40 jekstrand: BC6/7
17:09 karolherbst: slowly I start to think the bug I try to figure out is actually a kernel one ....
17:10 karolherbst: do we have users actually using nv30+ GPUs?!?
17:15 karolherbst: pmoreau: mind checking if https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10752 doens't break anything for you?
17:18 karolherbst: and/or review patches
17:24 skunky3: i have a nv130 card and tried to use this a few times for wayland things, tho it has been a bit too bad on the performance side for me, and other things
17:25 karolherbst: skunky3: I meant nv30
17:25 karolherbst: those are like the 20 years old ones
17:26 skunky3: ahh was a bit confused with "nv30+"
17:27 karolherbst: ah, right.. I meant the ones which use the nv30 gallium driver
17:31 skunky3: okay, my bad then, well i will probably try this out later again when i get the time to do so, good luck with the progress!
17:32 karolherbst: yeah... I seriously don't want to break stuff with that MR, so everybody willing to test it would be very helpful. I am sure it's at least "good enough" as things like gnome still run.
17:33 karolherbst: even on my nv4x GPUs, but I start glxgears a couple of times and the machine simply crashes :(
17:37 Lyude: karolherbst: I think I got a ~nv30 or earlier bug a year or two ago
17:38 Lyude: i was quite surprised
17:38 karolherbst: yeah... I have a couple of those, but based on my experiences I am wondering if anybody actually use those, because they seem close to unusable
17:39 Lyude: might be people running X setups with no actual hw rendering happening.
17:39 karolherbst: then they won't care about broken mesa anyway :)
17:39 Lyude: basically yeah lol
17:39 Lyude: that's one thing I am kind of doubting people use that often, but that's totally a guess on my part
17:39 karolherbst: glxgears does run on nv30 with my threading fixes though
17:39 karolherbst: so it's not breaking it completely at least
17:39 karolherbst: yeah...
17:40 karolherbst: I am sure we have some weirdo kernel bugs in the nv30 domain
17:40 karolherbst: getting like DMA_VTX_PROTECTION errors and stuff.. no idea what those are even about
17:40 karolherbst: or like CACHE_ERROR on the 4th run of glxgears
17:40 karolherbst: totally weird
17:58 pmoreau: jekstrand: BC6 and BC7 seem to have been introduced with DX11 in 2009, so 3 years after the first Tesla was released. Though, it could be that the format was added to hardware somewhere between DX10 and 11, and could be present in Tesla.
17:59 pmoreau: karolherbst: I can give it a spin, but no promises regarding reviewing even if the series is not about exposing hardware features or similar.
19:05 karolherbst: pmoreau: yeah.. that's fine. I just don't want to have obvious issues caused by it
19:06 karolherbst: I probably have to accept that from now on I'll have to push patches without reviews anyway :/
19:09 pmoreau: :-/
19:10 karolherbst: yeah... it's annoying. At least we've got somebody new at work, who is looking into the compute side of things in nouveau, but that will probably take some time still
19:11 Lyude: karolherbst: if you want me to help with reviewing mesa stuff as well I'm happy too, it's been a while since I've last touched it but I don't mind too much
19:13 karolherbst: Lyude: yeah... although I think it would be (strategically) better for you to focus more on the kernel side. But sure, feel free to hop in, but I wouldn't mind if you don't
19:17 karolherbst: Lyude: but if you got time, maybe reviewing https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17633 would be a good place to help :)
19:51 pmoreau: karolherbst: Nice! Including nv50 or only nvc0+? I just did a quick rebase of my compute series and will push them once I had a chance to test them. I can not continue working on them, but if anyone is interested in picking up the series or bits and pieces from them, they are available.
19:54 karolherbst: pmoreau: all the gallium drivers even
19:55 pmoreau: Oh, I see! 👍
19:55 karolherbst: though only nv50 and nvc0 are fixed for real. nv30 will probably still mess up with threading, but oh well
19:57 pmoreau: It already improves the situation on two drivers, so already a net benefit even if one is still left in the dust.
20:13 karolherbst: pmoreau: yeah... I actually wanted to merge it way earlier, but nv30 being such a pain and everything.... :(
20:17 airlied: we could just fork nv30 away
20:17 karolherbst: I was thinking about that actually
20:18 airlied: you know what I'll say next :-P
20:19 ajax: come on. try not to drop gles2 hardware if you don't have to.
20:19 airlied: import libdrm_nouveau, fork it into a corner with nv30, give it a bottle of water and send it out into the desert
20:19 ajax: you want to split it off like i915, fine
20:19 airlied: I didn't say drop
20:19 airlied: yeah split it off into a corner and let it die it's own death
20:19 karolherbst: airlied: libdrm isn't the issue
20:20 airlied: karolherbst: nope but doing it all at once and never caring again
20:20 karolherbst: yeah... maybe. I'll toy around with it and see how easy that would be.
20:21 karolherbst: though nv30 still using libdrm and nv50+ something new would be a big help, as nv50 doesn't need rellocs
20:21 karolherbst: afaik