ChanServ changed the topic of #asahi-gpu to: Asahi Linux GPU development (no user support, NO binary reversing) | Keep things on topic | GitHub: https://alx.sh/g | Wiki: https://alx.sh/w | Logs: https://alx.sh/l/asahi-gpu
possiblemeatball1 has joined #asahi-gpu
possiblemeatball has quit [Ping timeout: 480 seconds]
cylm_ has joined #asahi-gpu
emptynine has quit [Ping timeout: 480 seconds]
hertz has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
emptynine has joined #asahi-gpu
amarioguy has quit [Remote host closed the connection]
systwi has quit [Ping timeout: 480 seconds]
possiblemeatball1 has quit [Quit: Leaving]
systwi has joined #asahi-gpu
nela has joined #asahi-gpu
digicyc has quit [Remote host closed the connection]
digicyc has joined #asahi-gpu
duban has joined #asahi-gpu
duban has quit []
duban_ has joined #asahi-gpu
emptynine has quit [Ping timeout: 480 seconds]
possiblemeatball has joined #asahi-gpu
possiblemeatball1 has joined #asahi-gpu
emptynine has joined #asahi-gpu
possiblemeatball has quit [Ping timeout: 480 seconds]
nela has quit [Ping timeout: 480 seconds]
nela has joined #asahi-gpu
possiblemeatball1 has quit [Quit: Leaving]
duban_ has quit [Quit: Connection closed for inactivity]
SSJ_GZ has joined #asahi-gpu
emptynine has quit [Ping timeout: 480 seconds]
emptynine has joined #asahi-gpu
<ella-0> alyssa: Got no problems with clang-formatting agxv :3
hertz has joined #asahi-gpu
iaguis has joined #asahi-gpu
chadmed has quit [Remote host closed the connection]
chadmed has joined #asahi-gpu
amarioguy has joined #asahi-gpu
compassion has quit [Quit: lounge quit]
leftas has quit [Read error: Connection reset by peer]
compassion has joined #asahi-gpu
leftas has joined #asahi-gpu
c10l has quit [Read error: Connection reset by peer]
c10l has joined #asahi-gpu
possiblemeatball has joined #asahi-gpu
<alyssa> ella-0: sprakles
<alyssa> sparkles
kujeger- has quit [Ping timeout: 480 seconds]
kujeger has joined #asahi-gpu
kujeger has quit [Ping timeout: 480 seconds]
kujeger has joined #asahi-gpu
kujeger- has joined #asahi-gpu
kujeger has quit [Ping timeout: 480 seconds]
kujeger has joined #asahi-gpu
kujeger- has quit [Ping timeout: 480 seconds]
emptynine has quit [Ping timeout: 480 seconds]
emptynine has joined #asahi-gpu
emptynine has quit [Ping timeout: 480 seconds]
kujeger- has joined #asahi-gpu
<alyssa> ella-0: by the way, jekstrand complained about the following code pattern I have in Asahi (and Panfrost):
<alyssa> - lots of high level system values in the NIR e.g. nir_load_ubo_base_agx
<alyssa> - compiler translates those to moves of magic uniforms
<alyssa> - compiler passes back a list of uniforms that the driver needs to upload in a certain layout
<alyssa> - driver needs to upload those uniforms in the layout the compiler decided
<alyssa> Apparently, this works well enough for GL, but is bad for Vulkan aparently
<alyssa> The issue being the layout is compiler-driven, even though the dettails are all driver-specific
kujeger has quit [Ping timeout: 480 seconds]
<alyssa> so in effect I'm hardcoding GLisms into the compiler and then VK would have to pretend to be GL
<alyssa> whereas VK would want to do certain things in a different way maybe, e.g. descriptor sets instead of open coding binding tables
<alyssa> It also turns out that it isn't great for GL either but I digress
kujeger has joined #asahi-gpu
<alyssa> He argues that what should actually happen is that the driver preprocesses the NIR before the compiler sees it, with a little NIR pass to lower system values to load_uniform/load_preamble instructions, and the driver internally keeps track of what it wants to upload
<alyssa> then the compiler has no knowledge of any special sysvals. It just translates load_preamble instructions 1:1 to hardware uniform registers
<alyssa> and the GL and VK drivers get to (independently and completely) control the layouts
<alyssa> It's not clear to me why this is better for VK seeing as I don't work on VK yet
<alyssa> but. I did write the patches last night to convert the compiler + GL over to the new model. giving you a heads up that you'll need to add some code to VK when this lands and you rebase
kujeger- has quit [Ping timeout: 480 seconds]
kujeger- has joined #asahi-gpu
kujeger has quit [Ping timeout: 480 seconds]
<alyssa> I'd ask jekstrand to chime in but he's on vacation
kujeger has joined #asahi-gpu
kujeger- has quit [Ping timeout: 480 seconds]
kujeger- has joined #asahi-gpu
kujeger has quit [Ping timeout: 480 seconds]
landscape15 has joined #asahi-gpu
kujeger has joined #asahi-gpu
kujeger- has quit [Read error: Connection reset by peer]
kujeger- has joined #asahi-gpu
landscape15 has quit [Quit: Igloo IRC: https://iglooirc.com]
landscape15 has joined #asahi-gpu
kujeger has quit [Ping timeout: 480 seconds]
landscape15 has quit []
landscape15 has joined #asahi-gpu
<TellowKrinkle> BTW how do uniform registers get initialized? I noticed the Metal compiler seems to reference a lot of constants from them without loading them in a preamble shader, including things from constant address space buffers (with arbitrary constant offsets too), which can be bound to arbitrary GPU buffers. How does that work?
<alyssa> TellowKrinkle: USC load uniform commands
<alyssa> see "USC Uniform" in mesa/src/asahi/lib/cmdbuf.xml
<alyssa> if you use libwrap.dylib, the pointers will be dumped
kujeger- has quit [Ping timeout: 480 seconds]
<alyssa> but yeah
<alyssa> can push arbitrary ranges of GPU memory
kujeger has joined #asahi-gpu
landscape15 has quit [Quit: Igloo IRC: https://iglooirc.com]
c10l0 has joined #asahi-gpu
c10l has quit [Ping timeout: 480 seconds]
<ella-0> alyssa: yeah, in vulkan we ideally want to tell the compiler where everything is not the otherway round; Converting VK to that from what I have now should be fairly trivial :3
<alyssa> awesome
<alyssa> I still don't understand *why* Vulkan wants that so bad
<alyssa> but I have the patches to make it so :p
c10l00 has joined #asahi-gpu
c10l0 has quit [Read error: Connection reset by peer]
<ella-0> yah something something VkPipelineLayout
<alyssa> Hmmm
<alyssa> OK
c10l00 has quit []
c10l has joined #asahi-gpu
possiblemeatball has quit [Quit: Leaving]
c10l has quit [Quit: Bye o/]
c10l has joined #asahi-gpu
c10l has quit []
c10l has joined #asahi-gpu
possiblemeatball has joined #asahi-gpu
hightower2 has joined #asahi-gpu
c10l has quit [Quit: Bye o/]
c10l has joined #asahi-gpu
TheLink has quit [Quit: Bye!]
TheLink has joined #asahi-gpu
iaguis has quit [Quit: leaving]
SSJ_GZ has quit [Ping timeout: 480 seconds]
possiblemeatball has quit [Quit: Leaving]
<alyssa> Mm, 2.5fps with exclusive ubershaders running at 4K :p
<jannau> any ideas how dcp runtime power management could crash the agx coproc?
<jannau> might be power domain, iirc the dependency on ps_pmp was missing for dcp as well