ChanServ changed the topic of #dri-devel to: <ajax> nothing involved with X should ever be unable to find a bar
<alyssa> gfxstrand: "multiple, say, occlusion queries going at once"
<alyssa> wait what?!
<alyssa> that is. not how the hw i'm familiar with works, like, at all?!
<gfxstrand> On IMR hardware BeginQuery writes a value, EndQuery writes another value and CopyQueryPoolResults subtracts
<jenatali> Hm? There's nothing wrong with that from an API standpoint
<jenatali> Right
<alyssa> gfxstrand: ok, no tiler i'm familiar with
<alyssa> vk lets the same draw count towards multiple active occlusion queries?
<gfxstrand> I thought so
<alyssa> O_o
<gfxstrand> But I could be wrong. I'd have to go deep diving
<gfxstrand> And I don't have the spoons for that sort of deep dive tongiht
<jenatali> AFAIK yes
<alyssa> ^ a nice summary of the VK problem
<alyssa> ("Absolutely critical details hidden in some random VU")
<gfxstrand> And the problem with GL is that the absolutely critical details aren't written down.
<alyssa> :clown:
<alyssa> oh right here
<alyssa> VUID-vkCmdBeginQuery-queryPool-01922
<alyssa> gfxstrand: jenatali: not allowed in vk :-)
<jenatali> :O
* alyssa vaguely remembers doing that exact deep dive years ago for panvk
mclasen has joined #dri-devel
<gfxstrand> Well, it's allowed in all my drivers. :P
<alyssa> gfxstrand: >:)
<HdkR> Sounds like something an extension could solve. So all games can start using the feature
<alyssa> noooooooo
<alyssa> implementing it on a tiler efficiently sounds.. painful
<alyssa> doable though
<HdkR> I /definitely/ described to Rob that ES 3.0's occlusion queries also allowed multiple of the same active and was wrong :D
<alyssa> granted everything painful seems doable after compute-based geom+tess+xfb ...
pcercuei has quit [Quit: dodo]
<alyssa> HdkR: the spicy case is, can you have a boolean query active at the same time as a precise one?
<alyssa> for VK, clearly no
<alyssa> for GL, I don't know and my drivers don't allow it and they passed CTS.. :p
<HdkR> alyssa: Luckily the only driver that supports precise occlusion queries active in ES is the NVIDIA blob. So it can be safely ignored there
glennk has quit [Ping timeout: 480 seconds]
<HdkR> GL land...madness
<alyssa> heh
<HdkR> Although, I'd still be fine with Mesa gaining support for precise occlusion queries in ES. For those poor people that haven't adopted VK yet
mclasen has quit [Ping timeout: 480 seconds]
mclasen has joined #dri-devel
frankbinns has quit [Ping timeout: 480 seconds]
frankbinns has joined #dri-devel
<HdkR> Actually no, I'll change my opinion. If you're stuck on a platform with ES and not GL, just use Zink instead :D
ity has quit []
anujp has quit [Ping timeout: 480 seconds]
bnieuwenhuizen has quit [Quit: Bye]
bnieuwenhuizen has joined #dri-devel
mbrost has joined #dri-devel
pixelcluster has quit [Ping timeout: 480 seconds]
flynnjiang has joined #dri-devel
pixelcluster has joined #dri-devel
co1umbarius has joined #dri-devel
columbarius has quit [Ping timeout: 480 seconds]
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #dri-devel
alanc has quit [Remote host closed the connection]
alanc has joined #dri-devel
mbrost has quit [Remote host closed the connection]
mbrost has joined #dri-devel
Leopold_ has quit []
yyds has joined #dri-devel
ngcortes_ has joined #dri-devel
kzd has joined #dri-devel
ngcortes has quit [Ping timeout: 480 seconds]
columbarius has joined #dri-devel
co1umbarius has quit [Ping timeout: 480 seconds]
mbrost has quit [Ping timeout: 480 seconds]
Leopold_ has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
columbarius has quit [Ping timeout: 480 seconds]
Leopold_ has joined #dri-devel
columbarius has joined #dri-devel
oneforall2 has quit [Remote host closed the connection]
oneforall2 has joined #dri-devel
a-865 has quit [Quit: ChatZilla 0.18.1 [SeaMonkey 2.53.18.1/20240109201101]]
karolherbst_ has joined #dri-devel
karolherbst has quit [Ping timeout: 480 seconds]
dliviu has joined #dri-devel
nashpa has quit [Ping timeout: 480 seconds]
heat__ has quit [Remote host closed the connection]
heat__ has joined #dri-devel
a-865 has joined #dri-devel
mbrost has joined #dri-devel
kts has joined #dri-devel
aravind has joined #dri-devel
Company has joined #dri-devel
bmodem has joined #dri-devel
mclasen has quit [Ping timeout: 480 seconds]
heat__ has quit [Remote host closed the connection]
heat__ has joined #dri-devel
mbrost has quit [Ping timeout: 480 seconds]
anujp has joined #dri-devel
mbrost has joined #dri-devel
yyds has quit [Remote host closed the connection]
yyds has joined #dri-devel
mbrost has quit [Ping timeout: 480 seconds]
cheako has quit [Quit: Connection closed for inactivity]
kzd has quit [Ping timeout: 480 seconds]
glennk has joined #dri-devel
heat__ has quit [Ping timeout: 480 seconds]
hansg has joined #dri-devel
oneforall2 has quit [Remote host closed the connection]
oneforall2 has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
asriel has quit [Quit: Don't drink the water. They put something in it to make you forget.]
asriel has joined #dri-devel
Leopold has joined #dri-devel
lemonzest has quit []
Leopold has quit [Remote host closed the connection]
Leopold has joined #dri-devel
camus1 has joined #dri-devel
camus has quit [Read error: Connection reset by peer]
lemonzest has joined #dri-devel
<airlied> zmike: I don't think out quantize to f16 handles outputing infinities properly, I seem to get nans
<airlied> alyssa: oh you wrote it maybe you know
<airlied> I wonder where the dxil lowering is
itoral has joined #dri-devel
<airlied> I think we need to initial compares to pass new conformance
kts has quit [Ping timeout: 480 seconds]
<airlied> actually I'm lost on what is going wrong, will keep digging :-P
Leopold has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
sima has joined #dri-devel
Haaninjo has joined #dri-devel
<airlied> ah need the magic split fp64 flag
macslayer has quit [Remote host closed the connection]
<airlied> zmike, alyssa : https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27228 should make sense
<airlied> zmike: any ideas what is up with dEQP-VK.api.version_check.unavailable_entry_points ?
fab has quit [Quit: fab]
<airlied> hmm I wonder if this could be a layer issue
ngcortes_ has quit [Ping timeout: 480 seconds]
tzimmermann has joined #dri-devel
sghuge has quit [Remote host closed the connection]
sghuge has joined #dri-devel
ngcortes has joined #dri-devel
glennk has quit [Ping timeout: 480 seconds]
fab has joined #dri-devel
frankbinns1 has joined #dri-devel
ngcortes has quit [Read error: Connection reset by peer]
frankbinns2 has joined #dri-devel
<tzimmermann> javierm, if you have a bit, could you please review https://lore.kernel.org/dri-devel/20240117125527.23324-1-tzimmermann@suse.de/ ?
frankbinns has quit [Ping timeout: 480 seconds]
<MrCooper> Company: you can use e.g. GBM for allocating the buffers
<javierm> tzimmermann: yes, I have in my TODO but was just busy with some internal tasks. I'll do it this week for sure
<tzimmermann> thank you
heat__ has joined #dri-devel
frankbinns1 has quit [Ping timeout: 480 seconds]
tjaalton_ is now known as tjaalton
yyds has quit []
yyds has joined #dri-devel
vliaskov has joined #dri-devel
fab has quit [Read error: No route to host]
YuGiOhJCJ has joined #dri-devel
fab has joined #dri-devel
fab has quit [Remote host closed the connection]
fab has joined #dri-devel
fab has quit [Read error: Connection reset by peer]
fab has joined #dri-devel
macromorgan has quit [Read error: Connection reset by peer]
fab has quit [Read error: Connection reset by peer]
tyalie has quit []
macromorgan has joined #dri-devel
Leopold_ has joined #dri-devel
tursulin has joined #dri-devel
lynxeye has joined #dri-devel
tyalie has joined #dri-devel
Ermine_ has quit [Remote host closed the connection]
Ermine has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold has joined #dri-devel
<Company> MrCooper: yeah, I know I can use external APIs, but I was hoping for way to convince GL to do that
<Company> MrCooper: because unlike me, GL gets the modifiers right
mvlad has joined #dri-devel
gio has quit [Remote host closed the connection]
pcercuei has joined #dri-devel
Calandracas has quit [Ping timeout: 480 seconds]
fab_ has joined #dri-devel
gio has joined #dri-devel
fab_ is now known as Guest154
simondnnsn has quit [Read error: No route to host]
simondnnsn has joined #dri-devel
simondnnsn has quit [Read error: Connection reset by peer]
simondnnsn has joined #dri-devel
minecrell3 has quit []
minecrell has joined #dri-devel
glennk has joined #dri-devel
Leopold has quit [Remote host closed the connection]
djbw has quit [Read error: Connection reset by peer]
tursulin has quit [Quit: Konversation terminated!]
tursulin has joined #dri-devel
<MrCooper> Company: "right" WRT what? How could GL know which modifiers are (not) suitable for your use case?
tursulin has quit []
<Company> my use case is mainly rendering with GL
tursulin has joined #dri-devel
<Company> so my idea was that GL knows how to do that
Leopold_ has joined #dri-devel
<emersion> but if you're using DMA-BUFs, then you're sharing that buffer with _something else_ right?
<emersion> and that _something else_ may support different modifiers
<Company> sure, but that'd be step 2
<Company> because right now that someone else is Vulkan or a compositor, and they usually agree on things
<MrCooper> GL still can't magically know what they agree on though
<Company> and pretty much any modifier is gonna look better than glReadPixels()
<Company> sure, and I'm prefectly fine with an API where I tell GL my preferred modifiers
<Company> I guess GL can give me its modifiers
kxkamil has quit []
Leopold_ has quit [Remote host closed the connection]
<Company> or are they only for importing?
<MrCooper> if you know the modifiers, you can allocate with GBM?
Leopold_ has joined #dri-devel
<MrCooper> or you can create a corresponding GL extension, if you prefer
<Company> I'm not sure I know the modifiers
<emersion> Company: there have been situations where client GL doesn't agree with server GL (e.g. flatpak), and GL doesn't agree with Vulkan (missing format/modifier on one side)
<Company> I can eglQueryDmaBufModifiersEXT() but I don't get the preferred modifier for a framebuffer target that way
<emersion> it's not theoretical, i've seen this multiple times in practice
<emersion> also the compositor might do arbitrary filtering
<emersion> for instance gamescope does
<Company> in Vulkan I can specify the format and Vulkan picks its favorite modifier
<Company> actually, I give it a list of modifiers to choose from I think
<Company> and then it reliably picks the weirdest one
<emersion> one really must follow the format modifier negociation dance described in
<emersion> or else there will be breakage
<emersion> yeah, passing a list of formats/modifiers to the allocator is the right way to do it
<Company> so I'll have to add some internal allocate_dmabuf() and then export that into GL
<Company> and before that I need to figure out somehow which formats/modifiers GL supports
<Company> for rendering to
mvlad is now known as Guest157
Guest157 has quit [Read error: Connection reset by peer]
mvlad has joined #dri-devel
<Company> I guess it's all the formats that eglQueryDmaBufModifiersEXT() doesn't mark as external_only
<emersion> and intersect that with the compositor's list
<emersion> yes
<Company> ... or with Vulkan, depending on where I want to use it
<any1> It's funny that this text says that "it must query the media API it intends to use" but the most common media API doesn't support this kind of querying. :)
flynnjiang has quit [Quit: flynnjiang]
<Company> any1: that's really proof that the docs are correct
<Company> because if anything with dmabufs looks straightforward, you would need to be very suspicious
<emersion> any1: 😥
<Company> so, step 1: create an internal gtk_allocate_dmabuf (width, height, list_of_allowed_formats_and_modifiers);
<any1> With VA-API, you need to either throw a buffer at it and pray that it accepts it or allocate the buffers via VA-API.
<emersion> Company: also note that you loose dmabuf feedback handling when you do things yourself
<Company> step 2: figure out how to get the right list
<emersion> any1: oh i was thinking of a different API
<emersion> for VA-API it has some DMA-BUF negociation in place now
<emersion> not quite complete
<any1> emersion: Ahh, so there is hope for it
<any1> what API were you thinking of?
<emersion> my answer now is: just use vulkan video and burry VA-API
<Company> emersion: feedback handling? You mean the zwp_linux_dmabuf protocol feedback?
<emersion> i think V4L2 still doesn't have modifiers
karolherbst_ is now known as karolherbst
<emersion> Company: yeah
karolherbst has quit [Quit: Konversation terminated!]
karolherbst has joined #dri-devel
<Company> emersion: I'm not really concerned with that yet, because for now I just want to pass GL rendered buffers to Vulkan
Leopold_ has quit [Remote host closed the connection]
<Company> emersion: but we'll probably grow our own feedback handling anyway, so we can make GStreamer etc hook into that
Leopold_ has joined #dri-devel
kxkamil has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
<Company> once everything works well, we'll ask the compositor for the preferred formats so that gstreamer can make pipewire tell the compositor those formats
<Company> and then screencasting will be real smooth
<karolherbst> ohh right, I was wondering why screencasting is so slow actually.. so that's basically it? pointless format converstions/copies going on?
rasterman has joined #dri-devel
frankbinns2 is now known as frankbinns
halves has quit [Quit: o/]
Guest37 is now known as shadeslayer
halves has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
<kode54> Yes, just use Vulkan video
<kode54> I think that finally supports h264 on AMD now?
<kode54> Not sure it supports anything else
<kode54> Or encoding
<kode54> And Intel is a special hell because they want to ship media encoding outside of Mesa
<airlied> anv has h264 decode
<airlied> and some h265 as well
kts has joined #dri-devel
kts has quit []
kts has joined #dri-devel
<kode54> Too bad nobody wants to make encode work fully on that extreme minority outlier, the Arc Alchemist
Leopold_ has quit [Remote host closed the connection]
<kode54> Alas, every Alchemist owner should just upgrade to Battlemage the instant it launches
<kode54> I’m sure everything will be better this time around
Leopold_ has joined #dri-devel
<Company> if hwdecode was just about the hardware
<Company> and drivers
<Company> but the multimedia framework APIs all have their issues, too
<airlied> kode54: encoding is written
<airlied> i even had some of av1 decode working last year
<kode54> I meant the media firmware loading
<kode54> Apparently dg2 needs it for things like bitrate control
<kode54> And dg2 is somehow the only generation of hardware to use a particular form of loading method
<kode54> Unless someone wants to add it to xe, or someone wants to add vm bind to i915
<kode54> But I don’t think even vm bind fixes all of anv’s performance problems
<kode54> Can’t tell how far it’s come now, I sold out
<kode54> Sold my A770 to some eager person for full MSRP and bought a 6700 XT
Calandracas has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
yyds has quit [Remote host closed the connection]
azerov has quit []
Leopold has joined #dri-devel
mclasen has joined #dri-devel
<CounterPillow> Thank god that after vdpau, vaapi, qsv, nvdec, mmal (lol), rkmpp (2xlol), v4l2-m2m and v4l2-requests we now finally got it right this time for sure with vulkan video
<pq> forgot openmax I think
<kode54> Handbrake still only supporting proprietary video codec libraries
<kode54> even though their entire codebase is just a fork of ffmpeg
<CounterPillow> Question: does a device that only implements Vulkan video, e.g. a hwdec IP on an embedded SoC that is completely separate from the 3D GPU and display engine aside from sharing the same memory, need to implement the entirety of Vulkan in some cursed way as well, or can it just chill as a stub device that *only* implements base Vulkan boilerplate stuff and vulkan video?
<daniels> CounterPillow: the latter
<CounterPillow> Okay, that's good news
Leopold has quit [Remote host closed the connection]
Leopold has joined #dri-devel
pjakobsson has quit [Remote host closed the connection]
<Company> which defines what a command queue can do
Leopold has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
gio_ has joined #dri-devel
gio has quit [Ping timeout: 480 seconds]
frieder has joined #dri-devel
bmodem has quit [Ping timeout: 480 seconds]
Aura has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
aravind has quit [Ping timeout: 480 seconds]
Leopold_ has quit [Remote host closed the connection]
Leopold has joined #dri-devel
Leopold has quit [Remote host closed the connection]
kts has quit [Ping timeout: 480 seconds]
itoral has quit [Quit: Leaving]
cheako has joined #dri-devel
camus1 has quit [Remote host closed the connection]
camus has joined #dri-devel
Guest154 has quit [Read error: No route to host]
<danylo> Hi, How could I get access to traces at https://gitlab.freedesktop.org/gfx-ci/tracie/traces-db-private/ ? Also, are these trace the same ones used in https://ci-dashboard.steamos.cloud/ ? I'd like to have more traces for us to test the Turnip on.
<zmike> DavidHeidelberg: ^
<daniels> danylo: I've added you now, and also no
<danylo> daniels Thanks
<daniels> np
konstantin_ is now known as konstantin
bmodem has joined #dri-devel
kts has joined #dri-devel
jsa has joined #dri-devel
kzd has joined #dri-devel
kzd has quit []
krei-se has joined #dri-devel
kts has quit [Ping timeout: 480 seconds]
krei-se has quit [Quit: ZNC 1.8.2 - https://znc.in]
krei-se has joined #dri-devel
<pcercuei> Is the coding style now to use __free(), even if that means declaring the variables mid-block?
Leopold_ has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
kts has joined #dri-devel
neniagh has joined #dri-devel
YuGiOhJCJ has quit [Quit: YuGiOhJCJ]
macslayer has joined #dri-devel
Aura has quit []
illwieckz has quit [Quit: I'll be back!]
kts has quit [Quit: Konversation terminated!]
illwieckz has joined #dri-devel
rgallaispou has left #dri-devel [#dri-devel]
tzimmermann has quit [Quit: Leaving]
bmodem has quit [Ping timeout: 480 seconds]
heat__ has quit []
heat has joined #dri-devel
mbrost has joined #dri-devel
heat has quit [Remote host closed the connection]
heat has joined #dri-devel
frieder has quit [Remote host closed the connection]
lumag has quit [Remote host closed the connection]
lumag has joined #dri-devel
mclasen has quit []
mclasen has joined #dri-devel
Duke`` has joined #dri-devel
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #dri-devel
simondnnsn has quit [Read error: Connection reset by peer]
rcf has quit [Quit: WeeChat 3.8]
hansg has quit [Quit: Leaving]
Leopold_ has joined #dri-devel
simondnnsn has joined #dri-devel
lynxeye has quit [Quit: Leaving.]
jeeeun841351908 has quit []
jeeeun841351908 has joined #dri-devel
<demarchi> daniels: any idea if it's indeed fdo? I wonder if it's because of the mailman misfeature of tweaking the Cc headers
<demarchi> if you cc 2 mailing lists, lore.kernel.org will end with 2 different emails (as far as Cc header is concerned), with the same msgid
djbw has joined #dri-devel
tursulin has quit [Ping timeout: 480 seconds]
vliaskov has quit [Read error: Connection reset by peer]
vliaskov_ has joined #dri-devel
<robclark> alyssa: re: same draw, multiple queries, freedreno just does same thing an IMR would do, from cmdstream capture counter value at start and end of query, and then math (the only one we punt on is time-elapsed queries that are read-back from shader ... since that would require doing division and division is hard
<alyssa> robclark: interesting, and that.. works even with gmem?
<alyssa> (It doesn't work on either Mali or Imaginapple)
<robclark> with the usual caveats about ordering of rendering, yes
<robclark> https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/gallium/drivers/freedreno/a6xx/fd6_query.cc?ref_type=heads#L125 we just do `result += stop - start` where the query is stopped for each tile
<robclark> by the end of all tiles you have the final result
<robclark> qbo stuff that reads back from shader ends up flushing a tile pass, IIRC
ngcortes has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
jsa has quit []
gouchi has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]
Leopold_ has joined #dri-devel
<alyssa> huh, neat
<alyssa> can adreno process multiple tiles in parallel?
Leopold_ has quit [Remote host closed the connection]
<austriancoder> can anyone name an app/benchmark that makes extensive use of scissored clears?
rcf has joined #dri-devel
greenjustin_ is now known as greenjustin
Calandracas has quit []
mbrost has quit [Remote host closed the connection]
Calandracas has joined #dri-devel
ngcortes has quit [Ping timeout: 480 seconds]
mbrost has joined #dri-devel
<robclark> alyssa: so, ignoring pipelining, it is one tile at a time.. but the tile dimensions are somewhat arbitrary and only limited by gmem size
Leopold_ has joined #dri-devel
<robclark> (where gmem size can be something like maybe 256KB on smallest gpu, and up to 4MB on a690)
sima has quit [Ping timeout: 480 seconds]
mchehab_ has joined #dri-devel
Haaninjo has quit [Quit: Ex-Chat]
Leopold_ has quit [Remote host closed the connection]
mchehab has quit [Ping timeout: 480 seconds]
<alyssa> fascinating
<alyssa> this is all. very different from what I'm used to
Leopold_ has joined #dri-devel
DodoGTA has quit [Quit: DodoGTA]
<robclark> it's as if, ATI took an IMR and added tiling to it :-P
DodoGTA has joined #dri-devel
<alyssa> >:P
ngcortes has joined #dri-devel
Duke`` has quit [Ping timeout: 480 seconds]
Leopold_ has quit [Remote host closed the connection]
rcf has quit [Ping timeout: 480 seconds]
Leopold_ has joined #dri-devel
mbrost has quit [Remote host closed the connection]
mbrost has joined #dri-devel
glennk has quit [Ping timeout: 480 seconds]
Leopold_ has quit [Remote host closed the connection]
rasterman has quit [Quit: Gettin' stinky!]
Leopold_ has joined #dri-devel
mbrost has quit [Ping timeout: 480 seconds]
<mareko> robclark: I'm confused... is adreno just an IMR where you do tiling in the driver, or something else?
<mareko> binning I mean
<mareko> there is also an AMD mobile GPU, FYI
<robclark> mareko: you can kinda think of it like that
Leopold_ has quit [Remote host closed the connection]
gouchi has quit [Remote host closed the connection]
iive has joined #dri-devel
ngcortes has quit [Ping timeout: 480 seconds]
ngcortes has joined #dri-devel
mbrost has joined #dri-devel
mbrost_ has joined #dri-devel
Company has quit [Quit: Leaving]
mvlad has quit [Remote host closed the connection]
mbrost_ has quit [Read error: Connection reset by peer]
mbrost_ has joined #dri-devel
mbrost has quit [Read error: Connection reset by peer]
enunes has quit [Quit: ZNC - https://znc.in]
enunes has joined #dri-devel
Leopold_ has joined #dri-devel
Leopold_ has quit [Remote host closed the connection]