Cool VL Viewer forum

View unanswered posts | View active topics It is currently 2021-11-27 14:55:30



Reply to topic  [ 38 posts ]  Go to page Previous  1, 2, 3, 4  Next
ARM64 port (was: Porting Difficulties) 
Author Message

Joined: 2021-08-18 09:56:48
Posts: 22
Reply with quote
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.


2021-08-21 16:02:16
Profile

Joined: 2009-03-17 18:42:51
Posts: 4773
Reply with quote
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 12 times


2021-08-21 16:36:38
Profile WWW

Joined: 2021-08-18 09:56:48
Posts: 22
Reply with quote
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.


2021-08-21 17:06:30
Profile

Joined: 2009-03-17 18:42:51
Posts: 4773
Reply with quote
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


2021-08-21 17:08:12
Profile WWW

Joined: 2021-08-18 09:56:48
Posts: 22
Reply with quote
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!


2021-08-21 17:16:25
Profile

Joined: 2009-03-17 18:42:51
Posts: 4773
Reply with quote
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)...


2021-08-21 17:23:48
Profile WWW

Joined: 2021-08-18 09:56:48
Posts: 22
Reply with quote
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.


2021-08-21 17:46:34
Profile

Joined: 2021-08-18 09:56:48
Posts: 22
Reply with quote
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


2021-08-21 22:21:05
Profile

Joined: 2009-03-17 18:42:51
Posts: 4773
Reply with quote
Great ! :D

Thank you again for this interesting contribution !

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


2021-08-22 08:18:35
Profile WWW

Joined: 2021-08-18 09:56:48
Posts: 22
Reply with quote
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.


2021-09-19 01:06:18
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 38 posts ]  Go to page Previous  1, 2, 3, 4  Next

Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.