ChanServ changed the topic of #dri-devel to: <ajax> nothing involved with X should ever be unable to find a bar
<HdkR>
alyssa: Needs more MacOS in CI :)
eukara has quit []
vivijim has joined #dri-devel
pcercuei has quit [Quit: dodo]
rasterman has quit [Quit: Gettin' stinky!]
vivijim has quit [Ping timeout: 480 seconds]
<alyssa>
HdkR: Hmm
mszyprow has quit [Ping timeout: 480 seconds]
fxkamd has quit []
<alyssa>
...Is it normal for pipe_rasterizer to dirty everything? :(
<alyssa>
Kayden: Might need to lift iris's CSO diff'ing stuff.
Haaninjo has quit [Quit: Ex-Chat]
<Kayden>
it does seem to work well for us
<alyssa>
Seems like it defeats the point of Gallium splitting everything nicely :(
<imirkin>
gallium splits things sort of based on how d3d splits it, afaik
<imirkin>
at least on nvidia hw, it lines up fairly nicely
<imirkin>
i.e. there are very few cross-cso dependencies
<jenatali>
Yeah I was pretty surprised to see how well Gallium's interface lined up with D3D
<alyssa>
imirkin: right :(
<alyssa>
jenatali: not a coincidence :)
<imirkin>
jenatali: i think it was originally designed for the vmware d3d driver
<imirkin>
Tungsten Graphics was the company, acquired by vmware eventually
<imirkin>
(and gallium is an element near tungsten iirc)
angerctl has joined #dri-devel
<imirkin>
ok. i take that back. they're nowhere near each other.
<imirkin>
i specifically avoided a class because it required you to memorize the periodic table.
<imirkin>
also ... wow, you thought docs.gl was cool? check out ptable.com
<jenatali>
Lol makes sense
Namarrgon has quit [Ping timeout: 480 seconds]
Namarrgon has joined #dri-devel
angerctl has quit [Ping timeout: 480 seconds]
angerctl has joined #dri-devel
co1umbarius has joined #dri-devel
Namarrgon has quit [Ping timeout: 480 seconds]
columbarius has quit [Ping timeout: 480 seconds]
boistordu has quit [Ping timeout: 480 seconds]
mripard has quit [Remote host closed the connection]
bbrezillon has quit [Read error: Connection reset by peer]
mripard has joined #dri-devel
bbrezillon has joined #dri-devel
JohnnyonFlame has quit [Ping timeout: 480 seconds]
dllud has joined #dri-devel
dllud_ has quit [Read error: Connection reset by peer]
dllud_ has joined #dri-devel
dllud has quit [Remote host closed the connection]
dllud has joined #dri-devel
dllud_ has quit [Read error: Connection reset by peer]
ppascher has joined #dri-devel
jcline has joined #dri-devel
lemonzest has quit [Quit: WeeChat 3.3]
lemonzest has joined #dri-devel
camus has quit [Ping timeout: 480 seconds]
camus has joined #dri-devel
mclasen has quit [Ping timeout: 480 seconds]
Duke`` has joined #dri-devel
linearcannon has quit [Remote host closed the connection]
mszyprow has joined #dri-devel
mszyprow has quit [Ping timeout: 480 seconds]
mlankhorst has joined #dri-devel
alanc has quit [Remote host closed the connection]
alanc has joined #dri-devel
mlankhorst has quit []
mszyprow has joined #dri-devel
mszyprow has quit [Ping timeout: 480 seconds]
Daanct12 has joined #dri-devel
Danct12 has quit [Read error: Connection reset by peer]
Daaanct12 has joined #dri-devel
Daanct12 has quit [Ping timeout: 480 seconds]
danvet has joined #dri-devel
Daaanct12 is now known as Danct12
Danct12 has quit [Quit: Quitting]
Danct12 has joined #dri-devel
gouchi has joined #dri-devel
linearcannon has joined #dri-devel
gwyef has joined #dri-devel
gwyef has quit [Remote host closed the connection]
YuGiOhJCJ has joined #dri-devel
<graphitemaster>
I kind of wish GL just introduced duplicate functions with like a number on the end when they diverged from the base. Like glDrawBuffers4 would've been fine to indicate the 4 slightly different spec definitions of that function in different GL versions.
Company has joined #dri-devel
pcercuei has joined #dri-devel
rasterman has joined #dri-devel
Haaninjo has joined #dri-devel
jessica_24 has quit [Ping timeout: 480 seconds]
jessica_24 has joined #dri-devel
flacks has quit [Quit: Quitter]
flacks has joined #dri-devel
JohnnyonFlame has joined #dri-devel
gouchi has quit [Remote host closed the connection]
gouchi has joined #dri-devel
gouchi has quit [Remote host closed the connection]
mclasen has joined #dri-devel
kmn has quit [Ping timeout: 480 seconds]
gouchi has joined #dri-devel
anthk_ has joined #dri-devel
anthk_ has quit []
anthk_ has joined #dri-devel
JohnnyonFlame has quit [Ping timeout: 480 seconds]
lichun has joined #dri-devel
lichun has quit [Remote host closed the connection]
anthk_ has quit [Read error: No route to host]
anthk_ has joined #dri-devel
gouchi has quit [Remote host closed the connection]
lichun has joined #dri-devel
<karolherbst>
graphitemaster: then people would always use the non unmbered one
<graphitemaster>
Doesn't seem to be a problem for D3D
<alyssa>
graphitemaster: Wishing GL would be easy to use is futile
<DrNick>
GL needs more APIs where you cast integers to void*
<alyssa>
DrNick: attribute buffer offsets :d
lichun has quit []
pekkari has joined #dri-devel
JohnnyonFlame has joined #dri-devel
Lucretia has quit []
Lucretia has joined #dri-devel
gouchi has joined #dri-devel
<graphitemaster>
alyssa, Simplify it all to a single `glDo(GLenum function_name, GLvoid*, GLvoid*, ...)`, all integers params casted to void
<alyssa>
graphitemaster: why is the function name an enum?
<dcbaker>
alyssa: because we need more unrelated things in GLEnum, of course
<graphitemaster>
glDo((void*)GL_DRAW_ELEMENTS, ...) not so much XD
<alyssa>
dcbaker: That problem can be solved by getting rid of all the GLenums
<alyssa>
and just making them all void*s
<dcbaker>
Nah, k&r style, I'm not going to tell you my arguments, hopefully you guess right
<imirkin>
yeah, should just have a single function which takes a variable number of int args. if you want something wider, they just get combined. should be much simpler.
<graphitemaster>
And the GL implementation can take the list of ints, and "compile" them into an optimized set of tokens where all the validation has already been done, and you can _call_ on that list of ints to redo the same commands /s
<DrNick>
why even have functions, make it a ring buffer of 32-bit words
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
<imirkin>
DrNick: and to reduce driver overhead, just hook it up directly to the gpu
<DrNick>
oh I was thinking of the original unreleased Direct3D API
<DrNick>
but your idea is good too
<imirkin>
we should definitely be in charge of designing APIs :)
lj has quit []
anthk_ has quit []
anthk_ has joined #dri-devel
<graphitemaster>
I do like the idea of the ring buffer
<graphitemaster>
It reminds of io_uring
<graphitemaster>
io_uring for GPU commands is actually pretty kosher sounding ngl
<imirkin>
in all seriousness, io_uring could be an option to expose the command list api's for some GPU drivers
<imirkin>
i.e. for mesa to use for submission of commands
<DrNick>
can you ioctl via io_uring?
<imirkin>
i don't know all the details
<imirkin>
i just know it's a user ring of some sort :)
<imirkin>
with a protocol to send stuff to the kernel in an efficient manner
<DrNick>
nope, no ioctl
deoic has joined #dri-devel
deoic has quit [Remote host closed the connection]
<graphitemaster>
Just make an ioctl on io_uring extension, ioio_uring
<imirkin>
ioctl_uring ;)
<graphitemaster>
if you like it, then you shoulda put a io_uring on it
<alyssa>
graphitemaster: old macdonald had a gpu...
<imirkin>
and uring was his name-o?
<milek7>
>And the GL implementation can take the list of ints, and "compile" them into an optimized set of tokens
<milek7>
sounds like extended display lists
<graphitemaster>
Linus would never accept more ioctl stuff
<graphitemaster>
I remember him constantly complaining ioctl is like the most overloaded and ugliest thing
<alyssa>
he's right tbh
<DrNick>
replace them with remote procedure calls
camus has quit []
<graphitemaster>
I don't get why more stuff doesn't just expose stuff in /dev/ tbh, like you could totally just have a command interpreter in your device node module that does something when write is called, there's ioctl but structured :P
<imirkin>
an ioctl bundles things up nicely
<imirkin>
a write can be partial/etc
<graphitemaster>
Can still do that with a protocol ontop
<imirkin>
sure. you could do more work. or you could do an ioctl.
<bnieuwenhuizen>
graphitemaster: most of the ioctl stuff w ehave is already in dev
<bnieuwenhuizen>
and I'd argue that ioctl is more structured and faster than write there because you don't have to serialize the arguments
CounterPillow has quit [Quit: Bye.]
CounterPillow has joined #dri-devel
ogabbay has quit [Read error: Connection reset by peer]
ogabbay has joined #dri-devel
<marex>
is address sanitizer something which could help me track down a memleak in mesa ?
<marex>
it seems valgrind isn't particularly helpful, since it slows down the run to a crawl and the application is multi-threaded (qtwebengine)
<marex>
it seems that if I run this qtwebengine on top of mesa (21.3.1 now), the memory utilization slowly increases
CounterPillow has quit [Quit: Bye.]
CounterPillow has joined #dri-devel
<FLHerne>
imirkin: The Google Maps OOM thing is back, three times this weekend so far :-(
<imirkin>
FLHerne: yay!
<FLHerne>
I hadn't seen it for weeks, so I finally closed the bug
<FLHerne>
clearly that was tempting fate too much
<imirkin>
FLHerne: must be related to the phase of the moon
rasterman has quit [Quit: Gettin' stinky!]
pekkari has quit [Quit: Konversation terminated!]
anthk_ has quit []
<airlied>
FLHerne: I do wonder is it just google maps using a different gpu path on crocus vs i965
<airlied>
or if the same problem can occur on iris as well, since our resource mgmt paths are very iris copied
lemonzest has quit [Quit: WeeChat 3.3]
sagar_ has joined #dri-devel
sagar_ has quit [Quit: WeeChat 3.3]
sagar has joined #dri-devel
sagar has left #dri-devel [#dri-devel]
sagar_ has joined #dri-devel
<FLHerne>
I assume more people would be complaining if it happens on Iris :p
* airlied
has firefox oom the whole time :-P
<airlied>
it just seems like it might be dependent on getting some particular version of maps, if you it disapppears and reappears
ella-0_ has joined #dri-devel
pcercuei has quit [Quit: brb]
pcercuei has joined #dri-devel
ella-0 has quit [Read error: Connection reset by peer]
<jekstrand>
FLHerne: With maps, it literally could have to do with the phase of the moon if they're doing some weird light/dark thing. (-:
gouchi has quit [Remote host closed the connection]
<jekstrand>
We did have a bug at one point that only the .fi people could reproduce and it was because the benchmark used the time of day (in UTC) as a random number and they were the only ones awake at the right time.
<imirkin>
i remember back in the day, maps hung SNB pretty reliably
<imirkin>
but then there was a lot of stabilization work at some point which ironed it all out
<airlied>
and those sort of apps are fairly cache heavy
<imirkin>
"back in the day" = 2014/2015 maybe
<airlied>
so it's hard to know what's a leak, what's an overzealous caching strategy gone wrong
* jekstrand
ironed out a lot of those bugs
<imirkin>
airlied: are we reporting memory limits the same?
<jekstrand>
Around 2014/2015, incidentally
<airlied>
imirkin: can't see why not
<imirkin>
jekstrand: thanks =]
<HdkR>
I've been able to get gdrive spreadsheets to hang radeon consistently
<jekstrand>
Maybe more like 2016
<airlied>
but also I cut-n-paste most of that code from iris, so I'd expect some issues there also
<airlied>
jekstrand: did you iron them on ironlake? :-P
<jekstrand>
The day I discovered SNB was HiZ fast-clearing my batch buffer was fun.
* airlied
leaves
<imirkin>
hehe
<imirkin>
had that one saved away for a rainy day, huh?
<jekstrand>
imirkin: No, the rain comes from the sky lake