ChanServ changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - Logs https://oftc.irclog.whitequark.org/panfrost - <macc24> i have been here before it was popular
vstehle has quit [Ping timeout: 480 seconds]
JulianGro has quit [Remote host closed the connection]
`join_subline has quit [Ping timeout: 480 seconds]
JulianGro has joined #panfrost
`join_subline has joined #panfrost
chewitt has joined #panfrost
Daanct12 has joined #panfrost
alpernebbi has quit [Ping timeout: 480 seconds]
alpernebbi has joined #panfrost
* jekstrand
is starting to be convinced that CPU index buffer searches might be a good idea for now
<jekstrand>
There's just so many tests that require index buffers for no good reason and almost all of them will work with a CPU search. :-/
<alyssa>
jekstrand: come to the dark side
<alyssa>
what won't work with a cpu search..?
<alyssa>
compute kernel writing an index buffer and using it in the same render pass?
<alyssa>
in GL, we can break it up with a flush; in VK we can't because the app determines when to flush?
<jekstrand>
yup
<jekstrand>
I mean, we could in theory with enough machinery...
<jekstrand>
But ugh
<jekstrand>
I'd rather build the compute shaders at that point
<alyssa>
Yeah
<jekstrand>
But as a quick hack to get piles of tests that have little to nothing to do with index buffers but use them anyway.... Yeah, probably a good idea.
<alyssa>
OTOH, for the 95% of the time when CPU searching works and is efficient, we probably want the CPU search (with the common min/max cache)
<alyssa>
Not sure there's a good way to distinguish those cases though
<jekstrand>
Not really
<jekstrand>
Someone can build a command buffer and then fill out the index buffer afterwardsa and we have no way to know
<alyssa>
Grumble
<alyssa>
No easy conservative test "could the cmdbuf possibly touch this buffer?"
<jekstrand>
It's not even command buffers. You can fill it out from the CPU between creating the command buffer that uses it and calling vkQueueSubmit on it
<alyssa>
Argh
<alyssa>
Supposing we do compute shaders, there's... still no good way to do a min/max cache, is there.
<alyssa>
For all the same reasons :|
<jekstrand>
nope
<alyssa>
sigh
<alyssa>
Valhall really is the Vulkan arch..
<HdkR>
<3
<jekstrand>
alyssa: What do you think inspired Valhall? :P
<alyssa>
Vulkan?
<jekstrand>
Probably
<HdkR>
V for Vulkan and Valhall
<alyssa>
Real q is what inspired Bifrost
<jekstrand>
Vulkan's been in the works and ARM new about it for 7 years
<jekstrand>
alyssa: Haswell. We've already established this. :P
<alyssa>
because min/max scans caused problems all the way back to Utgard :-p
<jekstrand>
alyssa: The one that's annoying me at the moment is the derivative tests. They draw a full-screen quad... with an index buffer. :(
<jekstrand>
So I had to pull those from CI for now
<alyssa>
Incredible
<jekstrand>
Yeah. Hence me thinking we should just fake it for now. :)
<jekstrand>
With a printf saying "OMG CPU reading of buffers!!!"
<icecream95>
..But what if someone forgets to take the printf out when compiling it for the GPU?
<jekstrand>
And, sadly, dEQP isn't like piglit. THere isn't just a "draw a quad" helper.
<jekstrand>
icecream95: Then they'll need printf support
<icecream95>
jekstrand: I've added printf support for the Panfrost Gallium driver...
<icecream95>
I think what we really need is a GL extension for printf
<icecream95>
gl_PrintfEXT("Hello, World!\n");
<jekstrand>
please no
JulianGro has quit [Remote host closed the connection]
<jekstrand>
alyssa: Anything blocking my constant folding patch?
<icecream95>
jekstrand: How about a GL extension where the minimum required number of supported string literals is zero, so you can expose the extension without making it usable?
<jekstrand>
why?
<icecream95>
Because that's what a bunch of stuff is like in GL?
<icecream95>
:P
<jekstrand>
Usually, GL requires you to actually have a thing be usable if you expose the extension
<alyssa>
occlusion queries!
<icecream95>
Key word: "Usually"
<alyssa>
jekstrand: running the const fold thru shader-db, but no nothing blocking
<jekstrand>
alyssa: Ok. I'm happy to wait for your shader-db
<alyssa>
hasn't started, went looking for the commit and now rebuilding