ChanServ changed the topic of #panfrost to: Panfrost - FLOSS Mali Midgard & Bifrost - Logs https://oftc.irclog.whitequark.org/panfrost - <macc24> i have been here before it was popular
megatradeusa[m] has quit [autokilled: Spambot. Mail support@oftc.net if you think this is in error. (2022-08-19 00:04:06)]
Consolatis_ has joined #panfrost
Consolatis is now known as Guest495
Consolatis_ is now known as Consolatis
Guest495 has quit [Ping timeout: 480 seconds]
indy has quit [Ping timeout: 480 seconds]
zhxt_ has quit [Remote host closed the connection]
zhxt_ has joined #panfrost
Daanct12 has joined #panfrost
zhxt_ has quit [Read error: Connection reset by peer]
zhxt_ has joined #panfrost
zhxt_ has quit [Read error: Connection reset by peer]
zhxt_ has joined #panfrost
indy has joined #panfrost
zhxt_ has quit [Remote host closed the connection]
zhxt_ has joined #panfrost
zhxt__ has joined #panfrost
zhxt_ has quit [Read error: Connection reset by peer]
davidlt has joined #panfrost
zhxt_ has joined #panfrost
zhxt__ has quit [Read error: Connection reset by peer]
indy has quit [Ping timeout: 480 seconds]
zhxt_ has quit [Read error: Connection reset by peer]
zhxt_ has joined #panfrost
zhxt__ has joined #panfrost
zhxt_ has quit [Read error: Connection reset by peer]
zhxt_ has joined #panfrost
zhxt__ has quit [Read error: Connection reset by peer]
hanetzer3 has joined #panfrost
hanetzer2 has quit [Ping timeout: 480 seconds]
davidlt has quit [Ping timeout: 480 seconds]
hanetzer4 has joined #panfrost
hanetzer3 has quit [Ping timeout: 480 seconds]
nlhowell has joined #panfrost
chewitt has joined #panfrost
davidlt has joined #panfrost
indy has joined #panfrost
chewitt has quit [Read error: Connection reset by peer]
chewitt has joined #panfrost
MajorBiscuit has joined #panfrost
zhxt__ has joined #panfrost
zhxt_ has quit [Read error: Connection reset by peer]
rasterman has joined #panfrost
zhxt_ has joined #panfrost
zhxt__ has quit [Read error: Connection reset by peer]
zhxt_ has quit [Remote host closed the connection]
zhxt_ has joined #panfrost
pjakobsson has quit [Remote host closed the connection]
zhxt_ has quit [Read error: Connection reset by peer]
zhxt_ has joined #panfrost
zhxt_ has quit [Remote host closed the connection]
zhxt_ has joined #panfrost
indy has quit [Ping timeout: 480 seconds]
indy has joined #panfrost
Major_Biscuit has joined #panfrost
Daanct12 has quit [Remote host closed the connection]
MajorBiscuit has quit [Ping timeout: 480 seconds]
<q4a> Cool. kusma already has patches for S3TC emulation: https://gitlab.freedesktop.org/kusma/mesa/-/tree/st-tc-emulation
MajorBiscuit has joined #panfrost
Major_Biscuit has quit [Ping timeout: 480 seconds]
zhxt__ has joined #panfrost
zhxt_ has quit [Read error: Connection reset by peer]
DVulgaris has joined #panfrost
indy has quit []
indy has joined #panfrost
rkanwal has joined #panfrost
davidlt has quit [Ping timeout: 480 seconds]
zhxt__ has quit [Remote host closed the connection]
zhxt__ has joined #panfrost
warpme___ has joined #panfrost
davidlt has joined #panfrost
Net147 has quit [Quit: Quit]
Net147 has joined #panfrost
Net147 has quit [Quit: Quit]
Net147 has joined #panfrost
rkanwal has quit [Ping timeout: 480 seconds]
Net147 has quit [Quit: Quit]
Net147 has joined #panfrost
rkanwal has joined #panfrost
Net147 has quit []
Net147 has joined #panfrost
alyssa has joined #panfrost
Net147 has quit []
<alyssa> > I don’t know if doing writes out from compute is going to be better or worse than the frag store unit, but could be worth a shot
<alyssa> This is a huge footgun with Mali
<alyssa> imageStore() does not support AFBC, fragment writeout does.
Net147 has joined #panfrost
<alyssa> which means (for GL at least), binding a texture as a shader image triggers a decompression
<alyssa> and then (with panfrost anyway, dunno if the DDK has a magic 8-ball heuristic for this) it's decompressed for the rest of its lifetime
<alyssa> which means slow
<alyssa> by contrast, fragment writeout (even with MRT) gets you AFBC -- provided the combination of hardware/format supports
<alyssa> For this reason alone, compute image processing tends to suck on Mali, whereas on other hw it can be a massive win (for the reasons daniels said)
<alyssa> I expect (well, hope) some future Mali will eventually fix this .. but for now the advice holds.
pjakobsson has joined #panfrost
<daniels> alyssa: the NV12 texture in is not AFBC
<alyssa> daniels: aha, I missed that detail
<alyssa> in that case compute kernels might win out
sergi8 has quit []
Net147_ has joined #panfrost
Net147_ has quit []
bbrezill1 has quit []
Net147_ has joined #panfrost
Net147 has quit [Read error: Connection reset by peer]
bbrezillon has joined #panfrost
Net147_ has quit []
Net147 has joined #panfrost
<bbrezillon> robmur01: Hi! I'm trying to resurrect robher patch adding support for aarch64 MMU format, and I'm wondering if you have any idea how to expose the AS_MEMATTR_AARCH64_SHARED attribute (needed for memory shared between the MCU running the firmware and the CPU)
<bbrezillon> BTW, I noticed that robher_'s patch (https://lore.kernel.org/all/CAAObsKADkCLUDSJ9aAxQ_WAotFYTuUuVhifKA5Y+dWjOfmmP4w@mail.gmail.com/T/#m3f8fb847b6699ade6c61a4fa4d87fba9e46b734c) wasn't adding mali specific MEMATTR definitions (ARM_MALI_LPAE_MAIR_ATTR_{IMP_DEF,WA,NC}) to replace the ARM_LPAE_MAIR_ATTR_ ones
<robmur01> bbrezillon: I'll have to refresh myself on Mali memory attributes next week when I'm hopefully less elbow-deep in CPU pagetable code...
<bbrezillon> robmur01: no hurries, it can wait a few more days ;-)
<robmur01> off the top of my head, I *thought* the only thing we were technically missing was the special internal-shareable encoding, but since we still haven't got round to trying to optimise GPU-private mappings that shouldn't matter
<bbrezillon> hm, AFAICT the AS_MEMATTR_AARCH64_xxx values don't match the ones used on aarch64
<greenjustin> daniels: I was thinking about this a little, and what if instead of using a compute shader, we keep using a fragment shader but we tell GL that all the planes are ARGB. Would that let us get 4 bytes/~2.7 pixels per invocation?
<robmur01> ah, right, because MEMATTR != MAIR, so we'd either have a special-case "Mali AArch64" format (which might seem to rather defeat the point), or panfrost does its own MAIR->MEMATTR translation
<daniels> greenjustin: I don't know the tradeoffs well enough to say, but it could be worth a shot
<bbrezillon> robmur01: yep, doing the MAIR -> MEMATTR conversion in panfrost would do the trick
<cphealy> Regarding textures and AFBC, when a non-compressed texture is loaded to GPU memory, does the texture get compressed to AFBC format? And, if so, is there a way that this texture in memory can be packed instead of taking the full storage space of a raw RGBA texture?
<cphealy> As an example, if I have a 1024x1024 RGBA texture that I want to load. Normally it would take 4MB of texture RAM. Is there a method using the compression/decompression capabilities of the GPU to have it take less than 4MB?
Net147 has quit [Quit: Quit]
Net147 has joined #panfrost
pjakobsson has quit [Remote host closed the connection]
<alyssa> use astcenc at build time...
<cphealy> You mean at the build time of the textures?
<cphealy> If so, this wouldn't work with web content as I have no control over that.
<alyssa> Right, ok.
<alyssa> For any content you do have control over, anyway
<cphealy> So there's no way for the GPU to a conversion from uncompressed to ASTC in HW, correct?
<cphealy> Does the GPU convert uncompressed textures to AFBC when the format is supported to save DRAM bandwidth?
<alyssa> yes
<alyssa> in theory there's a non-sparse version of AFBC, but Mali hasn't been able to render to it since Midgard
<cphealy> What is "non-sparse"?
<cphealy> packed?
<alyssa> yeah
<alyssa> AFBC really is about DRAM bandwidth, not memory usage
<alyssa> (ASTC/ETC are about both)
<cphealy> ack
mop___ has joined #panfrost
<cphealy> the tradeoff with ASTC/ETC is that it's lossy (to varying degrees)
<alyssa> Mmhmm
<cphealy> Well, that and the GPU cannot do on-the-fly conversion, right?
<alyssa> Yeah
<alyssa> Encoding ASTC/ETC is expensive
<cphealy> regarding non-sparse version of AFBC and Mali hasn't been able to render to it since Midgard, is this a HW thing or a SW thing (or both)?
<cphealy> Like an intentional change with Bifrost or a breakage?
<mop___> hi. I have a SBC with a mali G31 and a screen with a resolution of 1920x1200. unfortunately parts of the display get cut off and when I enforce a resolution of 1920x1080 I get ugly artifacts (linux fbdev is fine). I read somewhere that non standard resolution are currently somewhat broken. does it make sense to build my own kernel with the latest changes (i.e. will that make non standard resolutions work) or is
<mop___> this still known to be broken
<alyssa> mali is render-only, this would be related to your display hardware instead which will depend on your SoC, not the Mali
<alyssa> ask in #linux-rockchip or #linux-sunxi or #linux-amlogic or wherever as appropriate
<mop___> alyssa, thank you! sorry for wrong channel
<alyssa> np
<greenjustin> alyssa: Wait does that imply AFBC textures take the same amount of space they normally would, they're just encoded in a way that reduces entropy? If so...how does that help with DRAM bandwidth?
<alyssa> greenjustin: They take more space, actually
<alyssa> but they're sparse
<alyssa> with a dense header
<alyssa> so most of the body isn't actually accessed
<alyssa> (that's still hard on the caches but I digress)
MajorBiscuit has quit [Ping timeout: 480 seconds]
<greenjustin> I see, so the sampler or something just ignores all the zero padding?
mop___ has quit [Remote host closed the connection]
<cphealy> alyssa: with Midgard are there examples of non-spare use of AFBC? If so, is it with AFBC textures?
benpouls_ has joined #panfrost
benpoul__ has joined #panfrost
benpoulson has quit [Ping timeout: 480 seconds]
benpouls_ has quit [Ping timeout: 480 seconds]
chewitt has quit [Quit: Zzz..]
davidlt has quit [Ping timeout: 480 seconds]
Dr_Who has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
davidlt has joined #panfrost
benpoul__ has quit [Ping timeout: 480 seconds]
benpoulson has joined #panfrost
benpoulson has quit [Ping timeout: 480 seconds]
jambalaya has quit [Remote host closed the connection]
jambalaya has joined #panfrost
benpoulson has joined #panfrost
benpoulson has quit [Ping timeout: 480 seconds]
rkanwal has quit [Ping timeout: 480 seconds]
zhxt__ has quit [Remote host closed the connection]
davidlt has quit [Ping timeout: 480 seconds]
zhxt has joined #panfrost
indy has quit []
indy_ has joined #panfrost
benpoulson has joined #panfrost
Daanct12 has joined #panfrost
benpoulson has quit [Remote host closed the connection]
Dr_Who has joined #panfrost
Danct12 has quit [Ping timeout: 480 seconds]
benpoulson has joined #panfrost
Dr_Who has quit []
Dr_Who has joined #panfrost
alyssa has quit [Quit: leaving]
Dr_Who has quit []
benpoulson has quit [Remote host closed the connection]
benpoulson has joined #panfrost
lyudess has joined #panfrost
Lyude has quit [Read error: Connection reset by peer]
lyudess has quit [Read error: Connection reset by peer]
Lyude has joined #panfrost
benpoulson has quit [Remote host closed the connection]
benpoulson has joined #panfrost
benpoulson has quit [Remote host closed the connection]
benpoulson has joined #panfrost
MajorBiscuit has joined #panfrost
warpme___ has quit []
Lyude has quit [Ping timeout: 480 seconds]
benpoulson has quit [Remote host closed the connection]
rasterman has quit [Quit: Gettin' stinky!]