ChanServ changed the topic of #dri-devel to: <ajax> nothing involved with X should ever be unable to find a bar
<jekstrand>
anholt: Bah! Now I'm going to have to actually read and think about liveness...
<anholt>
see, I mostly just went with "trust brw_vec4_live_variables"
<jekstrand>
anholt: I mean more about the MAX discussion
<anholt>
ah
rasterman has quit [Quit: Gettin' stinky!]
<jekstrand>
Ok, now to read live variables. Oof
<jenatali>
I might, at some point, try to actually build a NIR backend for DXBC (pre-D3D12 IL), which is register-based, at which point I'd potentially be interested in liveness and register allocation too
<jenatali>
Since it's still an IL it doesn't need to be perfect, but I think it probably can't just be "use a temp register for every SSA value"
<jenatali>
Too bad this didn't end up in core NIR, would've made my life easier :)
<jenatali>
Or... maybe I'll actually use NTT and write a TGSI backend :O
<jekstrand>
I don't see why the register liveness stuff couldn't be in core NIR
<anholt>
re: trust brw_vec4_live_variables, I should probably check that I don't need to port c3c1aa5aeb921caa2ec18c2320ceb94854e0f47c
nchery has quit [Quit: Leaving]
<alyssa>
shader-db is so fast now :'o
<jekstrand>
M1?
<alyssa>
yep
<jekstrand>
I've got an 18C/36T i9 showing up tomorrow for a new desktop. That should shader-db ok. :)
danvet has quit [Ping timeout: 480 seconds]
iive has quit []
<Sachiel>
18c i9? which one?
<HdkR>
Sounds like a 10980XE
tursulin has quit [Remote host closed the connection]
<alyssa>
jekstrand: Should I care about regressing cycle count in shader-db by 0.02% (affected programs: 0.68%), in exchange for a possibly more important optimization that shader-db is too dumb to quantify
<alyssa>
now that I say that out loud it seems kinda silly
FireBurnUK has joined #dri-devel
bluebugs has quit [Ping timeout: 480 seconds]
<jekstrand>
alyssa: :)
<alyssa>
I say /possibly/
<alyssa>
it's probably noise regrdless
<alyssa>
it also saves a kb of heap allocation during the compile but who_cares
<jekstrand>
Sachiel: Yeah, i9 extreme. I think it's a rocket lake core or something.
bluebugs has joined #dri-devel
<jekstrand>
alyssa: What is said possibly important thing?
isinyaaa has quit [Quit: WeeChat 3.3]
<alyssa>
jekstrand: Shrinking vector loads of UBOs in exchange for extra moves
<alyssa>
My cycle model considers all LOADs equally expensive (4 bytes or 16 bytes) which is why the shader-db looks like a loss
<alyssa>
I don't know what actual perf is like
<alyssa>
This was really a huge tangent ...
gpuman_ has joined #dri-devel
<alyssa>
and now I've modelled a Bifrost code gen problem as an optimization problem on a certain class of edge-weighted undirected graphs
<alyssa>
so I can't tell if I'm still awake and on the clock, or just stress dreaming about my data structures class
gpuman has quit [Ping timeout: 480 seconds]
Surkow|laptop has quit [Remote host closed the connection]
gpuman has joined #dri-devel
Company has quit [Quit: Leaving]
gpuman_ has quit [Ping timeout: 480 seconds]
co1umbarius has joined #dri-devel
columbarius has quit [Ping timeout: 480 seconds]
ngcortes has quit [Remote host closed the connection]
gpuman has quit [Remote host closed the connection]
gpuman has joined #dri-devel
gpuman_ has joined #dri-devel
gpuman has quit [Ping timeout: 480 seconds]
idr has quit [Quit: Leaving]
mattrope has quit [Remote host closed the connection]
JohnnyonFlame has quit [Ping timeout: 480 seconds]
ella-0_ has joined #dri-devel
linearcannon has quit [Read error: Connection reset by peer]
Haaninjo has quit [Quit: Ex-Chat]
ella-0 has quit [Read error: Connection reset by peer]
Haaninjo has joined #dri-devel
sdutt has joined #dri-devel
sdutt has quit []
sdutt has joined #dri-devel
jljusten has quit [Quit: WeeChat 3.3]
jljusten has joined #dri-devel
jljusten has quit [Quit: WeeChat 3.3]
mszyprow has joined #dri-devel
jljusten has joined #dri-devel
agd5f has joined #dri-devel
mszyprow has quit [Ping timeout: 480 seconds]
agd5f has quit [Remote host closed the connection]
nabaiste^ has joined #dri-devel
<marex>
argh, I dont get it, what is the qtwebengine doing to etnaviv that it leaks
<marex>
there must be some multiple contexts sharing a resource or something like that , which isn't freed
tlwoerner has quit [Ping timeout: 480 seconds]
<marex>
except valgrind spews endless stream of leaks , most of which are likely bogus
agd5f has joined #dri-devel
iive has joined #dri-devel
rasterman has joined #dri-devel
JohnnyonFlame has joined #dri-devel
sigmaris_ has joined #dri-devel
rasterman has quit [Quit: Gettin' stinky!]
sigmaris has quit [Ping timeout: 480 seconds]
Duke`` has quit [Ping timeout: 480 seconds]
tlwoerner has joined #dri-devel
gouchi has quit [Remote host closed the connection]
hikiko has joined #dri-devel
<graphitemaster>
Reading the spec for ARB_fragment_shader_interlock and I'm having such major impostor syndrome because it's way too confusing.
<imirkin>
esp since i'm pretty sure no hardware implements any of that stuff
hikiko_ has quit [Ping timeout: 480 seconds]
<graphitemaster>
Seems to exist on NV.
<graphitemaster>
What I'd really like is EXT_shader_framebuffer_fetch but that does not exist on any hardware.
<imirkin>
i think most ARM things do
<graphitemaster>
So trying to use interlock to emulate that and frankly I have no clue if what I produced is valid / does not contain undefined behavior.
<graphitemaster>
Shared variables in fragment shaders would also work but I dunno why GLSL does not allow that. The "work group" should just be the 2x2 pixel quad or what ever and let me shove the data in there because all of this is happening within the same draw call anyways, but I badly need access to the alpha value in the texture being drawn too so I can discard the fragment when it saturates to opaque.