<icecream95>
q4a: The Panfrost driver I linked to is based on the freedreno vulkan driver, but they should all be similar enough that you can use any of them as a reference
<q4a>
Thanks a lot
<icecream95>
q4a: Note that the branch is a number of months old, and Panfrost has significantly changed since then. I'm currently attempting to rebase it on master
<pmjdebruijn>
https://pastebin.com/mD1dxUeB does that ring any bells, I got this on 5.10.5 combined with mesa 20.3.2, running crispy-doom through sdl2/opengles2
<macc24>
pmjdebruijn: is that bifrost?
<pmjdebruijn>
G52
<pmjdebruijn>
(no X11 involved)
<macc24>
this may be fixed in mesa-git
<pmjdebruijn>
is there any patches I should cherrypick?
<macc24>
i don't know
<q4a>
macc24 - no. And I'm not sure, where is simple triangle) This one is 1200+ lines:
<pmjdebruijn>
oh git seems to provide a huge performance boost already
<pmjdebruijn>
and dosbox starts at al
<pmjdebruijn>
I still see some FAULTs on dmesg, but nothing that stops anything from practically working
ids1024 has joined #panfrost
tlwoerner has quit [Remote host closed the connection]
tlwoerner has joined #panfrost
raster has quit [Quit: Gettin' stinky!]
raster has joined #panfrost
archetech has joined #panfrost
guillaume_g has quit [Quit: Konversation terminated!]
<thecycoone1>
pmjdebruijn: I had good luck with dosbox-staging (search on github, it's a fork but it has wayland and better arm support)
<macc24>
alyssa: should i test the patch now?
<Lyude>
alyssa: what kinda work is still left to do on bf btw? just curious
<macc24>
Lyude: probably gl3 and optimization
<Lyude>
gotcha
<macc24>
probably
davidlt has quit [Ping timeout: 240 seconds]
icecream95 has joined #panfrost
<q4a>
icecream95 I saw, that you merged my changes. Thanks. I'm not good in vulkan, but I would like to try and implement some parts. How development of vulkan driver can be splitted?
<q4a>
It's better on focusing draw real triangle or some parts of Vulkan CTS?
<alyssa>
Everything in the CTS will depend on the first triangle.
<alyssa>
So it's probably easier to try to get vkcube (or just a triangle) working, after that you'll have more options :)
<alyssa>
Lyude: A _lot_ of optimizations, and some feature work to bring up shiny APIs
<alyssa>
icecream95: has been not-so-quietly bringing up OpenCL on Bifrost (and Midgard)
<macc24>
alyssa: fyi bugs are still present, even in newest patch version
<br_>
can someone on linux try xmoto and press F7 for FPS ?
<macc24>
br_: i'd try it if certain someone didn't broke sway
<icecream95>
br_: yes
<icecream95>
alyssa: With VGEM enabled, LLVMPipe can render Quake 1 @ 1920x1200 at a playable framerate on duet
<macc24>
icecream95: before learning about deqp supertuxkart hack i was playing supertuxkart on llvmpipe
<macc24>
i posted a pic some time ago
<alyssa>
macc24: ok how'd it break it this time..
<macc24>
alyssa: apitrace?
<alyssa>
uhhh
<br_>
icecream95: on xmoto I have about u(40), d(20) average, highest u(50), d(30). Not sure what u and d mean
<br_>
on rk3399
<macc24>
br_: what mesa version?
<br_>
not sure, just built today from git
<macc24>
ok
<macc24>
br_: ill tell you results on my kevin after mesa compiles
<alyssa>
macc24: I can't seem to reproduce the faults on g52
<br_>
xmoto takes entire core (97%), xorg 20% during game
<macc24>
alyssa: oh no
<br_>
so overall 77% of system (6 cores)
<alyssa>
icecream95: You wouldn't happen to know anything about mesa winsys integration on... Darwin? 😅
<alyssa>
macc24: You're sure it's only that branch>
<alyssa>
and only that last commit?
<macc24>
git merged master, ill try that branch
<macc24>
sorry for causing trouble
<alyssa>
hmm?
<alyssa>
(The STK bug was very real and CI didn't catch it. You have nothing to be sorry for, I should be thanking you :) )
<alyssa>
[And that would've been ugly to bisect.]
nlhowell has joined #panfrost
<macc24>
ill recompile mesa on my duet... might take some time
<br_>
nlhowell: rinet )
<br_>
nlhowell: I was using it in Moscow
<macc24>
icecream95: i think that cci bug doesn't have to be fixed. if task eats all of one small core, kernel should be smart enough to move it to big core
<alyssa>
macc24: I'm confused.
<icecream95>
macc24: But the bug is for the big cores
<macc24>
icecream95: o.o
agrisis has joined #panfrost
<icecream95>
br_: I usually get 40-50 fps (corresponding to the 'd' value) in xmoto, but different CPU/GPU so not directly comparable
<macc24>
br_: u 100 d 50
<macc24>
on rk3399 800x600 32bpp max settings
<macc24>
alyssa: still broken
<macc24>
and it looks like after a while it ends up rendering the frame
<macc24>
and window borders draw correctly
<macc24>
in sway
<alyssa>
I don't understand why it would fault for you but not for me, I don't know of architectural differences affecting spilling ..
<macc24>
kmscube works fine
<icecream95>
br_: Xmoto eats about 150% CPU and sway takes another 15
anarsoul has quit [Read error: Connection reset by peer]
<alyssa>
macc24: And it's definitely that last patch that introduces the faults?
<macc24>
alyssa: i used the branch this tiem
<macc24>
time*
<alyssa>
right, if you revert the top commit (the one with IRC logs spammed in), it works?
<macc24>
lemme check
<macc24>
still broken
karolherbst has quit [Ping timeout: 272 seconds]
<macc24>
do you want apitrace?
<macc24>
it renders fine in my radeonsi setup
<icecream95>
I can reproduce the faults, will try bisecting
<icecream95>
macc24: Try with PAN_MESA_DEBUG=noafbc
<macc24>
icecream95, alyssa: noafbc makes it work fine
icecream95 has quit [Quit: Reconnecting]
icecream95 has joined #panfrost
<macc24>
icecream95: received my previous message?
<icecream95>
macc24: yes
karolherbst has joined #panfrost
<macc24>
brb
<alyssa>
AFBC sounds like not-my-problem then? 😇
<alyssa>
bbrezillon: ^^
anarsoul has joined #panfrost
<icecream95>
alyssa: See 471fd78e3c5 ("panfrost: Fix AFBC on Bifrost v6")
<alyssa>
icecream95: Ugh. Thanks. You're the best.
<icecream95>
alyssa: Best at what?
<alyssa>
icecream95: idk, panfrost development? fixing my awful mistakes? :p
<alyssa>
macc24: Pull and rebuild, issue is fixed, thank icecream95 not me.
<icecream95>
alyssa: Speaking of mistakes, have you fixed the bugs when ssa_0 is not load_const yet?
<alyssa>
icecream95: right, meant to ask about that, do you have a GL reproducer?
<alyssa>
(Is clover still awful to setup? I got burned by SPIRV LLVM versioning out of tree and related nonsense)
<alyssa>
btw i use debian
<icecream95>
btw I no longer use Arch
raster has joined #panfrost
warpme_ has quit [Quit: Connection closed for inactivity]
<alyssa>
Gentoo?
<alyssa>
Void?
<alyssa>
LFS?
<icecream95>
alyssa: I found the bug with piglit/tests/spec/arb_compute_variable_group_size/execution/separate-global-id-2.shader_test
<cphealy>
Do the Midgard and/or bifrost GPUs have special bits that allow a glClear to operate at a rate much faster than the typical shader pixel fill rate?
<alyssa>
cphealy: Yes, in good conditions.
<alyssa>
icecream95: I should download piglit shouldn't i
<alyssa>
uh do I even have connectivity on my bifrost board anymore
<alyssa>
it doesn't have wifi and the ethernet is inoperable here..
<icecream95>
cphealy: Clears are done with fixed-function hardware before rendering starts on a new tile
<icecream95>
It's faster to clear than not to clear, as otherwise the GPU has to load the old contents of the tile from RAM
<alyssa>
* unless you scissor or mask
<cphealy>
Is this faster as in 2x, 4x, 8x, or is this special HW where it's hundreds/thousands of times faster than the fill rate to do a clear because of this fixed-function HW?
<cphealy>
With old Adreno 200, it's like 2x or 4x faster to do a clear based fullscreen color. With Vivante, it's like 100x or more because special HW is setting tile-status regs with clear color.
<alyssa>
cphealy: If you render _anything_ whatsoever, the hardware _has_ to do a fullscreen clear
<HdkR>
`Because of the way tiling works, using glClear is essentially a free operation. Clearing only a part of the buffer is inefficient both in terms of time and power consumption.`
<alyssa>
So if you don't call glClear, it's still doing the clear, and then a bunch of work (in the shaders) on top of it to keep up the illusion of not cleared
<cphealy>
So, for a 2D GPU that is fragment shader bound and a solid color background can be used, it's going to be much faster to just set the clear color than to do a fullscreen solid color background rectangle then, correct?
<alyssa>
Absolutely
<cphealy>
Excellent, thank you!
<alyssa>
ok, odroid is tethered to my laptop's wifi
<alyssa>
mildly horrifying
<icecream95>
alyssa: With working forwarding? I never worked out how and just use an SSH SOCKS proxy...