PDA

View Full Version : Yet another daft idea: ARM-wrestling challenge



Dirk Broer
05-27-2021, 09:07 AM
I would like to raise awareness for ARM-crunching by ways or organizing a BOINC challenge solely for ARM crunchers -Linux and/or Android-, if such a thing can be done.
I would also like to stimulate the development ARM-based GPU apps -you should try to find out how many GFLOPS the GPU of that mobile phone you're holding is capable of...

What are your opinions?

Mind you, AMD could have had the equivalent of nVidia's TX1 and TX2 boards (https://www.phoronix.com/scan.php?page=news_item&px=AMD-ARM-In-My-Hands) four years ago

NeoGen
05-28-2021, 05:37 PM
I think those are great ideas :)
And being an ARM-less person myself currently, I've had the thought for a long time that I would like to just pick up one of those little boards one day and see if I can learn how to get it to work with BOINC. (I've just been lazy about it)

Stimulating the development of apps may require people with that specialized set of skills and tools though. I have a little bit of background in Windows software development, but if I had to port something from standard x86 (Windows) to another OS or architecture I wouldn't even know where to begin looking. There may be tools and documentation out there already for those cases, but it would take some digging around to find it (at least for me). That might be one of the big hurdles to anyone trying to port something to another architecture.

Dirk Broer
05-28-2021, 08:02 PM
I give you two words: cross compiler (e.g. GCC (https://en.wikipedia.org/wiki/GNU_Compiler_Collection))

Wikipedia: (https://en.wikipedia.org/wiki/Cross_compiler#:~:text=A%20cross%20compiler%20is%2 0a,smartphone%20is%20a%20cross%20compiler.)
A cross compiler is a compiler capable of creating executable code for a platform other than the one on which the compiler is running.
For example, a compiler that runs on a Windows 7 PC but generates code that runs on Android smartphone is a cross compiler.

But you should also be able to generate 32- or 64-bit ARM or RISC-V code using a Windows 10 PC. Given an open source x86 GPU application that makes use of CUDA in the x86 environment you should be able to cross compile one for ARM and/or RISC-V too, and given an open source x86 GPU application that makes use of OpenCL in the x86 environment you should be able to cross compile one for ARM and/or RISC-V too.
The only thing that may be standing in your way is that the x86 code (whether Windows or Linux) uses libraries that either aren't there or are not compatible within Linux or Android for ARM and/or RISC-V.