alyssa changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - Logs https://freenode.irclog.whitequark.org/panfrost - <daniels> avoiding X is a huge feature
tlwoerner has joined #panfrost
vstehle has quit [Ping timeout: 265 seconds]
stikonas has quit [Ping timeout: 272 seconds]
alyssa has joined #panfrost
kaspter has joined #panfrost
camus has joined #panfrost
kaspter has quit [Ping timeout: 264 seconds]
camus is now known as kaspter
atler has quit [Killed (barjavel.freenode.net (Nickname regained by services))]
atler has joined #panfrost
karolherbst has quit [Read error: Connection reset by peer]
karolherbst has joined #panfrost
_whitelogger has joined #panfrost
tomboy64 has quit [Ping timeout: 260 seconds]
tomboy64 has joined #panfrost
tomboy64 has quit [Ping timeout: 246 seconds]
tomboy64 has joined #panfrost
tchebb_ has joined #panfrost
tchebb has quit [Ping timeout: 260 seconds]
tchebb_ is now known as tchebb
vstehle has joined #panfrost
kaspter has quit [Ping timeout: 264 seconds]
kaspter has joined #panfrost
guillaume_g has joined #panfrost
camus has joined #panfrost
kaspter has quit [Ping timeout: 256 seconds]
camus is now known as kaspter
Danct12 has joined #panfrost
warpme_ has joined #panfrost
raster has joined #panfrost
wiizzard has quit [Quit: Idle for 30+ days]
zkrx has quit [Ping timeout: 245 seconds]
zkrx has joined #panfrost
cphealy has quit [Ping timeout: 240 seconds]
robmur01 has joined #panfrost
stikonas has joined #panfrost
jschwart has quit [Ping timeout: 245 seconds]
jschwart has joined #panfrost
stikonas_ has joined #panfrost
stikonas has quit [Ping timeout: 272 seconds]
catfella has quit [Remote host closed the connection]
robmur01 has quit [Ping timeout: 265 seconds]
robmur01 has joined #panfrost
robmur01 has quit [Remote host closed the connection]
robmur01 has joined #panfrost
camus has joined #panfrost
kaspter has quit [Ping timeout: 264 seconds]
camus is now known as kaspter
raster has quit [Quit: Gettin' stinky!]
raster has joined #panfrost
raster has quit [Quit: Gettin' stinky!]
amonakov has quit [Ping timeout: 246 seconds]
amonakov has joined #panfrost
cphealy_ has joined #panfrost
enty is now known as ente
<macc24> alyssa: is it a good idea to turn off transacation elimination in something like mpv?
<shadeslayer> alyssa: not really, I want to pick it up again time permitting
raster has joined #panfrost
<shadeslayer> cphealy_: I think if we go with the glLabel approach (where we attach labels to BO's through the glLabel extension, and store it in the bo's through the DRM framework), we could probably make that possible
stikonas_ is now known as stikonas
<cphealy_> shadeslayer: can you point me to this glLabel extension you are referring to? I've not yet found it.
<alyssa> macc24: Probably.. not?
<alyssa> If you're watching any sort of 2D animation, TE will be a huge win because the backgrounds are static.
<alyssa> For live action, meh. Will probably still break even.
<alyssa> shadeslayer: Ack.
<shadeslayer> cphealy_: https://docs.gl/gl4/glObjectLabel < ah it's glObjectLabel, it's been a while since I've looked at it
<macc24> alyssa: "If you're watching any sort of 2D animation" was this your first thought xD
<alyssa> macc24: Well, yeah.
<macc24> hmmmmmmmmmmmmmmmmmmmmm
<cphealy_> shadeslayer: with this approach using glLabel, would apps that use the GL API need to do anything special to work with this or would it all be internal to Mesa?
<alyssa> shadeslayer: Also in the mean time it may make sense to merge the panfrost parts of labeling without going off to the kernel
<alyssa> just for driver debug purposes (so we can diagnose page faults etc)
<shadeslayer> cphealy_: because glObjectLabel can be used by userspace too, we can cut it a few different ways imo, applications label their objects and we use those labels, since this involves extra work on the application side of things, we can add our own labels when mesa is built in debug mode to enable reporting of memory usage for textures using the mesa
<shadeslayer> gl* entry points
<shadeslayer> alyssa: -ETIME :(
<shadeslayer> alyssa: how would that work though?
<shadeslayer> alyssa: simply store them in userpsace?
<alyssa> shadeslayer: yeah, keeping everything in-process
<shadeslayer> alyssa: hm, note that we'd lose labels on BO import/export
<alyssa> so all the internal allocations get labeled appropriately, and external stuff just gets labeled "Im/exported buffer (scanout/shared/whatever)"
<alyssa> that's fine
<shadeslayer> right
<alyssa> (I mean, preserving across processes is better of course, but no need to hold up the rest in the mean time.)
<alyssa> (It's also cheaper, for something we will never import/export, to label only internally)
<shadeslayer> someone find me more than 24 hours in a day please :P
<shadeslayer> alyssa: but sure, I'll see if I can pick it up again this month :)
karolherbst has quit [Ping timeout: 264 seconds]
rcf has quit [Quit: WeeChat 2.9]
zkrx has quit [Ping timeout: 245 seconds]
<amonakov> do many people understand bifrost/ISA.xml? why do the first few branch instrucitons have the same 'mask' and 'exact' attributes? I think it confuses the disassembler?
<alyssa> amonakov: Many? no, but I pretend to
<alyssa> and yeah, BRANCH encoding is horribly complex and evidently broken right now
<alyssa> they have the same mask/exact fields because... that's literally how the instructions are specced >_<
<alyssa> reading between the lines a bit, maybe the real answer is that all of those are really one +BRANCH instruction with even more horribly complex encoding
karolherbst has joined #panfrost
zkrx has joined #panfrost
<cphealy_> shadeslayer: got it, thank you.
<amonakov> alyssa: ... so panfrost currently never emits branch.f32 (nor any other kind apart from branch.i32)?
<robmur01> alyssa: right, presumably there only needs to be one "branch" opcode and the actual data type is encoded in all the other crap
<amonakov> how authoritative is ISA.xml? apart from this goof, I noticed other issues, like missing important instructions (multiply-high)
<robmur01> ISTR someone once had an A64 assembler syntax that went "add.{w|x} r0..." vs. "add {w|x}0...", seems the same kinda deal
karolherbst has quit [Read error: Connection reset by peer]
karolherbst has joined #panfrost
kaspter has quit [Ping timeout: 264 seconds]
kaspter has joined #panfrost
<alyssa> amonakov: panfrost does not emit any BRANCH.* yet, instead always using BRANCHZ.i32 (compare to zero and branch), with an explicit fcmp
<alyssa> ISA.xml isn't authoritative but aside from this goof should be complete for v7 (any G31/G51/G52/G76)
<alyssa> multiply-high is a `IMULD/IMOV_FMA` pair
<alyssa> (Doesn't exist on v6 = G71/G72, which have some weird 64-bit stuff we don't handle and that doesn't exist on v6)
<alyssa> s/v6)/v7)/
<alyssa> set malisc to output for G76 and it'll go away
<amonakov> alyssa: I have malisc 6.4 which doesn't support G76 (only up to G72), and malioc which does, but doesn't save compiled binary to a file
* alyssa grumbles
rcf has joined #panfrost
catfella has joined #panfrost
<amonakov> (it supports G51, but it doesn't help, the shader with multiply-high still fails to disasm properly)
<alyssa> maybe G51 is v6? 🤷
<alyssa> 64-bit clause support is highly nontrivial..
guillaume_g has quit [Quit: Konversation terminated!]
AreaScout_ has quit [Quit: Quitting...]
AreaScout_ has joined #panfrost
mixfix41 has quit [Remote host closed the connection]
BenG83 has joined #panfrost
camus has joined #panfrost
kaspter has quit [Ping timeout: 245 seconds]
camus is now known as kaspter
BenG83 has quit [Quit: Leaving]
raster has quit [Quit: Gettin' stinky!]
stikonas has quit [Remote host closed the connection]
stikonas has joined #panfrost
kaspter has quit [Ping timeout: 246 seconds]
camus has joined #panfrost
BenG83 has joined #panfrost
camus is now known as kaspter
BenG83 has quit [Quit: Leaving]
stikonas has quit [Remote host closed the connection]
stikonas has joined #panfrost
camus has joined #panfrost
kaspter has quit [Ping timeout: 245 seconds]
camus is now known as kaspter