<macc24>
HdkR: how performance of FEX would compare to running programs natively on A73?
<macc24>
as of now
<HdkR>
Depends on what the app is abusing. I believe currently you can get like 2-3x slower with stuttering
<HdkR>
But I haven't done performance testing for months so I'm not quite sure
<macc24>
ok... how it works? would it be possible to make qemu use it?
<HdkR>
qemu and fex operate at different levels. qemu wants to be a system level emulator but also supports usermode emulation, while FEX is usermode only
<HdkR>
It's a bit outdated. LLVM doesn't exist and some other blocks could be removed
<macc24>
hmm
<HdkR>
LLVM was deemed impossible to support
<HdkR>
Generates some nice runtime performance numbers though
<macc24>
does fex emulate libraries?
<HdkR>
We do have a thunking mechanism to replace guest libraries with host libraries
<HdkR>
Which improves perf significantly for GL applications since GL is always a huge library
<HdkR>
radeonsi in particular is nasty because of the LLVM integration
<macc24>
how good is compatibility?
<macc24>
as in will it segfault me if fex doesn't like the app?
tomboy64 has quit [Remote host closed the connection]
<HdkR>
Unity+Mono applications will currently fail
<HdkR>
32bit you won't get far
tomboy64 has joined #panfrost
<macc24>
there are some mono applications that can't run natively on arm? i launched terraria without emulation on my c100pa a while ago
<macc24>
(aside from unity stuff)
<HdkR>
Never tried
alyssa has joined #panfrost
<alyssa>
icecream95: Does not seem good at all :'(
* alyssa
says she's the Princess of Panfrost, but she's actually Princess of Getting Angry At Computers Hard-Rebooting And Corrupting File Systems
<alyssa>
Those two titles are surprisingly coincident.
<HdkR>
alyssa: How soon until you're working directly from an NFS share like me? :P
* macc24
sometimes works in tmpfs
<alyssa>
HdkR: When code I write causes an OOM, such that I hard reboot in frustration and corrupt my mesa tree,
<alyssa>
this is known as a self-correcting mistake ;)
<HdkR>
hehe
<HdkR>
I guess gigabit would NFS is only 125MB/s. Still better than SBC microSD card working
vstehle has quit [Ping timeout: 246 seconds]
<macc24>
HdkR: why fex doesn't "automagically" support running 32bit stuff if 64bit cpus can run 32bit programs without problem?
<HdkR>
Traditional 32bit application support comes from the kernel's compatibility layer, letting you run a 32bit x86 application with an x86-64 kernel. Or AArch32 application with an AArch64 kernel
<alyssa>
icecream95: Nice find with the uniform depromotion
<alyssa>
Experimenting with heuristics, as a follow on patch, and seeing some really nice wins. As in "there is no more spilling in my entire shader-db" nice :)
<HdkR>
FEX taking an x86 or x86-64 binary on to a 64bit ARM host can't use that. We need to do full usermode CPU emulation. So from the kernel's perspective, FEX is always a 64bit ARM application, but the emulated application thinks it is 32bit or 64bit x86 depending
vstehle has joined #panfrost
kaspter has quit [Ping timeout: 265 seconds]
kaspter has joined #panfrost
<icecream95>
A quick patch later and fsck worked, but gobbled up some files in the process...
<alyssa>
My hobby: ignoring everything after the comma
stikonas has quit [Ping timeout: 272 seconds]
vstehle has quit [Ping timeout: 260 seconds]
camus1 has joined #panfrost
kaspter has quit [Ping timeout: 272 seconds]
camus1 is now known as kaspter
chewitt has quit [Quit: Zzz..]
karolherbst has quit [Read error: Connection reset by peer]
kaspter has quit [Ping timeout: 240 seconds]
kaspter has joined #panfrost
camus1 has joined #panfrost
kaspter has quit [Ping timeout: 260 seconds]
camus1 is now known as kaspter
jstultz has quit [Ping timeout: 272 seconds]
jstultz has joined #panfrost
vstehle has joined #panfrost
warpme_ has quit [Quit: Connection closed for inactivity]
kaspter has quit [Remote host closed the connection]
kaspter has joined #panfrost
italove has joined #panfrost
davidlt has joined #panfrost
chewitt has joined #panfrost
chewitt_ has joined #panfrost
chewitt has quit [Ping timeout: 256 seconds]
chewitt_ has quit [Quit: Adios!]
karolherbst has joined #panfrost
archetech has joined #panfrost
italove has quit [Ping timeout: 264 seconds]
ids1024 has quit [Ping timeout: 246 seconds]
robmur01 has quit [Read error: Connection reset by peer]
<HdkR>
Aye, The Enhanced Edition has a native x86-64 Linux port
<raster>
oh .. i didn't know...
<raster>
well that makes it easier
<raster>
:)
<HdkR>
"easier" when running on ARM devices
<HdkR>
There is work for Wine integration as well, but isn't viable to use yet
<raster>
yeah.. i imagine it'd be tough
<raster>
but... if fex + wine worked well.. proton would not be far behind which would open up a whole massive world of content to test... :)
<HdkR>
Works better than qemu already, just need to get more perf out of it :P
<HdkR>
Upcoming low hanging fruit will give 2-4x perf increases. So the 20FPS in that image gets quite a bit faster very quickly
<raster>
well certainly wouldnt use this fo rperf testing panfrost
<raster>
just for correctness...
<HdkR>
Oh, that image didn't have FPS counter visible :D
<HdkR>
Definitely
<raster>
but man.. i forgot about nwn - so long ago that it came out
kaspter has quit [Ping timeout: 256 seconds]
<HdkR>
Looks like the Enhanced edition is also available on GOG. So doesn't need to wait for 32bit support to stabilize to run the Steam version
<macc24>
32bit is WIP already?
kaspter has joined #panfrost
<HdkR>
Needs a custom kernel atm and downstream changes
<raster>
HdkR: btw that is midgard or bifrost?
<macc24>
HdkR: custom kernel as in?
<HdkR>
Neither, I was just testing FEX supporting it there :P
<HdkR>
macc24: I need custom syscalls atm for 32bit support, so you need a kernel with those added
<HdkR>
very big WIP
* macc24
noted
<raster>
impressive tho that nwn works at a decent framerate and being emulated too
<raster>
i wonder if that is a sign of how good arm SoCs have gotten vs old old intel chips or how good the emulation is... :)
<macc24>
raster: well, arm laptops already outperform old x86 laptops in native performance
<raster>
you mean the m1?
<macc24>
i mean rk3288
<raster>
or mthe qc ones?
<raster>
oh those...
<raster>
thats even weenie vs rk3399
<macc24>
the gpu is faster than my thinkpad x201 and my guess for cpu performance would be around merom c2d
<raster>
if you get a pinebook pro .. it's not too shabby
<macc24>
nah i got duet
<raster>
but i know that arm soc perf has gone up much faster than x86 in recent years l.. so it all depends on how old the x86 system is vs the arm one etc.
italove has joined #panfrost
stikonas_ is now known as stikonas
ckeepax has quit [Ping timeout: 240 seconds]
ckeepax has joined #panfrost
sphalerite is now known as LinuxHackerman
LinuxHackerman is now known as sphalerite
robmur01 has joined #panfrost
kaspter has quit [Ping timeout: 240 seconds]
kaspter has joined #panfrost
camus1 has joined #panfrost
kaspter has quit [Ping timeout: 260 seconds]
camus1 has quit [Remote host closed the connection]
kaspter has joined #panfrost
stikonas has quit [Read error: Connection reset by peer]
stikonas has joined #panfrost
stikonas has quit [Quit: Konversation terminated!]
stikonas has joined #panfrost
camus1 has joined #panfrost
kaspter has quit [Ping timeout: 260 seconds]
camus1 is now known as kaspter
italove has quit [Ping timeout: 240 seconds]
stikonas has quit [Remote host closed the connection]
stikonas has joined #panfrost
stikonas_ has joined #panfrost
stikonas has quit [Ping timeout: 272 seconds]
italove has joined #panfrost
italove_ has joined #panfrost
italove has quit [Ping timeout: 240 seconds]
tomboy64 has quit [Remote host closed the connection]
tomboy64 has joined #panfrost
tomboy64 has quit [Remote host closed the connection]
tomboy64 has joined #panfrost
archetech has quit [Quit: Leaving]
tomboy64 has quit [Remote host closed the connection]
tomboy64 has joined #panfrost
Green has quit [Quit: ...]
Green has joined #panfrost
q4a has joined #panfrost
warpme_ has joined #panfrost
q4a has quit [Remote host closed the connection]
italove_ has quit [Ping timeout: 260 seconds]
davidlt has quit [Ping timeout: 260 seconds]
kaspter has quit [Ping timeout: 240 seconds]
kaspter has joined #panfrost
Elpaulo has joined #panfrost
Elpaulo has quit [Read error: Connection reset by peer]
Elpaulo has joined #panfrost
awordnot has quit [Ping timeout: 264 seconds]
italove has joined #panfrost
italove has quit [Ping timeout: 256 seconds]
italove has joined #panfrost
italove has quit [Ping timeout: 256 seconds]
awordnot has joined #panfrost
<macc24>
what differs between g52 and g72?
<HdkR>
g72 is just bigger
<macc24>
hmm
<HdkR>
Each execution engine is 4x larger in the g72 compared to the g52
<macc24>
then it's weird
<HdkR>
There's probably also some other random changes but high level :D
<macc24>
if g52 works and g72 isn't that much different then why g72 doesn't work
icecream95 has joined #panfrost
<alyssa>
macc24: g52 and g72 are separate architectures
<alyssa>
No, I don't understand the versioning scheme either.
<alyssa>
G71 and G72 are one architecture
<alyssa>
all the other Bifrost are a different architecture
<alyssa>
(G72 is older)
<macc24>
what the fuck
<alyssa>
that's correct
<alyssa>
So, for Panfrost purposes, G31 = G51 = G52 = G76
<alyssa>
(G51 and G76 probably Just Work if you allowlist, only reason they aren't is because nobody's ttried them)
<macc24>
G72 = G71 = ?
<alyssa>
Yeah, roughly
<alyssa>
Although G71 being even older needs even more "special" things.
<alyssa>
I think it's to sync versioning with the Arm CPUs
<macc24>
that's.. useful then
<macc24>
now what do i do with it, i don't know
<alyssa>
>:
<macc24>
do i look like someone who knows stuff?
<HdkR>
With enough effort anyone can know stuff
nerdboy has quit [Excess Flood]
<macc24>
you don't start moving the mountain by lifting big rocks
<HdkR>
Some rocks only look big and imposing then you realize they set set dressing made out of polystyrene :P
<HdkR>
they are set dressing*
nerdboy has joined #panfrost
awordnot has quit [Read error: Connection reset by peer]