ChanServ changed the topic of #dri-devel to: <ajax> nothing involved with X should ever be unable to find a bar
<karolherbst> ohh no.. I found the bug with sub buffers
TJ_Mercier has joined #dri-devel
nchery is now known as Guest1724
nchery has joined #dri-devel
mbrost_ has quit [Ping timeout: 480 seconds]
Guest1724 has quit [Ping timeout: 480 seconds]
khfeng has joined #dri-devel
ybogdano has quit [Ping timeout: 480 seconds]
rkanwal has quit [Ping timeout: 480 seconds]
mbrost has joined #dri-devel
iive has quit []
co1umbarius has joined #dri-devel
mhenning has joined #dri-devel
columbarius has quit [Ping timeout: 480 seconds]
<karolherbst> sub buffers fixed :)
apinheiro has quit [Ping timeout: 480 seconds]
danct12_ has joined #dri-devel
heat has joined #dri-devel
danct12_ has quit []
danct12_ has joined #dri-devel
danct12_ has quit []
Daanct12 has joined #dri-devel
nchery has quit [Read error: Connection reset by peer]
nchery has joined #dri-devel
<jekstrand> karolherbst: \o/
nchery has quit [Read error: Connection reset by peer]
rpigott has quit [Remote host closed the connection]
nchery has joined #dri-devel
rpigott has joined #dri-devel
sdutt has quit [Read error: Connection reset by peer]
maxzor has quit [Ping timeout: 480 seconds]
<karolherbst> jekstrand: soo.. slowly I am running out of stuff to fix :)
mbrost has quit [Read error: Connection reset by peer]
<karolherbst> two things which is hit by a lot of tests: 1. host ptr support for array and 3d images 2. use_host_ptr sometimes fails on weird alignments
<karolherbst> ohh and blorb
<karolherbst> buffers buffer_fill_float
<karolherbst> buffers buffer_copy
<karolherbst> and
<karolherbst> images/clGetInfo/test_cl_get_info 1Darray
<karolherbst> in case you've gotten some time looking into those issues (it's all iris related afaik)
Daanct12 has quit [Remote host closed the connection]
mclasen has quit [Ping timeout: 480 seconds]
tarceri_ has joined #dri-devel
tarceri has quit [Remote host closed the connection]
Danct12 has quit [Remote host closed the connection]
Net147 has quit [Quit: Quit]
Net147 has joined #dri-devel
Danct12 has joined #dri-devel
ella-0_ has joined #dri-devel
ella-0 has quit [Read error: Connection reset by peer]
JohnnyonF has joined #dri-devel
JohnnyonFlame has quit [Ping timeout: 480 seconds]
heat_ has joined #dri-devel
heat has quit [Ping timeout: 480 seconds]
aravind has joined #dri-devel
Akari has quit [Ping timeout: 480 seconds]
JohnnyonF has quit [Read error: Connection reset by peer]
JohnnyonFlame has joined #dri-devel
Akari has joined #dri-devel
Daanct12 has joined #dri-devel
xperia64 has quit [Remote host closed the connection]
Daanct12 has quit [Remote host closed the connection]
xperia64 has joined #dri-devel
aravind has quit [Ping timeout: 480 seconds]
aravind has joined #dri-devel
Daanct12 has joined #dri-devel
JohnnyonF has joined #dri-devel
Daanct12 has quit []
Johnny has joined #dri-devel
mdroper has quit [Read error: Connection reset by peer]
JohnnyonFlame has quit [Ping timeout: 480 seconds]
JohnnyonF has quit [Ping timeout: 480 seconds]
mhenning has quit [Quit: mhenning]
Johnny has quit [Read error: Connection reset by peer]
JohnnyonFlame has joined #dri-devel
heat_ has quit [Remote host closed the connection]
heat has joined #dri-devel
Duke`` has joined #dri-devel
HankB__ has quit [Remote host closed the connection]
HankB__ has joined #dri-devel
shankaru has joined #dri-devel
khfeng has quit [Remote host closed the connection]
khfeng has joined #dri-devel
jewins has quit [Read error: Connection reset by peer]
heat has quit [Ping timeout: 480 seconds]
lemonzest has quit [Quit: WeeChat 3.4]
itoral has joined #dri-devel
CME has quit [Ping timeout: 480 seconds]
<airlied> jekstrand: nir_lower_compute_system_values is hard to add a new lowering for something that is currently always lowered
lemonzest has joined #dri-devel
* airlied isn't sure how to stop it lowering something
* airlied wants it to stop lowering SYSTEM_VALUE_GLOBAL_GROUP_SIZE
<airlied> maybe if I add a compiler option alongside it
itoral has quit [Remote host closed the connection]
itoral has joined #dri-devel
CME has joined #dri-devel
Duke`` has quit [Ping timeout: 480 seconds]
<dolphin> airlied: any ETA for drm-misc-next pull to drm-next? there's a patch we have a dependency on drm-intel-gt-next
<airlied> dolphin: oh let me run it now
<dolphin> thanks, that'll unblock the DG2 stuff once I backmerge it then :)
danvet has joined #dri-devel
ahajda has joined #dri-devel
itoral has quit [Remote host closed the connection]
itoral has joined #dri-devel
idr has quit [Quit: Leaving]
mszyprow has joined #dri-devel
mripard[m] has quit []
mripard[m] has joined #dri-devel
frieder has joined #dri-devel
OftenTimeConsuming has quit [Remote host closed the connection]
OftenTimeConsuming has joined #dri-devel
OftenTimeConsuming has quit [Remote host closed the connection]
OftenTimeConsuming has joined #dri-devel
Guest1711 has quit []
jessica_24 has quit []
abhinav__ has quit [Quit: The Lounge - https://thelounge.chat]
shankaru has quit [Read error: Connection reset by peer]
abhinav__ has joined #dri-devel
abhinav__5 has joined #dri-devel
abhinav__ has quit []
abhinav__5 has quit []
abhinav__5 has joined #dri-devel
abhinav__ has joined #dri-devel
paulk has joined #dri-devel
MajorBiscuit has joined #dri-devel
Major_Biscuit has joined #dri-devel
<airlied> karolherbst, jekstrand : okay I've rebased by amd nir compute backend support, prelim nir/clover patches are in 15876
<airlied> no images 9 out of 95 basic passing
MajorBiscuit has quit [Ping timeout: 480 seconds]
rpigott has quit [Read error: Connection reset by peer]
jkrzyszt has joined #dri-devel
rpigott has joined #dri-devel
OftenTimeConsuming has quit [Remote host closed the connection]
OftenTimeConsuming has joined #dri-devel
pnowack has joined #dri-devel
JohnnyonFlame has quit [Read error: Network is unreachable]
JohnnyonFlame has joined #dri-devel
<airlied> dolphin: drm-next is pushed out now
<dolphin> airlied: thanks, will send early -fixes PR tomorrow due to easter holidays
lynxeye has joined #dri-devel
<dolphin> last week there were none picked up, this week there is one patch
maxzor has joined #dri-devel
apinheiro has joined #dri-devel
<remexre> does anyone know what's blocking VK_EXT_acquire_drm_display support on more drivers? I haven't really dug into the mesa code before, but from c8ed5ac206a7 and 2fe2eb1911f4 it *looks* pretty trivial
<remexre> (and if I'm not missing something and it is pretty trivial, is this something that'd be a good first commit?)
shashanks has joined #dri-devel
shashank_s has joined #dri-devel
shashank_sharma has quit [Ping timeout: 480 seconds]
shashanks has quit [Ping timeout: 480 seconds]
<emersion> yes it should be pretty trivial to wire up
<emersion> yup, would be a good first contribution
<emersion> feel free to CC me for a review
<remexre> okay, thanks!
mvlad has joined #dri-devel
seanpaul has quit [Ping timeout: 480 seconds]
seanpaul has joined #dri-devel
rasterman has joined #dri-devel
i-garrison has quit [Read error: Connection reset by peer]
i-garrison has joined #dri-devel
Company has joined #dri-devel
rkanwal has joined #dri-devel
itoral has quit [Remote host closed the connection]
itoral has joined #dri-devel
itoral has quit [Remote host closed the connection]
itoral has joined #dri-devel
shashank_s has quit [Ping timeout: 480 seconds]
mclasen has joined #dri-devel
itoral has quit [Remote host closed the connection]
itoral has joined #dri-devel
Kayden has quit [Read error: Connection reset by peer]
Kayden has joined #dri-devel
itoral has quit [Remote host closed the connection]
flacks has quit [Quit: Quitter]
flacks has joined #dri-devel
devilhorns has joined #dri-devel
libv has quit [Read error: Connection reset by peer]
libv has joined #dri-devel
anujp has quit [Ping timeout: 480 seconds]
mripard[m] has quit []
mripard[m] has joined #dri-devel
shashanks has joined #dri-devel
mripard has joined #dri-devel
mripard has quit []
mripard has joined #dri-devel
mripard has quit []
mripard[m] has quit []
ramaling has quit []
ramaling has joined #dri-devel
mripard has joined #dri-devel
<marex> lynxeye: ^
<daniels> marex: I'm not involved at all with bridge stuff; pinchartl is the one who mostly deals with that
shashank_sharma has joined #dri-devel
shashank_s has joined #dri-devel
shashanks has quit [Ping timeout: 480 seconds]
shashank_sharma has quit [Ping timeout: 480 seconds]
devilhorns has quit [Remote host closed the connection]
devilhorns has joined #dri-devel
MajorBiscuit has joined #dri-devel
Major_Biscuit has quit [Ping timeout: 480 seconds]
Major_Biscuit has joined #dri-devel
MajorBiscuit has quit [Ping timeout: 480 seconds]
tango_ has quit [Ping timeout: 480 seconds]
tango_ has joined #dri-devel
sdutt has joined #dri-devel
<zmike> MrCooper: looking into that log error, it seems like I'd need to programmatically #define the string name in meson
<zmike> but my meson-fu only extends to static #defines
<MrCooper> not sure offhand how best to deal with that, sorry
<zmike> yeah I'm writing it into the ticket
<zmike> maybe dcbaker can rescue us
Danct12 has quit [Remote host closed the connection]
Danct12 has joined #dri-devel
pcercuei has joined #dri-devel
jewins has joined #dri-devel
apinheiro has quit [Ping timeout: 480 seconds]
mbrost has joined #dri-devel
maxzor has quit [Ping timeout: 480 seconds]
Major_Biscuit has quit [Ping timeout: 480 seconds]
Net147 has quit [Ping timeout: 480 seconds]
ramaling has quit []
ramaling has joined #dri-devel
ella-0 has joined #dri-devel
nchery has quit [Read error: Connection reset by peer]
ella-0_ has quit [Remote host closed the connection]
Net147 has joined #dri-devel
<jekstrand> airlied: Have you looked at hooking up ACO?
maxzor has joined #dri-devel
ramaling has quit []
ramaling has joined #dri-devel
pcercuei_ has joined #dri-devel
pcercuei has quit [Read error: Connection reset by peer]
Major_Biscuit has joined #dri-devel
pnowack has quit [Quit: pnowack]
<jekstrand> Kayden: Were you going to do any more review on !15829? You left some detailed comments and I think I addressed them.
<karolherbst> jekstrand: what's the deal with the binding table in iris? Does it contain like everything? Because I have tests crashing on that having too many entries for the tests using 32 images
khfeng has quit [Ping timeout: 480 seconds]
<karolherbst> mhh iris also sets sampelr_views == shader_images == texture_samplers :/
<karolherbst> uhm.. max_*
<jekstrand> karolherbst: Yeah, we're going to need to do something about iris' binding tables. I can work on that today, if you'd like.
<jekstrand> It'll mean some driver surgery but I don't think it'll be that bad.
<jekstrand> Basically, I need to separate samplers and textures and make it look at variables or something instead of relying on textures_used.
<karolherbst> mhh, I think it might more sense to fix that stuff for llvmpipe first (because we have to bump mesa core limits anyway)
<jekstrand> But I'm not sure how much gallium deletes before we get into iris.
<jekstrand> But iris needs to be the premier CL driver. :P
<karolherbst> :D
<karolherbst> sure
<karolherbst> but llvmpipe has that stuff split already
<karolherbst> so I'd just make mesa able to support 128 textures (or samplers?) and then we can fix iris
mdroper has joined #dri-devel
<karolherbst> there are two issues which cause way more fails/crashes anyway: use_host_ptr on arrays + 3D and use_host_ptr failing on weirdly aligned ptrs for buffers and 1d images
<karolherbst> like if the alignment is 0x1
<karolherbst> those two things would probably kill ~50% of the fails I still have
<jekstrand> karolherbst: Yeah, I'm going to try and look at those today too.
<karolherbst> cool
<jekstrand> karolherbst: RE: weirdly aligned pointers, Intel HW can't handle writes to images which aren't pixel-aligned. Texturing should work, though.
<karolherbst> mhh, okay, let me see how the pointer looks like for the 1d image cases
Major_Biscuit has quit [Ping timeout: 480 seconds]
ramaling has quit [Quit: leaving]
<karolherbst> ohh wait, no, I mistook that one issue for image_buffers not really supported atm
<karolherbst> so I think use_ptr on 1D images are fine
yogesh_mohan has quit [Ping timeout: 480 seconds]
<karolherbst> but iris seems to suffer from the same issues llvmpipe does for texture clamping :(
<jekstrand> what issue would that be?
<karolherbst> some minor precision problems
<karolherbst> -1 get's turned into something very close to -1 instead and things fall apart
<karolherbst> stuff like this
<karolherbst> iris might suffer from something different, but similiar
<jekstrand> karolherbst: Ugh...
<jekstrand> I hope not
<jekstrand> That's not something we can just fix
<karolherbst> could be something different here though
<karolherbst> but..
<karolherbst> you see this very very small y coord?
<karolherbst> it's OOB, but it still reads at 46,0 instead
<karolherbst> CLAMP is PIPE_TEX_WRAP_CLAMP_TO_BORDER
<karolherbst> mhh, the second fail seems like random precision stuff
<karolherbst> reading at 0,2 instead of 0,3
* jekstrand kicks off a full wimpy CTS run
<jekstrand> I really need a dedicated test machine. Oh, well.
Akari has quit [Ping timeout: 480 seconds]
<karolherbst> you don't? :(
<jekstrand> No. Intel took all my hardware back when I quit. I just have my collabora-issued XPS 13.
<karolherbst> on my desktop it takes like 7 minutes on iris, so if you want me to run stuff :P
<jekstrand> My fancy new desktop doesn't have an Intel GPU.
<daniels> run it on Panfrost
<jekstrand> daniels: :P
<jekstrand> daniels: I do intend to get panfrost working. I think that's next after iris. I'll let airlied deal with radeonsi for now.
* karolherbst burries itself into the chaos compiler features_macro is
anujp has joined #dri-devel
ramaling has joined #dri-devel
Akari has joined #dri-devel
maxzor has quit [Ping timeout: 480 seconds]
<bnieuwenhuizen> jekstrand: random Q on compute, do y'
<bnieuwenhuizen> all have plans for how to deal with large compute kernels
<bnieuwenhuizen> wrt not inlining everything and such
<karolherbst> I think we have ideas
<karolherbst> not sure if we can call them plans
<jekstrand> bnieuwenhuizen: We plan to make a plan. :P
<karolherbst> ehh
<karolherbst> __opencl_c_program_scope_global_variables ...
<karolherbst> Feature status: API - not supported, compiler - supported
<karolherbst> __opencl_c_program_scope_global_variables - failed
<karolherbst> how can I tell clang to just not do that? :D
Akari has quit [Ping timeout: 480 seconds]
<karolherbst> ohh
<karolherbst> -__opencl_c_program_scope_global_variables ?
<karolherbst> okay...
<karolherbst> it's a llvm-13+ feature
<karolherbst> guess we require llvm-13 then
Akari has joined #dri-devel
<jekstrand> karolherbst: I'm going to post the list of failing tests once this CTS run finishes. It's 76% done
<karolherbst> I can do that as well :p
<karolherbst> it's already done here
<jekstrand> Oh, ok then.
<jekstrand> I've also got a list of open iris MRs on there.
<karolherbst> yeah. I usually just pull in those commits into my branch
<karolherbst> list added
shashank_s has quit [Ping timeout: 480 seconds]
<jekstrand> Thanks!
<karolherbst> given that's a full CL 3.0 run the list isn't all that huge anymore :)
<karolherbst> printf is annoying to fix
<jekstrand> :D
<karolherbst> so is this linker bug
<karolherbst> ignoring those two things, it's really not much left anymore
<jekstrand> One of these days, I need to make nir_lower_conversions stop lowering all the things. Intel can do a bunch of it in in HW.
<karolherbst> yeah, nvidia can do like everything in hardware as long as you don't step over 32 bit
nchery has joined #dri-devel
<karolherbst> if you step over 32 you need to do two conversions
<jekstrand> Right
<jekstrand> Intel has a similar issue
<karolherbst> so 64 -> 8 would be 64 -> 32 -> 8
<karolherbst> okay
<jekstrand> We can't do 64 -> 8
<jekstrand> We might be able to do 64 -> 16 but I'm not sure
<karolherbst> yeah, not sure about that either
<jekstrand> Well, not on TGL since there is no 64... :sob:
<karolherbst> maybe we got the same IP blocks :P
<karolherbst> another thing is fma
<karolherbst> but...
<karolherbst> fma is a mess in mesa, so
<jekstrand> Yeah...
<jekstrand> That's on the list of things we need to fix for real one of these days.
<karolherbst> most comes from the assumption that glsl would know fma, but it doesn't
<jekstrand> Yeah, GLSL is the mess. CL is pretty sane, IMO.
<karolherbst> yep
<karolherbst> having two ops is the only sane path here
<jekstrand> I think so
<karolherbst> everything else is just hacks over hacks
<jekstrand> There may also be some need somewhere for something like "exact" but "ieee-correct". We might be able to do it with that, maybe.
Duke`` has joined #dri-devel
<karolherbst> mhh
<karolherbst> yeah exact doesn't mean ieee correct
<karolherbst> again, glsl doesn't know fma, so an "exact" thing just means to stay consistent
<karolherbst> if your hw can't do fma, then exact is meaningless
<jekstrand> Yup
<jekstrand> Not quite meaningless.
<karolherbst> why not?
<karolherbst> sure, for other ops
<jekstrand> Exact means "don't change the value when you optimize" That has a meaning regardless of whether fma is high-precision or not.
<jekstrand> But, yeah, I think we want separate fma and fmad.
<jekstrand> *ffma
<karolherbst> ohh sure, but you can split/merge it all you want
<jekstrand> yup
<dj-death> oh crap
<dj-death> a nir_opt_if() bug :(
<karolherbst> the best ones
<jekstrand> dj-death: Ouch
<dj-death> where is my hack that prints out what nir line modified an instruction
Net147 has quit [Ping timeout: 480 seconds]
<karolherbst> mhh I think I have to modify clc :(
<jekstrand> karolherbst: Mind fixing some other stuff while you're at it?
Net147 has joined #dri-devel
<karolherbst> jenatali: if somebody at MS has some internal CL 3.0 support patches to wire up OpenCLExtensionsAsWritten, now would be the best time to show them :p
<karolherbst> jekstrand: what exactly?
<jenatali> Hm?
<karolherbst> jenatali: yeah so.. we have to disable/enable opencl c feautres via c->getTargetOpts().OpenCLExtensionsAsWritten
<jekstrand> karolherbst: generic variants of arithmetic built-ins and wait_group_events
<karolherbst> ohh
<karolherbst> I meant src/compiler/clc
<jekstrand> Oh
<karolherbst> not libclc
* jekstrand had his hopes up
<karolherbst> :D
ybogdano has joined #dri-devel
<karolherbst> jenatali: I guess we can just disable everything?
<swick> ajax: I heard you use silverblue. Any tips and tricks for kernel development? I'm not really happy with rebuilding a new rpm for every change.
<karolherbst> jenatali: clover is doing this, and I plan to do just the same until somebody cares about those https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/gallium/frontends/clover/llvm/invocation.cpp#L255-264
<jenatali> Yeah, my thinking was to disable everything in the clc code that the LLVM/SPIR-V/NIR compiler stack doesn't support, and then leave it up the frontend to disable stuff that the compiler can support but the frontend doesn't
<karolherbst> at some point we have to pass in lists with supported things, but atm I don't support anything anyway
shashanks has joined #dri-devel
* jekstrand thinks he may have found a but in the util/vma.h :-(
aravind has quit []
<dj-death> jekstrand: ffs :)
<jekstrand> dj-death: I'm still not 100% sure. It may be an iris bug
<dj-death> yeah my nir_opt_if() bug is "if ptr == 0" turned into "if false"
<dj-death> I'm pretty sure this is wrong
<dj-death> especially when ptr was loaded from an ssbo
<karolherbst> oh no :(
<karolherbst> dj-death: we did change something in this regard.. let me find it
<karolherbst> ohh it wasn't merged yet?
<karolherbst> nvm then
paulk has quit [Ping timeout: 480 seconds]
<jekstrand> dj-death: oof
<karolherbst> heck.. nobody tests this llvm stuff, does one?
<jekstrand> Ok, iris isn't returning VA to the wrong vma allocator
<jekstrand> Maybe we really are leaking BOs somewhere?
<karolherbst> jekstrand: what's the issue you are seeing?
<jekstrand> That seems more likely that iris not having VA space
<jekstrand> karolherbst: it's this long_math test
<jekstrand> It runs out of shader memory
<jekstrand> But it looks like it's freeing BOs.
<karolherbst> yeah.. well.. that works for me
<jekstrand> on iris?
<karolherbst> yeah
<karolherbst> uhm..
<karolherbst> whimpy or real?
<jekstrand> real
<karolherbst> okay, let me run it for real
<karolherbst> 2000% CPU time although that runs on the GPU :(
<karolherbst> jekstrand: yeah so uhm.. how long do I have to wait?
<jekstrand> a little while
<jekstrand> Not terribly long
<karolherbst> llvm probably races here or something...
<jekstrand> karolherbst: I've got a patch for that
<karolherbst> now it's doing stuff with CL_TEST_SINGLE_THREADED=1 :)
<jekstrand> "compiler/clc: Only initialize LLVM once"
<jekstrand> in my rusticl/wip branch
<karolherbst> ohh
<karolherbst> let me take that one then
* jekstrand should post that one
<karolherbst> "ERROR: clGetDeviceInfo CL_DEVICE_NAME failed! (CL_SUCCESS from /data/git/OpenCL-CTS/test_common/harness/kernelHelpers.cpp:892)" ehhh
<karolherbst> yeah well
<karolherbst> I had to fix that for nouveau as well :P
<karolherbst> jekstrand: it looks like stuff is just racy as hell everywhere
<jekstrand> karolherbst: Isn't rust supposed to fix that by design? :P
<karolherbst> sure, but only if I'd use Send everywhere
<karolherbst> which.. I don't :(
<karolherbst> shame on me
<karolherbst> so I move things between threads without them being strictly Send, so...
<karolherbst> I have ideas on how to fix it, but pointers...
<jekstrand> Bah... I have at most 5447 BOs allocated. Each of them would have to be 1M or larger in order to run out of VA
<karolherbst> well.. it's CL
<jekstrand> But they're all shaders
<karolherbst> races inside ../src/gallium/drivers/iris/iris_program_cache.c :)
<jekstrand> 1M is a really big shader
<karolherbst> yeah.. not quite sure what races yet exactly, but there seem to be things
<karolherbst> #1 bo_close ../src/gallium/drivers/iris/iris_bufmgr.c:1347 (libRusticlOpenCL.so.1+0xc3ce0a)
<karolherbst> so if you race inside bo_close...
<karolherbst> I guess bad things can happen indeed
<karolherbst> emit_state as well
<karolherbst> yeah.. I will try to tackle multithreading stuff over the weekend, this might get a bit annoying as I'd have to start to wrap more of our stuff
<karolherbst> I turned on Send for Event task once and got ~300 compiler errors :(
<jekstrand> Ok, according to the little atomic I added, we really are burning 4GB
<jekstrand> Oof
<jekstrand> Seems a bit insane
<karolherbst> :(
<jekstrand> That's a lot of quite big shaders
<karolherbst> well
<karolherbst> it's clc stuff
<karolherbst> although long math shouldn't cause such huge shaders
<jekstrand> Have you looked at those kernels? You can't get much simpler.
<karolherbst> yeah...
<karolherbst> I don't tink we leak though
<karolherbst> I see my mem consumption to jump around a little
<karolherbst> but it never exceeds a certian value
<jekstrand> Oh, I'm now very sure something's leaking. :)
<jekstrand> Something around kernels, specifically. I'm just not sure what yet.
<karolherbst> I doubt it
<karolherbst> the memory gets freed
gouchi has joined #dri-devel
<karolherbst> it just uses a lot of memory here
<karolherbst> but it does run
<karolherbst> jekstrand: it probably just has a huge buffer for the results
<jekstrand> That could be
<jekstrand> No, that's not it
<jekstrand> It's burning 4GB of shader memory
<karolherbst> I see the memory consumption to drop by a lot after a subtest finished
<karolherbst> mhh
* jekstrand wonders if we're leaking contexts
jessica_24 has joined #dri-devel
mszyprow has quit [Ping timeout: 480 seconds]
<jekstrand> Or if It's creating a context per test submission, effectively.
<karolherbst> I see multiple annoying races though
<karolherbst> soo
<karolherbst> you know you can't trust reporting, right?
paulk has joined #dri-devel
<karolherbst> like if the runtime races on the "allocated" value then that can just lead to broken values down the line
<karolherbst> vma.c also races.. uhh
<dcbaker> zmike: which issue?
<jekstrand> vma.c doesn't race. It's protected by a mutex
<karolherbst> yeah well
<karolherbst> it does
<jekstrand> according to what?
* dcbaker is excited for problems that are not dead firewalls
<karolherbst> tsan at least reports a few things
<jekstrand> Looks like the test creates 2037 contexts before dying
<karolherbst> mhh
<karolherbst> that would be annoying
<zmike> dcbaker: daniels beat you to it
<karolherbst> it could be that we refrence the context somewhere we shouldn't? mhh
<zmike> get back to that dead firewall
<karolherbst> jekstrand: context as in pipe_context?
<jekstrand> karolherbst: I'm checking now to see if it cleans them up
<jekstrand> karolherbst: Yes, pipe_context
<jekstrand> Hrm... It says it destroys 2027 of them
<karolherbst> sounds sane
<karolherbst> running with tsan makes stuff not crash here, so I'd assume we have some ugly races here and there
<jekstrand> So I should only have 10 instances of my 6MB scratch buffer live at any given time
<jekstrand> Uh...Yeah, iris is leaking scratch surfaces for some reason
<jekstrand> awesome.
<karolherbst> jekstrand: btw, is iris_bufmgr.c protected?
<karolherbst> although looks like it
<karolherbst> werid
<karolherbst> the tooling around figuring out races is really terribly bad anyway :(
<karolherbst> valgrinds solution to not knowing that atomics don't race is "just annotate your code, duh"
alyssa has joined #dri-devel
<dcbaker> zmike: I finally got it working. Spent from 7:30 yesterday till about 22:30 but finally got it working again... mostly
<dcbaker> still haven't figured out if it was the CPU or the motherboard that died
<zmike> dcbaker: yikes, that sounds awful
<jekstrand> karolherbst:
<jekstrand> long_math passed
<jekstrand> PASSED sub-test.
<jekstrand> PASSED test.
<dcbaker> yeah, kernel panic within 5 minutes of booting
<karolherbst> yay
<dcbaker> memtest works fine for hours
<karolherbst> jekstrand: what did you change?
<karolherbst> oops
<jekstrand> I can now delete all my printf's and go back to debugging interesting things.
<karolherbst> :D
<karolherbst> I'll let airlied handle compiler features_macro
<karolherbst> this stuff is just broken in llvm
<karolherbst> and I know that airlied already knows how to fix that
<karolherbst> using opencl-h-base.h makes compiling _fast_ though
<alyssa> raise your hand if you want to ignore real work and add an SSA RA for an Apple GPU compiler :p
* alyssa raises hand
<karolherbst> fun stuff is the only real work and I refuse to accept any other pov here
<alyssa> :D
<zmike> totally me but I'm already booked for another 6 months solid on this deadlift platform
<alyssa> zmike: switch to 2012 and then you'll have opengl drivers and won't need zink anymore
<karolherbst> a gl driver is probably more work than zink in 2012
<alyssa> yeah but somebody else did the work :p
<zmike> alyssa: but then I'll just be in a squat rack on a different continent
<alyssa> let's see, I wonder if I have a way to test the M1 Linux GPU driver on my M1 Linux
<alyssa> maybe drm-shim? no, wait, that won't work there's no drm interface implemented yet
* alyssa sweats
<karolherbst> alyssa: I guess you need to write m1kms then
<karolherbst> ehh
<karolherbst> m1drm
<alyssa> already wrote m1kms that's how I have nice 4K software rendering :-p
<karolherbst> :D
<karolherbst> I guess on the m1 software rendering isn't all too slow
rpigott has quit [Ping timeout: 480 seconds]
<alyssa> AGX_FAKE_DEVICE=1, that was the one
<alyssa> aha, magic combination:
<alyssa> gallium-drivers=panfrost,swrast,asahi
<alyssa> tools=panfrost,drm-shim
<alyssa> AGX_FAKE_DEVICE=1 LIBGL_DRIVERS_PATH=~/lib/dri/ LD_PRELOAD=~/mesa/build/src/panfrost/drm-shim/libpanfrost_noop_drm_shim.so
<alyssa> that gets a fake (mali) render node and then loads the m1 driver as a fake software rast
<alyssa> which tricks shader-db into using the agx compiler
<alyssa> despite no render nodes whatsoever
<alyssa> wait, no, now it's running panfrost.
<alyssa> gah
TJ_Mercier has quit [Remote host closed the connection]
* alyssa supposes she should start stubbing a DRM interface for Asahi, now that work is happening on the kernel
frieder has quit [Remote host closed the connection]
jkrzyszt has quit [Ping timeout: 480 seconds]
* alyssa copies piles of code from panfrost
iive has joined #dri-devel
pendingchaos_ has joined #dri-devel
pendingchaos has quit [Ping timeout: 480 seconds]
Peste_Bubonica has joined #dri-devel
devilhorns has quit []
rpigott has joined #dri-devel
mbrost has quit []
<Kayden> jekstrand: part of what I was trying to get at with my comment on !15829 is that if OpenCL is using uclz or ifind_msb on non-32-bit datatypes...it may be broken. at least it would be on 64-bit types
<Kayden> jekstrand: because the nir constant expression handling hardcodes 31
<alyssa> Ruh roh
<alyssa> Kayden: good chance to fix int8/int16 too ;)
<Kayden> those might work
<alyssa> the lack of an in-tree agx disassembler is really starting to biite
<Kayden> jekstrand: posted R-b for patches 2-3, I'm not planning to review patch 1, feel free to land it
<alyssa> am I going to take the isaspec plunge? or open code yet another disasm? idk
<karolherbst> alyssa: I'd use isaspec
<jekstrand> Kayden: uh... WAT?
minecrell has quit [Quit: :( ]
<jekstrand> So it does...
<jekstrand> Kayden: That's easily fixed
<dj-death> found the culprit
<dj-death> opt_if_rewrite_uniform_uses()
<alyssa> karolherbst: do we have proof of it working for !freedreno yet?
<jekstrand> Kayden: We also appear to not have int64 lowering for them. :-/
<jekstrand> idk why the CL tests didn't pick up on that.
<karolherbst> alyssa: you could be that proof
<karolherbst> dunno if anybody else is using it, but _if_ I write a new compiler, I'd use them
<karolherbst> *that
minecrell has joined #dri-devel
<alyssa> it's overwhelming
<alyssa> and agx has some weird encoding details to it
pendingchaos_ is now known as pendingchaos
<alyssa> tu l'aimes ?
<karolherbst> uhhh
<karolherbst> :D
<karolherbst> what's that shm/dump stuff anyway?
* jekstrand wonders why we have a different clz for OpenCL
<alyssa> write to a file
<alyssa> jekstrand: what
<karolherbst> jekstrand: you don't want to know why
<Kayden> there did seem to be some redundancy in those opcodes
<jekstrand> Kayden: Uh oh...
<jekstrand> karolherbst rather
<karolherbst> there was a reason but I forgot.. something something precision
<karolherbst> maybe clz is one of the non broken one, I forgot
<alyssa> clz.. precision..?
<karolherbst> yeah.. dunno
<karolherbst> I think it was the case for others, clz might actually be fine
<karolherbst> let's see
<karolherbst> maybe because it was hardcoded to 32 bit and I didn't want to mess with it?
<karolherbst> ehh
<karolherbst> I can put the blame on airlied
<karolherbst> and jekstrand :D
<jekstrand> What the?!? Switching nir_clz_u to nir_uclz causes SPIR-V parsing to start failing.
<karolherbst> fun
<jekstrand> Oh... I need a u2u on it
mbrost has joined #dri-devel
<karolherbst> oh wow.. it grew "93 files changed, 14976 insertions(+), 314 deletions(-)"
<karolherbst> ehh wait
<karolherbst> I checked in random files
<karolherbst> oops
<jekstrand> Oh, bother...
<jekstrand> Yeah, it's 32-bit-only
<karolherbst> " 89 files changed, 13138 insertions(+), 313 deletions(-)" still massive
<karolherbst> who wants to review?
<alyssa> karolherbst: still smaller than powervr
<karolherbst> uhhh "BITSET_DECLARE(textures_used, 128);" uhhh
<karolherbst> I am doing it
<karolherbst> jekstrand: I guess we could just do a u2u for cl then?
<jekstrand> Yeah, maybe. Though the lowering for that one is tricky.
<karolherbst> right...
<karolherbst> what was our conclusion about textures_used though? airlied said something we probably don't have to bump it, but?
<jekstrand> I don't know. I've been putting out other fires.
<karolherbst> smart
<karolherbst> I'll just reap airlied branches and cherry-pick until it works
<dj-death> aaaa, looks like the block_index is not preserved on resume shaders
<dj-death> but why is it not rebuilt?
<jekstrand> karolherbst: Ok, now that I've sorted out that BO leak, maybe images are next. Where should I start?
<karolherbst> host ptrs on arrays + 3d?
<jekstrand> which test hits that?
<jekstrand> The image_streams test fails seem to be CLAMP_TO_EDGE with normalized coords
ngcortes has joined #dri-devel
<karolherbst> ./build/test_conformance/images/kernel_read_write/test_image_streams write 3D CL_MEM_USE_HOST_PTR
<karolherbst> no idea why textures work though
<karolherbst> I mean read images
<jekstrand> karolherbst: I'm not sure how to even implement USE_HOST_PTR for 3D images reliably. Intel has all sorts of restrictions there.
<karolherbst> :(
<karolherbst> what's the problem?
<jekstrand> Maybe not if it's linear?
* jekstrand looks
<karolherbst> jekstrand: also.. is 1d/2d array an issue?
<karolherbst> although... mhh disabling writes to 3d images also suck
<karolherbst> anyway.. seems like the CTS doesn't use host_ptr for the read image tests at all
<karolherbst> jekstrand: mem_host_flags mem_host_read_only_image also fails, but I think it's the same issue, just different
<jekstrand> Yeah, any array is going to be an issue
<karolherbst> ehh no, mem_host_read_only_image is a different fail
<karolherbst> that's I think alignment stuff
<karolherbst> yeah.. somehting weird is happening there
<karolherbst> isl_calc_row_pitch fails
<karolherbst> min_row_pitch_B is 1024, but surf_info->row_pitch_B is 800
ybogdano has quit [Ping timeout: 480 seconds]
<karolherbst> "api/test_api get_image1d_info" hits this issue as well
<jekstrand> karolherbst: I don't see how we can implement USE_HOST_PTR for 3D or array images on iris. We either need to lower to basically a buffer or we need to have a shadow copy that the GPU accesses.
<karolherbst> okay
<jekstrand> It's literally impossible to program the hardware with a slice pitch that's not a multiple of 4 rows
<karolherbst> uhh
<jekstrand> idk how the Intel CL driver does this
<karolherbst> yeah, dunno either
<karolherbst> let me check something...
TJ_Mercier has joined #dri-devel
<karolherbst> it's so strange
<karolherbst> so there is a query to get the required alignment, but only for 2D images created from a buffer object.. it's so wild
TJ_Mercier has quit []
tjmercier has joined #dri-devel
<jekstrand> Yeah
tjmercier_ has joined #dri-devel
tjmercier_ has left #dri-devel [#dri-devel]
<jekstrand> karolherbst: Hrm... I wonder...
tjmercier has quit []
<jekstrand> OpenCL implementations are allowed to cache the buffer contents pointed to by host_ptr in device memory. This cached copy can be used when kernels are executed on a device.
<karolherbst> yeah, so that just means we don't have to immediately reflect changes to the host
<jekstrand> So I think you're still required to map/unmap around CPU usage, it's just that the client basically gave you the map they want.
<karolherbst> and contents are only at sync at synchronization points
<karolherbst> yeah, you have to sync explicitly
<jekstrand> Well, that's the bit that's not clear
<jekstrand> When are they supposed to be synchronized.
<jekstrand> The naeve answer would be map/unmap
<karolherbst> when all maps are dropped
<karolherbst> it's written in the spec actually
<jekstrand> Ok
<karolherbst> or ehh.. when you map
<karolherbst> "5.5.3. Accessing mapped regions of a memory object"
<karolherbst> "If a memory object is currently mapped for writing .." and so on
<karolherbst> those two sections implicitly require this
<jekstrand> ok
<karolherbst> okay, so we have to do shadow buffering.. shouldn't be too painful
<karolherbst> I can hack something up
<jekstrand> I just pushed to my branch again with an iris commit which makes it gently return NULL if it can't create the resource instead of asserting.
<karolherbst> jekstrand: so what you should change is to just fail from_user if it's not possible to use
<jekstrand> So you can go ahead and try to create it with a host pointer and then fall back.
<karolherbst> ahh, okay
<karolherbst> cool
<karolherbst> that's what clover is already doing, but in the past we failed for any non page aligned pointer :)
<jekstrand> OpenCL is starting to get stupid....
<karolherbst> yes...
<jekstrand> karolherbst: Sure. We can do a lot better than that, fortunately. :)
<karolherbst> those are the things which make you "ahh, that's why clover was doing it like that"
<karolherbst> jekstrand: k, mind looking into that 1d fail though with the non matching pitch?
<karolherbst> dunno what's up there
<karolherbst> but might be fixable?
<karolherbst> "api/test_api get_image1d_info" is probably the easiest to hit it
<jekstrand> sure
ybogdano has joined #dri-devel
<dj-death> does adding a nir_push_if() in a shader preserves the dominance metadata?
<jekstrand> no
Haaninjo has joined #dri-devel
<jekstrand> If you alter control-flow at all, throw away all metadata
<karolherbst> random thought: until today I am actually surprised how well the structurizer holds up.
<jekstrand> Did it break today?
<karolherbst> nope
<jekstrand> There were a couple bugs in the original implementation but I got them sorted as part of the ray-tracing work. Those kernels are pretty brutal.
<jekstrand> karolherbst: Looks like SKL+ requires 1D images to have a stride aligned to 64 pixels. That's why it's failing.
<karolherbst> ahh, I guess I missed the fun
<karolherbst> okay
<karolherbst> makes kind of sense
<karolherbst> I am sure shadow buffering fixes that as well, but maybe we can be a bit better here
<jekstrand> So those will hit the same fall-back shadow path
<karolherbst> then I guess there isn't much left to do actually
<jekstrand> dj-death: Not sure if you saw it but https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15811 could use your eyes quick. In particular, I have no idea what alignment OA requires.
<karolherbst> fill_buffer fails due to blorp hittin assters
<karolherbst> I think because the fill data is bigger then this 16 bs value? something like that
<karolherbst> "buffers buffer_fill_float" e.g.
<jekstrand> Yup
<karolherbst> but I guess we want an accelerated kernel there anyway
<jekstrand> I need to implement fill_buffer for realz
<jekstrand> Or we need the state tracker to do something
<karolherbst> so two projects for me: 1. accelerated fill_buffer 2. shadow buffers
<karolherbst> yeah.. something
<karolherbst> doesn't have to be CL specific
<jekstrand> I can implement it in blorp or in iris. I just have to figure out how I want to go about it.
<karolherbst> I still need to find somebody to fix spirv-link :D
<dj-death> jekstrand: done
<jekstrand> dj-death: Thanks!
<karolherbst> jekstrand: ohh.. and we have to think about what to do about those clamp fails
<jekstrand> karolherbst: Yeah, let me take a peak
<jekstrand> Those seem super weird
* karolherbst kicks of another CTS run
<karolherbst> jekstrand: from what I know is, that most/all of this fails are like in the "precision" area, probably weird rounding in some places or something
<karolherbst> but dunno what we can actually do about it, if the hardware is not good enough
<karolherbst> we could probably also cheat and check what the intel stack is doing, but wouldn't surprise me if that falls inside llvm land
<airlied> jekstrand: aco isn't hooked up to radeonsi at all yet
<karolherbst> airlied: ahh the person I waited for :D
<karolherbst> airlied: soo.. opencl-c-base.h + all those feature defines to enable/disable compiler features, how does that stuff work?
<karolherbst> I noticed that compilation speed skyrocket once I use base.h, but it didn't help me fix the compiler features_macro test
<airlied> karolherbst: it works badly
<airlied> using the base + generated stuff probably is useable in llvm14
<airlied> tbh for CL3.0 I expect there is still cleanup to be done on in both methods even now
<karolherbst> ahh yeah...
<karolherbst> sad
<airlied> at least now I have llvm commit rights, so I can speed up landing the fixes
<airlied> karolherbst, jekstrand : if you can look at 15876 and make sure you are comfortable with it (acks please), I think for radeonsi rusticl will need to handle the last two bits
<jekstrand> airlied: I'm very confused by the need to unlower GLOBAL_GROUP_SIZE. Does radeon not have workgroup_size and num_workgroups?
<airlied> jekstrand: the LLVM backend has a fixed API, it doesn't have those
<airlied> it does have global group size
<jekstrand> Ugh
<airlied> and yes that is at least what ROCm was doing 10 months ago, I should recheck if they ever worked out how dumb it was
<jekstrand> airlied: Ok, so at least it's consistently stpuid
<karolherbst> jekstrand: for details, read up on the clover llvm backend :p
shashank_sharma has joined #dri-devel
<jekstrand> I think, with that, we have an almost complete combinatorial set of possible lowerings of global/local_size/index.
<karolherbst> :D
<airlied> gotta catch em all
gawin has joined #dri-devel
<jekstrand> I kind of want an interface that's just "tell me what system values you have and I'll sort it out"
<airlied> jekstrand: yeah I fell over the using the compute system values flags yesterday, but since lots of things call it from various places it can't really do negative flags
<airlied> hence why I stuck it into options
shashanks has quit [Ping timeout: 480 seconds]
<airlied> jekstrand: the kernel args backend work is also a horrid thing
<jekstrand> airlied: I really hate that whole MR.
<jekstrand> Maybe ACO would be easier. :P
<airlied> I'd have to trick dschuermann then :-P
<karolherbst> :D
<karolherbst> something we could change in rusticl to make it less annoying?
mbrost has quit [Remote host closed the connection]
mbrost has joined #dri-devel
<airlied> karolherbst: nope, the annoying is the LLVM/amdgpu ABI
<airlied> I think those two things that need changing are just don't lower the kernel args, and lower work_dim support
<airlied> karolherbst: where is your cts launcher again?
<airlied> karolherbst: my cts build names all the cts test binaries conformance_test_ isntead of test_
<airlied> not sure when that changed
<karolherbst> strange
<karolherbst> airlied: use this instead then: https://github.com/karolherbst/OpenCL-CTS/commits/master
<karolherbst> I have some fixes to make them return proper error codes anyway
nchery has quit [Read error: Connection reset by peer]
nchery has joined #dri-devel
Duke`` has quit [Ping timeout: 480 seconds]
* jekstrand drags back up !7939 and takes a look
<airlied> jekstrand: there's still a lot of work, though hooking up kernel should be simpler
<airlied> but then the backend isn't kernel ready
<jekstrand> airlied: It's probably not that far off
<jekstrand> VK_KHR_buffer_device_address is like half of what you need.
<airlied> jekstrand: it wasn't that far off a year ago either
<jekstrand> airlied: I've been meaning to learn a bit about AMD hardware. :)
<airlied> hence why I've left the amd/nir patch sit around for a year
<airlied> I'd rather not leave it sit around for another year, if I can images work it has value now
<jekstrand> Yeah
* airlied has no idea if I can get images to work though, the ABI might defeat me :-P
<jekstrand> I just hate having to design around AMD's LLVM ABI. :-(
<jekstrand> I'd rather make ACO work
<karolherbst> how hard would it be to add another ABI which is essentially a "no ABI"?
<karolherbst> although I guess there are a few things which needs to be defined :(
<karolherbst> anyway.. shadow buffers...
shashank_sharma has quit [Read error: Connection reset by peer]
<jekstrand> Ugh... need newer libdrm
shashank_sharma has joined #dri-devel
<DrNick> need to be able to stack meson devenvs
<karolherbst> ehh wait.. I just need to keep a pointer with data
* jekstrand should probably update to new fedora
<karolherbst> 36?
<karolherbst> is that already out?
<karolherbst> jekstrand: but you can also just upgrade one package
<airlied> pretty sure I've built it for f35 already
<airlied> you can just the f35 package on f34 if you are still there
<karolherbst> sudo dnf install fedora-repos-rawhide -y
<jekstrand> karolherbst: Yeah, I can. But it'm gonna need to bump to 36 before too long anyway
<karolherbst> sudo dnf --disablerepo=* --enablerepo=rawhide
<jekstrand> But maybe not today
<alyssa> ACO+rusticl, the future is now?
<jekstrand> I pulled drm from 36
<karolherbst> k
<karolherbst> I also have to update at some point
<karolherbst> alyssa: everything+rusticl you mean
mvlad has quit [Remote host closed the connection]
<karolherbst> there are two things we already planed to make it easier for other drivers: 1. drop this input pointer thing 2. clear_buffer emulation
<karolherbst> ehh and 3. shadow buffers for host_ptrs
<karolherbst> with that it's really just set_global_bindings + some caps, no?
* karolherbst hates the set_global_bindings interface though
<jekstrand> How do I tell meson to nuke its cached versions of what I have on the system and fully reconfigure?
<alyssa> jekstrand: rm -rf build
<alyssa> ? :p
<karolherbst> configure --clearcache?
<airlied> meson configure --clearcache is the magic
<jekstrand> Thanks!
<karolherbst> uhhh
<karolherbst> now I just noticed how big of a thing this shadow buffer stuff is
<jekstrand> karolherbst: Yeah, it's going to be a real PITA
<karolherbst> cl_mems are not just one pipe_resource but a dev -> pipe_resource mapping thing
<karolherbst> I always forget this
<karolherbst> so I need to manage that per device
<karolherbst> my interfaces don't work like that :D
<karolherbst> ehh, I have an idea
<airlied> the horrors of clover come back
<karolherbst> :D
<karolherbst> sadly
<karolherbst> airlied: btw.. I have multiple tests crashing inside llvmpipe shaders
<karolherbst> in case you want to have some fun
<jekstrand> Ugh... Glancing at this radeonsi ACO patch, it has RADV data structures in it. :(
<karolherbst> or are you ignoring lp now and just go with radeonsi:P
<airlied> jekstrand: yeah the driver/compiler interface is a bit mushy
<karolherbst> we do cheat a little, but iris has a better passrate than lp and that confuses me
<airlied> karolherbst: crashing inside shaders usually means you passed the wrong garbage in
<karolherbst> well..
<airlied> so it ends up reading from an ssbo that doesn't exist or somethgin
<karolherbst> yeah... I guess?
<karolherbst> but how would I debug that
<karolherbst> it doesn't crash with iris is what confuses me
<airlied> karolherbst: you should talk to zmike about that confusion
<zmike> what
<karolherbst> :D
<karolherbst> you mean stuff which works with zink but not with the native GL driver?
<airlied> karolherbst: no things zink crashes on that work with other vulkan drivers
<karolherbst> ahh
* karolherbst goes back into this shadow buffer cave
<zmike> 🤔
<airlied> just because iris doesn't die horrible, doesn't mean llvmpipe is wrong :-P
<karolherbst> I am sure llvmpipe is wrong
<airlied> karolherbst: if it crashes with clover get back to me :-P
<karolherbst> anyway, I have no idea on how to even debug this, hence me asking
<karolherbst> airlied: it does
<karolherbst> otherwise I would have fixed it already
<airlied> ah send me the test name or file an issue
<alyssa> airlied: so i'm thinking of adding a new software rasterizer to mesa
<zmike> no
<alyssa> airlied: it'll have way fewer features than llvmpipe
<airlied> you generally debug adding lp_build_print_value everywhere
<alyssa> orders of magnitude slower, too
<airlied> alyssa: we have one called softpipe :-P
<karolherbst> airlied: ./build/test_conformance/math_brute_force/test_bruteforce cosh -w
<airlied> we already inveented the wheel
<alyssa> no no no this one will be slower than softpipe i promise
<karolherbst> have fun with printf
* airlied stays away from trig functions
<airlied> esp ones with h on the end
<alyssa> it'll need an extra build dependency though, not sure that's ok
<airlied> I don't remember maths class teaching about those
lemonzest has quit [Quit: WeeChat 3.4]
<karolherbst> guess why I am asking questions on how to debug this stuff :P
<jekstrand> How do I fetch a commit in gitlab which is clearly in the UI but not in any branch I know of?
<airlied> alyssa: is this going to be a gfx pipeline in a compute shader?
<alyssa> hyperbolic trig functions were covered in uni math classes
<alyssa> airlied: no the dependency is verilator ;p
<jekstrand> I can make a tag but I don't really want to do that.
<airlied> jekstrand: add .patch to the end? and downlad it
<karolherbst> jekstrand: just fetch on the commit
apinheiro has joined #dri-devel
<jekstrand> karolherbst: Oh, I didn't know you could do that. Neat!
<karolherbst> I didn't know that either
<karolherbst> I guessed
<karolherbst> but that sounds like something which git supports :D
<airlied> karolherbst: okay I got clctsrunner going, I had some ancient cts tree
<alyssa> .patch is great, how do you think my email gitlab workflow goes :p
<airlied> karolherbst: but yeah to debug llvmpipe you add printfs to the llvm generated code, there is no other good way
<karolherbst> but fun that you can actually fetch by commit :)
<karolherbst> but git has terrible magic
<airlied> dang it gpu hang
<karolherbst> jekstrand: btw, MRs also have refs on gitlab in case you didn't know. You can even configure git to auto fetch all Ms
<karolherbst> *MRs
* karolherbst guess he knows why his .git dirs are so huge
<karolherbst> wow.. my kernels .git is like 6GB
<alyssa> oof
<DrNick> eh, origin, stable and tip are 5 GB
<karolherbst> mhh
lynxeye has quit [Quit: Leaving.]
<jekstrand> Ugh... Trying to rebase across "radeonsi: switch to 3-spaces style"
<karolherbst> ...
<karolherbst> the best commits
<alyssa> jekstrand: this is what I'm scared of for panfrost
<karolherbst> never ever change it
<jekstrand> No, I'm not rebasing across that
<jekstrand> hrm...
<alyssa> it is an awful mix of 3- and 8- depending on how old the code is
<alyssa> jekstrand: there's a clever way to do it, aco had a script iirc
<karolherbst> just make it weird for everybody and choose the GNU code style
* alyssa trying to figure out p_split vs p_extract etc
<DrNick> syntax aware whitespace-agnostic patching
<alyssa> the way this is handled in ir3 is really weird
tales_ has joined #dri-devel
<airlied> jekstrand: wasn't that MR merged? or are there other patches?
<jekstrand> airlied: There are other patches. I'm attempting a rebase now
<karolherbst> is there a way on a pipe_resorce to know if it's using user_memory or not?
<karolherbst> I guess not, but..
<jekstrand> karolherbst: No
danvet has quit [Ping timeout: 480 seconds]
<karolherbst> k.. then I need to track that myself
* alyssa wonders how split of a phi works
gouchi has quit [Remote host closed the connection]
<alyssa> oh ACO just does p_extract ok
shashank_sharma has quit [Ping timeout: 480 seconds]
ybogdano has quit [Ping timeout: 480 seconds]
gawin has quit [Ping timeout: 480 seconds]
mszyprow has joined #dri-devel
ngcortes has quit [Ping timeout: 480 seconds]
ahajda has quit [Remote host closed the connection]
maxzor has joined #dri-devel
gawin has joined #dri-devel
<FLHerne> jekstrand: git rebase --ignore-whitespace ?
<FLHerne> it ignores the whitespace
ngcortes has joined #dri-devel
ybogdano has joined #dri-devel
<jekstrand> airlied: Got it rebased and building: https://gitlab.freedesktop.org/jekstrand/mesa/-/commits/radeonsi/aco
<jekstrand> Doesn't do anything. It's not capable of using the newly compiled shader. Need to figure that out nex<t.
<alyssa> ;_D
<jekstrand> dcbaker: Can you make waffle releases?
<jekstrand> Or maybe jljusten?
mszyprow has quit [Ping timeout: 480 seconds]
icecream95 has joined #dri-devel
maxzor has quit [Ping timeout: 480 seconds]
sneil has quit [Remote host closed the connection]
sneil has joined #dri-devel
<jljusten> jekstrand: yes, in theory. :) xexaxo has been doing most of the maintenance of waffle for quite some time though.
<jekstrand> jljusten: I've been bugging him to make a release for a while and nothing happens. :-(
<jekstrand> jljusten: So I was hoping someone else would maybe make it happen?
<jekstrand> We've already missed f36 :(
<jekstrand> I fixed a bug affecting radeonsi 5 months ago and it's not in a release yet. :-(
<jljusten> jekstrand: hmm, maybe if I trick dcbaker into working on it, then I can get the Mesa 22.1 branch point delayed. :) (still waiting on i915 for dg2...)
<jekstrand> jljusten: From what I've heard, we probably don't want to wait on i915 DG2. :-(
<jekstrand> But I suppose you're supposed to know more about that than me. :)
<alyssa> jekstrand: why is i915 for dg2 a thing
* jekstrand no longer has to justify Intel's decisions. :P
<jljusten> jekstrand: it seems there is chance for drm-next to have it merged by the end of April
<jljusten> alyssa: we need a couple i915 query items to be defined
* jekstrand is getting very confused by this driver<->compiler "interface"
<dcbaker> jekstrand: I can't for some reason, I think only Emil and jljusten can
<jljusten> jekstrand: I think dcbaker will try to work on it
<jekstrand> jljusten: Works for me. As long as one happens, I don't care who types the "bump the version" commits and does the tagging.
<dcbaker> jljusten: any problems with me merging: https://gitlab.freedesktop.org/mesa/waffle/-/merge_requests/81
<karolherbst> ahhhh...
<jekstrand> dcbaker: I don't see a good reason why not. It's been 5 years since I've heard a peep about NaCL
<jekstrand> dcbaker: It'd be nice to get an ack from chadv or someone else at Google but I don't see a problem with it.
<dcbaker> okya, merged
<dcbaker> that sounded like a second ack
<robclark> jekstrand, dcbaker: NaCL is still alive and kicking for another couple years
<robclark> (annoyingly)
<dcbaker> does it matter for waffle though?
<jekstrand> robclark: That's very ssad
<dcbaker> and does the code even work anymore?
<robclark> what it has to do with waffle, I have no idea
<dcbaker> though I did merge the waffle MR already...
<karolherbst> jekstrand: "FAILED 42 of 105 sub-tests." -> "FAILED 16 of 105 sub-tests." :3
<jekstrand> karolherbst: \o/
<karolherbst> something up with 3D and no idea what
<jekstrand> karolherbst: Getting shadows working?
<karolherbst> yeah
<jekstrand> Oh, I was going to look at CLAMP
<jekstrand> I should do that
<dcbaker> jljusten, jekstrand I vote for the keithp strategy, "let's delete it and see if anyone complains"
<karolherbst> jekstrand: good point
<karolherbst> with shadow buffers 3D goes from 21 of 21 fails down to just 15
<karolherbst> ohh.. resource creation fails
<karolherbst> nvm then
<karolherbst> something is still not working alright, but not sure what
<jekstrand> karolherbst: Any easy way to run just a clamp test?
<karolherbst> specify the options
<karolherbst> you can pass in format + target and stuff
<karolherbst> just find a combination which then just runs one thing
<karolherbst> read int CL_R ... something or so
<karolherbst> jekstrand: there is just one ugly thing: non blocking maps :'(
<karolherbst> I need to rewrite my code again
<jekstrand> :'(
<karolherbst> ohh.. I have an idea
sneil_ has joined #dri-devel
sneil has quit [Read error: Connection reset by peer]
<jekstrand> karolherbst: I'm very confused by this test. It seems to be rounding funny
<karolherbst> yeah.. it takes time to get used to
<karolherbst> but it's doing the correct thing
zf has quit [Quit: No Ping reply in 180 seconds.]
zf has joined #dri-devel
Haaninjo has quit [Quit: Ex-Chat]
<jekstrand> karolherbst: It's doing NEAREST and sampling exactly on the edge between pixels
<jekstrand> :-/
<karolherbst> yep
<karolherbst> this is the area where gl doesn't care :P
<karolherbst> worst case we have to add a flag in the sampler_view with "super precise clamping"
<karolherbst> ehh sampler
<karolherbst> one day I will alwyas use the right term
<jekstrand> I don't think this is fundamentally a clamping issue
<jekstrand> Maybe it is?
<karolherbst> dunno
<jekstrand> I guess clamping might affect it somehow
<karolherbst> what's the Intel CL stack doing?
<jekstrand> idk
<karolherbst> jekstrand: ohh, right, I also saw issues on non clamped values
<jekstrand> I don't think I even have it installed. :-/
<karolherbst> I do
<karolherbst> ehh
<karolherbst> how slow
<jekstrand> I don't think the Mesa dumping tools will work with the CL driver
<karolherbst> probably not
<karolherbst> but it does seem to do the right thing
<karolherbst> woah... they even supprt CL_LUMINANCE, crazy shit
<jekstrand> CL_LUMINANCE? Ok, I'm done with this API...
<karolherbst> there is also CL_DEPTH
<karolherbst> you know... there is this gl sharing extension
<jekstrand> :facepalm:
<karolherbst> jekstrand: it's optional though.. CL_LUMINANCE that is
<karolherbst> I expose only the required formants in rusticl for now
<karolherbst> but all of them
shashanks has joined #dri-devel
<karolherbst> adding things like CL_A or CL_RG/CL_RA are potential no brainers to add later
<karolherbst> there is CL_INTENSITY as well :)
<karolherbst> I think the ones I love the most are the x ones
<karolherbst> CL_sRGBx for extra nightmares
mbrost has quit [Ping timeout: 480 seconds]
<karolherbst> jekstrand: CL 2.0 even requires CL_DEPTH
* jekstrand clones the compute-runtime repo
<karolherbst> but because they knew how insane that was, it's only required for 2D images
<karolherbst> but I am surprised how my debug build runs faster through those tests than intels stack
<karolherbst> jekstrand: we need to get function calling working for... reasons
nchery has quit [Ping timeout: 480 seconds]
mbrost has joined #dri-devel
pcercuei_ has quit []
h0tc0d3 has joined #dri-devel
<jekstrand> karolherbst: Yeah, functions are a big project
mhenning has joined #dri-devel
* jekstrand wonders if the intel driver is doing something clever here. :-/
<jekstrand> Are we supposed to add 0.5 / texSize() or something?
<karolherbst> no clue
nchery has joined #dri-devel
rkanwal has quit [Ping timeout: 480 seconds]
<anholt> CLAMP -- do you mean GL_CLAMP?
<jekstrand> CLAMP_TO_EDGE
<anholt> oh, good
<jenatali> For non-normalized coords, they're supposed to translate to a coord at the pixel center
<jekstrand> jenatali: This is for the normalized case
<jenatali> Oh ok, nevermind :)
morphis has quit [Ping timeout: 480 seconds]
morphis has joined #dri-devel
* karolherbst kicks of the CTS and hopes nothing breaks
<zmike> is someone slamming iris jobs on ci or something?
<jekstrand> I've run a few but I wouldn't say "slamming"
<zmike> just had a merge fail and like half the iris jobs were still going
<jekstrand> :-/
khfeng has joined #dri-devel
rasterman has quit [Quit: Gettin' stinky!]
alanc has quit [Remote host closed the connection]
alanc has joined #dri-devel
<bl4ckb0ne> dcbaker: cheers, i completely forgot about that waffle patch
gawin has quit [Ping timeout: 480 seconds]