Message boards :
Application Code Discussion :
MilkyWay on ARM Mali T-628 GPU
Message board moderation
Author | Message |
---|---|
Send message Joined: 18 Jun 11 Posts: 2 Credit: 21,860,359 RAC: 0 |
Hi, I was able to successfully build and run MilkyWay GPU app on ARM Mali T-628, on Odroid XU4 board. First WU has just been completed and validated successfully: http://milkyway.cs.rpi.edu/milkyway/result.php?resultid=2138942517. Mali GPU needed about 100 minutes to complete it. This time could be better if app would support integrated CPU/GPU memory (the same as for Intel GPU), some time could be saved on data copying. Odroid uses Ubuntu Linux, so building procedure is the same as for x86 Linux. I had small issue with linking with libOpenCL.so because one of last system updates did something bad to it and linker started complaining about missing cl* functions in this lib. I fixed this by replacing this lib with symlink to libmali.so: cd /usr/lib/arm-linux-gnueabihf/ mv libOpenCL.so libOpenCL.so.broken ln -s libmali.so libOpenCL.so You also need proper app_info.xml to make it working. I use following one: <app_info> <app> <name>milkyway</name> <user_friendly_name>MilkyWay@Home</user_friendly_name> <non_cpu_intensive>0</non_cpu_intensive> </app> <file> <name>milkyway_separation</name> <executable/> </file> <app_version> <app_name>milkyway</app_name> <version_num>146</version_num> <platform>arm-unknown-linux-gnueabihf</platform> <avg_ncpus>0.0300000</avg_ncpus> <max_ncpus>0.0300000</max_ncpus> <plan_class>opencl_nvidia_101</plan_class> <api_version>7.6.33</api_version> <file_ref> <file_name>milkyway_separation</file_name> <main_program/> </file_ref> <coproc> <type>Mali-T628</type> <count>1.0</count> </coproc> <gpu_ram>268435456.000000</gpu_ram> <dont_throttle/> </app_version> </app_info> Support for other GPU types beside 3 major ones (Nvidia, AMG, Intel) generally works, but there are still some issues there - see https://github.com/BOINC/boinc/issues/1686. For some reason BOINC Clienr sees two instances of Mali GPU, but uses only 1st one. Recently I was running Xansons for COD on this GPU, and my BOINC Client build very long work queue. My work queue for MilkyWay so far looks good (12 tasks waiting), will see if it will remain on this level or start growing significantly. |
Send message Joined: 7 Dec 12 Posts: 1 Credit: 2,680,956 RAC: 129 |
Daniel, could you please put together some steps on how to compile MilkyWay on Odroid XU4 to make it use the GPU? Also, you showed us that you use this special app_info.xml, what is this xml file used for and where should it be located? Sorry for the noob questions. I would very much like to put my XU4's GPU to work, but I haven't got the slightest idea whatsoever how to do it. I searched and searched the internet for instructions, but there don't seem to be any :( |
Send message Joined: 11 Dec 09 Posts: 17 Credit: 62,322,067 RAC: 84 |
For some reason BOINC Client sees two instances of Mali GPU, but uses only 1st one. this might have to do with <coproc> <type>Mali-T628</type> <count>1.0</count> </coproc> Try <coproc> <type>Mali-T628</type> <count>2.0</count> </coproc> Also, did you have in your cc_config.xml the the option set <use_all_gpus>1</use_all_gpus> with '1'? Default is '0' which will only use one GPU, if available. Otherwise only the strongest. <cc_config> <log_flags> </log_flags> <options> <use_all_gpus>1</use_all_gpus> </options> <cc_config> |
©2024 Astroinformatics Group