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
hightower3 has joined #asahi-gpu
mikelee has joined #asahi-gpu
fenix144 has quit [Remote host closed the connection]
mikelee has quit [Remote host closed the connection]
hightower2 has quit [Ping timeout: 480 seconds]
Z750 has quit [Quit: Ping timeout (120 seconds)]
Z750 has joined #asahi-gpu
mikelee has joined #asahi-gpu
mikelee has quit [Remote host closed the connection]
mikelee has joined #asahi-gpu
jeisom has quit [Quit: Leaving]
mikelee has quit [Remote host closed the connection]
nepeat has quit [Read error: Connection reset by peer]
ave36309 has quit [Read error: Connection reset by peer]
ave36309 has joined #asahi-gpu
nepeat has joined #asahi-gpu
jeisom has joined #asahi-gpu
ave36309 has quit [Read error: Connection reset by peer]
ave36309 has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ourdumbfuture has joined #asahi-gpu
jeisom has quit [Ping timeout: 480 seconds]
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ourdumbfuture has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
cylm has quit [Ping timeout: 480 seconds]
crabbedhaloablut has joined #asahi-gpu
nst has quit [Ping timeout: 480 seconds]
nst has joined #asahi-gpu
Z750 has quit [Quit: Ping timeout (120 seconds)]
Z750 has joined #asahi-gpu
Cyrinux9474 has joined #asahi-gpu
Cyrinux947 has quit [Ping timeout: 480 seconds]
c10l563 has quit []
c10l563 has joined #asahi-gpu
bisko has joined #asahi-gpu
darkapex has quit [Remote host closed the connection]
darkapex has joined #asahi-gpu
Z750 has quit [Quit: Ping timeout (120 seconds)]
Z750 has joined #asahi-gpu
nsklaus has joined #asahi-gpu
c10l563 has quit []
c10l563 has joined #asahi-gpu
alyssa has joined #asahi-gpu
<alyssa> lina: when you get a chance, could you prioritize review of https://gitlab.freedesktop.org/asahi/mesa/-/merge_requests/111 ? it's not too big, but
<alyssa> 1. it's churny around UAPI bits so I expect it will conflict badly with whatever you work on next, better merge it sooner then ;)
<alyssa> 2. it's mucking with UAPI bits and I don't have a ton of confidence in my ability to get the logic right, so I do need an actual review from you and not a rubberstamp ;)
<alyssa> i'm also unsure if we want to go further than that
<alyssa> be able to queue up arbitrary sequences of VDM and CDM work
<alyssa> I could see this interfacing needing to be extended yet again for efficient mipmap generation (with the blit PDM queue?)
<lina> alyssa: Sure ^^
<lina> What I said with the barriers works right?
<alyssa> Yep~!
<alyssa> if you hate the code and would rather rewrite yourself given the new requirements I'm fine with that outcome too ;)
<alyssa> currently the only new requirement is combined CDM+VDM submit for graphics batches
<alyssa> but I can imagine a lot of optimizations where we'd want the more general thing
<alyssa> (potentiallly even submitting multiple batches at once to reduce user/kernel roundtrips)
jeisom has joined #asahi-gpu
<lina> Yeah, there was always room for that
<lina> E.g. when doing mipmap gen we can totally do that
<lina> Basically when flushing writers we'd batch up all the submits and send it all at once
<alyssa> Yeah, makes sense
<alyssa> I don't need that for my secret project
<lina> "secret" project ^^
<alyssa> shhhh
<alyssa> but if you're going to rework the code rather than merge what I have, might be worth architecting around those cases too? idk
<alyssa> it turns out there are a lot of yaks I need to shave :>
<alyssa> annoying one will be rewriting a big chunk of resource management code
<alyssa> but AGXV needs that too so.. not a loss :>
<alyssa> (turns out I unwittingly hardcoded a GLism)
<lina> Oops ^^
<alyssa> yeah..
<alyssa> havent' decided how I want to untangle that yet
<lina> alyssa: Unrelated, but have you seen the Google Sheets issue? I haven't had a chance to look at it yet, just curious whether you have any ideas. Basically as you scroll the visible parts of the canvas gets seriously blurred proportional to the distance to cell A1.
<lina> It looks like it's sampling a texture linearly with texcoords that are noticeably off or something like that
<lina> "fp16" you say, but "no16" doesn't fix it!
<lina> It could also be that it's intended to be point sampling and it's the linear sampling that shouldn't be there...
<alyssa> I do remember hitting that once
<alyssa> 11:51 lina | "fp16" you say, but "no16" doesn't fix it!
<alyssa> no16 doesn't fully disable fp16
<alyssa> no16 tells the GLSL compiler not to generate fp16 instructions
<alyssa> the backend AGX compiler may still choose to do itself regardless of flag
<lina> Oh...
<alyssa> you'll wan tto comment out the nir_lower_mediump_io call in agx_compile.c for that
<lina> alyssa: No change
<alyssa> K
<alyssa> IDK
<alyssa> It does reek of fp16 coord bugs so idk
<lina> wait wait
* alyssa wait-waits
<alyssa> meanwhile my submit refactor thing seems to break both firefox and chrome, brrrr
<alyssa> gg
<lina> That DID fix it *together* with fp16
<lina> *Âno16
<alyssa> Spicy.
<lina> Ohh and one more thing!
<lina> No wait, that was just me being confused
<lina> Do you think this is a driver bug? If not I think we need to extend no16 to also drop that lowering, and enable it for browsers because there is waaaaay too much broken WebGL out there...
<alyssa> Hard to say
<alyssa> At this point I would be fine with the latter.
<alyssa> I don't think I've seen a single workload where no16 has moved the fps meter.
ourdumbfuture has joined #asahi-gpu
<alyssa> might help for, like, terrible shadertoys.
<alyssa> but.. hm
<alyssa> lina: What browser is this on?
<lina> firefox
<alyssa> and what API are you rendering with?
<alyssa> GL or GLES i mean
mkurz has quit [Ping timeout: 480 seconds]
<lina> I know we try to skip fp16 for texcoords but I'm guessing there's some ALU in there which breaks the trivial pass
<alyssa> big GL doesn't even have mediump
<lina> GLES I assume? Whatever firefox does...
<alyssa> hm ok
<alyssa> 12:04 lina | I know we try to skip fp16 for texcoords but I'm guessing there's some ALU in there which breaks the trivial pass
<alyssa> yeah.. that was working around a sway bug
<lina> OK yeah, I see texture sampling that uses min() or max() of some input and something else
<lina> So that would break the heuristic
<alyssa> right
<alyssa> I can extend the heuristic more but also Google Sheets is presumably broken but also
<alyssa> ugh hm
<alyssa> I'm curious how this works on any arm chromebooks..
<lina> Found the bad shader (probably), it's exactly as expected (sampling after a clamp()) and everything is mediump
<alyssa> so deffo a google sheets bug. wheeee.
<alyssa> and you're sure this is GLES?
<alyssa> actually it doesn't matter, webgl is gles
<_jannau__> does chrome os uses angle on arm chromebooks?
<alyssa> _jannau__: I don't think they used to. IDK what they do now
<_jannau__> the paragraph starting with "Portions of the ANGLE shader compiler are used as a shader validator and translator by WebGL implementations ..." on https://github.com/google/angle sounds like angle could be used and hides this issue
Cyrinux9474 has quit []
<alyssa> I'd believe it
<alyssa> lina: I'm having troubles reproducing
Cyrinux9474 has joined #asahi-gpu
<lina> alyssa: Maybe needs HiDPI or page zoom? (guess)
<alyssa> wfm on my mini, maybe hidpi then idk
* alyssa knee deep into debugging the new subimt
<alyssa> working in debug builds but not release, ah bah oui
<alyssa> DRM_IOCTL_ASAHI_SUBMIT render failed: Invalid argument (800x600 tile 32x32 layers 1 samples 1)
<alyssa> chill asahi
<lina> Happens for me with 100% display scale too (on KDE)...
<alyssa> Hm
<lina> alyssa: Remember there is a submit count limit (64 IIRC per ioctl)
<alyssa> I'm just submitting 1
<lina> Barriers?
<alyssa> --well I got that wrong too but still doesnt work :p
* alyssa pushes nonetheless
<alyssa> lina: what browser versions?
<alyssa> also can you repro in chromium? what about chromium with the `--use-gl=egl` flag?
tirr has quit [Quit: ZNC 1.8.2 - https://znc.in]
tirr has joined #asahi-gpu
<lina> alyssa: Doesn't happen on Chromium with or without that flag
<alyssa> INTERESTING
<lina> Firefox 115.0.2
<alyssa> firefox 102 here
<alyssa> let me try on fedora
<lina> Oooooold...
* alyssa apt upgrades
<_jannau__> could be firefox esr
<alyssa> lina: very subtle but I think I can repro on fedora
<alyssa> ok definitely hit it on fedora
<alyssa> firefox 115
<alyssa> so... firefox regression maybe?
<alyssa> i'm fine no16 driconf cone of shaming firefox
Z750 has quit [Quit: Ping timeout (120 seconds)]
Z750 has joined #asahi-gpu
<lina> We still need to make that skip that mediump io thing
<lina> The shaders I dumped on Chromium don't have precision qualifiers at all...
<lina> I think Firefox might be using ANGLE?
<alyssa> y'know i've always hated webgl
<_jannau__> are both firefox and chromium reporting webgl 2 as supported?
<lina> Ah, not on Chromium...
chadmed has quit [Quit: Konversation terminated!]
chadmed has joined #asahi-gpu
<lina> Ah, but it does with --use-gl=egl
<lina> Wait but it says WebGL2: Software?!
<lina> I think... it might be trying to use a Vulkan backend???
<alyssa> ok this is too cursed for me, i'm tapping out
<alyssa> :p
<alyssa> DRM_IOCTL_ASAHI_SUBMIT render failed: Invalid argument (1903x519 tile 32x32 layers 1 samples 1)
<alyssa> what do you want from me
<alyssa> and why only in release builds of mesa
<lina> Uninitialized data?
<alyssa> plausible
<lina> Are you clearing the cmdbuf before filling it in?
<lina> (All relevant structs)
<alyssa> looks like it
<lina> alyssa: OK, --ozone-platform=wayland is what gets me WebGL2 using the GLES backend properly
tirr has quit [Quit: ZNC 1.8.2 - https://znc.in]
tirr has joined #asahi-gpu
<lina> I think I found the same shader and the precisions are right here...
<alyssa> !
<alyssa> valgrind is clean?wat?
<lina> alyssa: I think sheets might not be using WebGL at all??? Maybe this is an internal firefox bug....
<alyssa> I'd buy that
<alyssa> though it's worth noting I also only saw this in sheets
<lina> Yeah but it could be due to the Canvas blits it does or something
<alyssa> sure
<lina> I found it...
<lina> Those are the broken shaders, prior to the silly optimization path. It uses mediump on the FS...
<alyssa> D'oh!
<alyssa> Nice work!
<lina> I'll file a bug
<lina> Let me test with Mesa shader replacement that it works...
<alyssa> hmm our heuristic should force highp for that shader
<alyssa> that doesn't look like the same shader
<alyssa> unless the clamping is added later
<lina> Yes but it's not that one, it's a similar one
<lina> Yeah
<lina> Let me see where the clamp comes from
<lina> *that* one
<alyssa> ah. yes
<alyssa> lina: at this point I'm leaning towards no16'ing firefox given that mobile gpus are clearly not a priority
<alyssa> and webgl perf in firefox sucks anyway afaik
<lina> Yeah...
cylm has joined #asahi-gpu
<lina> As long as we fix it to actually work ^^
<alyssa> which part
<alyssa> both of those are firefox problems and decidedly not us problems
<lina> no16 not working
<alyssa> oh, sure
<alyssa> I'll write the patch for that if you can look at my submit thing?
<alyssa> O:)
* alyssa types
Dementor has quit [Remote host closed the connection]
<alyssa> untested. probably works
Dementor has joined #asahi-gpu
<cwabbott> alyssa: lina: I bet you someone at some point had to get that code working on utgard (mali 400)
<cwabbott> that only supports mediump on fragment shaders, except that there's a special hack to pass varying coordinates directly to the texture unit in highp for exactly this case
<lina> But I'm guessing that doesn't work when there's ALU in between exactly like this case?
<lina> If so this should be broken there too...
<cwabbott> oh yeah, was looking at the wrong shader
<lina> We have a hack in the driver that detects the easy case with no ALU and does exactly that, upgrades to fp32, because this is a common issue
<lina> But it's the second shader with the clamp() that breaks that
<cwabbott> yeah, makes sense
<cwabbott> you can blame utgard for that issue
<lina> ;;
fenix144 has joined #asahi-gpu
fenix144 has quit [Remote host closed the connection]
<alyssa> cwabbott: there are a lot of things I'd like to blame Utgard for.
<cwabbott> I wonder how it works on freedreno, given that it does all the same mediump stuff
<alyssa> Plausible that it's broken there
<alyssa> This seemingly is a recent Firefox regression and so far only repros on Google Sheets
<alyssa> given most freedreno is on chrome, shrug
amarioguy has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ourdumbfuture has joined #asahi-gpu
mkurz has joined #asahi-gpu
bisko has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
mkurz has quit [Ping timeout: 480 seconds]
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
jonmasters__ has quit []
jonmasters has joined #asahi-gpu
ourdumbfuture has joined #asahi-gpu
mkurz has joined #asahi-gpu
darkapex has quit [Remote host closed the connection]
rhysmdnz has quit [Quit: Bridge terminating on SIGTERM]
Guest6702 has quit [Quit: Bridge terminating on SIGTERM]
rhysmdnz has joined #asahi-gpu
Jamie has joined #asahi-gpu
Jamie is now known as Guest6958
compassion1785 has quit [Read error: Connection reset by peer]
compassion1785 has joined #asahi-gpu
compassion1785 has quit [Quit: lounge quit]
jeisom has quit [Quit: Leaving]
jeisom has joined #asahi-gpu
compassion1785 has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ourdumbfuture has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
fenix144 has joined #asahi-gpu
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
<alyssa> lina: ...and the Oscar goes to clang's __builtin_dump_struct
<alyssa> for making obvious the UAF I had due to a dangling pointer to a stack varibale
<alyssa> ella-0: thanks for showing me that trick :>
ourdumbfuture has joined #asahi-gpu
<alyssa> man I have rust envy right now
<alyssa> would've caught this one without breaking a sweat
<alyssa> obvious violation of lifetime rules
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
<alyssa> fixed the stupid.
<alyssa> MR is ready for review.
mikelee has joined #asahi-gpu
mikelee has quit [Ping timeout: 480 seconds]
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ourdumbfuture has joined #asahi-gpu
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
<Mary> I tried to run vk-cts with agxv/main to kind of look what I could work on and got a complete freeze when I was away;;
<Mary> "asahi: asahi::slotalloc::SlotAllocator<asahi::event::EventInner>: out of slots, blocking" 10 times, well I guess that's why ><
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
<alyssa> uhoh
<Mary> I totally forgot to send the logs oops https://gist.github.com/marysaka/ffa6dd84d1aef08b86fbcb44064a10aa
<Mary> (testing on 6.3.8-450.asahi.fc38.aarch64)
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
nsklaus has quit [Ping timeout: 480 seconds]
fenix144 has quit [Remote host closed the connection]
fenix144 has joined #asahi-gpu
mikelee has joined #asahi-gpu
fenix144 has quit [Remote host closed the connection]
cylm_ has joined #asahi-gpu
ourdumbfuture has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
ourdumbfuture has joined #asahi-gpu
cylm has quit [Ping timeout: 480 seconds]
fenix144 has joined #asahi-gpu
mikelee has quit [Ping timeout: 480 seconds]
<alyssa> Mary: Your website looks.. familiar ^_^
<Mary> alyssa: I kind of wanted to go with something simple... and it ended up quite similar to yours and the other mary ^^'
<alyssa> :~)
<alyssa> I meant the css ;D
<Mary> (and Cantarell is a pretty font ngl)
<alyssa> oh yeah i love Cantarell
<alyssa> was my favourite font for a while
<alyssa> flirted with Lato for a little while but I think I'm back to Cantarell