Cool VL Viewer forum
http://sldev.free.fr/forum/

ARM64 port (was: Porting Difficulties)
http://sldev.free.fr/forum/viewtopic.php?f=10&t=2212
Page 3 of 6

Author:  bjbdragon [ 2021-08-21 16:02:16 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

It is not that simple and I'm not familiar enough with cmake, but it still fails out as the build is not waiting for the prebuild stuff to actually download. At least it will build on second pass now.

Author:  Henri Beauchamp [ 2021-08-21 16:36:38 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

bjbdragon wrote:
It is not that simple and I'm not familiar enough with cmake, but it still fails out as the build is not waiting for the prebuild stuff to actually download. At least it will build on second pass now.
Please, post the build log... I cannot test it myself on ARM, here, and cannot guess what's going wrong.

EDIT: I think I found the problem (must make openjpeg dependent on the "prepare" step, so that the sse2neon.h header is downloaded before we try to build it). Try this patch, please:
Attachment:
linux_arm64_support_patch_v3.txt [48.47 KiB]
Downloaded 319 times

Author:  bjbdragon [ 2021-08-21 17:06:30 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

This works just fine, going to be a while before I have a proven run build but seems like everything is in place. Hopefully, the extra floating point stuff you added gives me a little bit of performance.

Author:  Henri Beauchamp [ 2021-08-21 17:08:12 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

Great ! Let me know how it fares, though the expectations should not be that great: I mean, a 1.5GHz ARM and a MALI GPU are far from the minimum recommendations to run a graphics viewer. :P

Author:  bjbdragon [ 2021-08-21 17:16:25 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

Henri Beauchamp wrote:
Great ! Let me know how it fares, though the expectations should not be that great: I mean, a 1.5GHz ARM and a MALI GPU are far from the minimum recommendations to run a graphics viewer. :P


Yes, that is true, definitely! It's however, a Broadcom V3D GPU, not MALI. However, this should be compatible with anything that has a Legacy OpenGL implementation, so if anyone else out there has ARM hardware with a better GPU (e.g. nVidia Tegra, Apple M1, etc) I'd love to hear about your own performance!

Author:  Henri Beauchamp [ 2021-08-21 17:23:48 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

bjbdragon wrote:
Apple M1
Not even sure the viewer would compile under that hardware: either they would need to build macOS-arm pre-built libraries and hope that macOS got OpenGL compatible libraries in native ARM mode, i.e. outside the x86 emulation (I don't think it got any, it is likely Metal or nothing in native ARM mode...), or build the viewer on a Linux VM under macOS (but here again, I doubt OpenGL is usable)...

Author:  bjbdragon [ 2021-08-21 17:46:34 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

Ah right, Mac has their own graphics stack entirely... and too early for Mesa implementations, as bare-metal Linux has barely only been ported. As for Mali, there is Lima and Panfrost but for some reason, Mesa as a whole seems to be abysmally slow for Second Life viewers. Even on AMDGPU, it seems to perform very, very poorly unless using the "pro" drivers.

I've seem occasional mention of Vulkan for Second Life, almost as though that's something Linden's wanting to push out. Not sure if that is a good thing or a bad thing, though am assuming it might improve performance across the board on platforms that do support it.

Author:  bjbdragon [ 2021-08-21 22:21:05 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

Yay, build was successful using the patch you provided. Definitely does seem like the optimization flags you provided helped a little bit. It's very difficult to truly test optimization and performance, if anyone else has an ARM64 system that has at least OpenGL 2.1 I have provided test build below.

http://muckdragon.info/coolvlviewer/CoolVLViewer-arm64-1.28.2.36.tar.bz2
088c40fc0a60c4d3689defe52c18b838 CoolVLViewer-arm64-1.28.2.36.tar.bz2

Author:  Henri Beauchamp [ 2021-08-22 08:18:35 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

Great ! :D

Thank you again for this interesting contribution !

The changes to the sources will be part of next viewer release.

Author:  bjbdragon [ 2021-09-19 01:06:18 ]
Post subject:  Re: ARM64 port (was: Porting Difficulties)

This is something I noticed during my testing. While, there's probably no reason you'd ever want to run EE shaders on any of the low end embedded GPUs found in most ARM SBCs, this may affect more than just my experimental ARM builds...

With Mesa V3D driver (RPi 4), turning on EE causes screen to go solid white, no UI. Culprit is the shader here... the #ifdef sections appear to be related to Darwin compatibility but enabling them makes the shaders work properly. Maybe this should not be hard coded to Darwin but a configuration setting somewhere?

./app_settings/shaders/ee/class1/environment/srgbF.glsl

After you get broken white screen by clicking the EE checkbox, the only way to recover seems to be changing the UseNewShaders field in the configuration file.

Page 3 of 6 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/