New AVX512 application released
Message boards :
News :
New AVX512 application released
Message board moderation
Previous · 1 · 2
Author | Message |
---|---|
Send message Joined: 5 May 18 Posts: 5 Credit: 857,387 RAC: 1,907 |
|
Send message Joined: 1 Jan 13 Posts: 81 Credit: 9,047,055 RAC: 17,964 |
you can download avx512 apps from https://asteroidsathome.net/boinc/download/period_search_10215_windows_x86_64__avx512_win10.exe https://asteroidsathome.net/boinc/download/period_search_10215_x86_64-pc-linux-gnu__avx512_linux ensure your CPU has avx512 support (like AMD Zen 4, Intel Ice Lake, Intel Sapphire Rapids etc.). |
![]() ![]() Send message Joined: 16 Nov 22 Posts: 120 Credit: 108,635,144 RAC: 438,131 |
The contents of the app_info.xml should be exactly the same as what I posted prior EXCEPT for the change to the application name in the file in the two places where the binary is defined. You need to change the binary name to match the AVX-512 binary name in the file from my example. For the Linux version, this is my app_info.xml <app_info> <app> <name>period_search</name> <user_friendly_name>Period Search Application</user_friendly_name> <non_cpu_intensive>0</non_cpu_intensive> </app> <file> <name>AST_period_search_10215_x86_64-pc-linux-gnu__avx512_linux</name> <executable/> </file> <app_version> <app_name>period_search</app_name> <version_num>10215</version_num> <platform>x86_64-pc-linux-gnu</platform> <avg_ncpus>1.000000</avg_ncpus> <plan_class>avx512_linux</plan_class> <api_version>7.17.0</api_version> <file_ref> <file_name>AST_period_search_10215_x86_64-pc-linux-gnu__avx512_linux</file_name> <main_program/> </file_ref> </app_version> </app_info> ![]() ![]() A proud member of the OFA (Old Farts Association) |
Send message Joined: 16 Nov 22 Posts: 19 Credit: 7,503,644 RAC: 86 |
Last modified: 27 Mar 2024, 16:56:34 UTC Dear all, Still no luck on my end with AVX512 jobs and BOINC v8.0.0 alpha. Just to be clear, I used to run AVX512 jobs before upgrading BOINC to v8.0.0 alpha, so I know my app_info file has to be correct. When I upgraded the client, there were some jobs left in the cache and those were processed successfully. Now that the cache is empty, the client just refuses to download any new Asteroids@home jobs. @ahorek's team: the only message from the client is: Not requesting tasks: don't need (CPU: account manager prefs). What am I doing wrong ? Best regards, Samuel |
![]() ![]() Send message Joined: 16 Nov 22 Posts: 120 Credit: 108,635,144 RAC: 438,131 |
Last modified: 27 Mar 2024, 17:55:26 UTC Would set work_fetch_debug in the Event Log for more information about the client request to the scheduler and the scheduler's reply. The standard reply of no work to send is not much help here. I'd guess that the new client code is having an unexpected result with the project server software. I don't see any changes in the project preferences. I'd get rid of any API statement in the app_info. That and plan_class will be the things that will prevent the scheduler from thinking your host worthy of being sent tasks. Post your app_info file so I can look at it. ![]() ![]() A proud member of the OFA (Old Farts Association) |
Send message Joined: 16 Nov 22 Posts: 19 Credit: 7,503,644 RAC: 86 |
@Keith: here's my app_info.xml file: <app_info> <!--<project_max_concurrent>7</project_max_concurrent>--> <app> <name>period_search</name> <!-- <max_concurrent>7</max_concurrent>--> <user_friendly_name>Period Search Application</user_friendly_name> </app> <file_info> <name>period_search_10215_x86_64-pc-linux-gnu__avx512_linux</name> <executable/> </file_info> <app_version> <app_name>period_search</app_name> <version_num>10215</version_num> <platform>x86_64-pc-linux-gnu</platform> <api_version>7.17.0</api_version> <plan_class>avx512_linux</plan_class> <avg_ncpus>1.000000</avg_ncpus> <file_ref> <file_name>period_search_10215_x86_64-pc-linux-gnu__avx512_linux</file_name> <main_program/> </file_ref> </app_version> </app_info> I'll try removing the API and plan_class from that file. Cheers, Samuel |
![]() ![]() Send message Joined: 16 Nov 22 Posts: 120 Credit: 108,635,144 RAC: 438,131 |
Last modified: 27 Mar 2024, 18:50:45 UTC It's not as if the Boinc client isn't detecting all the cpu feature capabilities, it's instead that it can't DISPLAY all the cpu feature capabilities reported by the host OS. Depending on where the avx tag is placed in the system detected cpu feature output, it could truncate the avx code if it is on the end of the cpu capability output text string that Boinc reads. All the client releases prior to 7.26 or 8.0 alpha only could display a string length of only 1024 characters. So any feature tag in the string past 1024 characters was truncated. So the client was unaware of the true cpu feature capabilities. In the new 7.26 AKA 8.0 alpha release the string length for P_FEATURES_SIZE is now 8192 characters. So the client should now report all the features of even server cpus like my AMD Epycs and Intel Xeons. After looking at the merged code fix for https://github.com/BOINC/boinc/pull/5397 I'd guess that the issue lies with the defined plan_class for the avx-512 app. This issue took several tries to work it all out as the detection code was hooked into a lot more modules than the devs initially realized. One of the modules needing the code fix on the server side code was the plan_class_spec.cpp module. But as I mentioned earlier, the new code has to run on both the client and the server. The client 8.0 alpha is just too far ahead of the server code. ![]() ![]() A proud member of the OFA (Old Farts Association) |
![]() ![]() Send message Joined: 16 Nov 22 Posts: 120 Credit: 108,635,144 RAC: 438,131 |
Any reason why you MUST run the 8.0 alpha? Or just testing for S&G's. If I were you, I'd just fall back to an earlier Boinc release that was working with your original app_info.xml. I would want the host to still be productive instead of just idling. ![]() ![]() A proud member of the OFA (Old Farts Association) |
Send message Joined: 16 Nov 22 Posts: 19 Credit: 7,503,644 RAC: 86 |
I don't have to run 8.0.0 alpha, but I just want to help Vitalii Koshura with the tests. And the rig is far from idle, it's busy crunching Einstein@Home and Milkyway@Home (and distributed.net, mersenne and fishtest) :) I guess I'll just have to wait for the server side to be updated. Thanks for your help Keith, really appreciated :) Cheers, Sam |
Send message Joined: 1 Jan 13 Posts: 81 Credit: 9,047,055 RAC: 17,964 |
|
Send message Joined: 16 Nov 22 Posts: 19 Credit: 7,503,644 RAC: 86 |
Last modified: 27 Mar 2024, 19:38:41 UTC @ahorek's team: thanks for giving BOINC 8.0.0 a try. At least now I know that the issue is on my end. I just double-checked my account manager (BAM) and Asteroids@Home is allowed to run CPU tasks. I think you are correct, looks like my cache is rather full at the moment (~600 jobs), that may explain why the client refuses to download any new Asteroids@Home tasks. Still, it downloads Milkyway@Home and Einstein@Home jobs just fine... I just switched all the projects to "No new tasks" mode, in order to empty the cache. Will keep you all posted. Thanks again for your help, really appreciated. Cheers, Sam |
Send message Joined: 16 Nov 22 Posts: 19 Credit: 7,503,644 RAC: 86 |
Last modified: 28 Mar 2024, 16:41:34 UTC Hello all, Just to let you know that emptying the cache did the trick. I got new Asteroids@home jobs :) I restarted the client with a very simple app_config.xml file, and no app_info.xml file. So far I'm getting SSE3 jobs only. Any chance BOINC v8.0.0 alpha will eventually pick up AVX-512 jobs by itself ? EDIT: if I understand correctly, project managers would have to upgrade the server side to BOINC v8.0.0 first, and that's not going to happen until that release is ready for production. Cheers, Samuel |
![]() ![]() Send message Joined: 16 Nov 22 Posts: 120 Credit: 108,635,144 RAC: 438,131 |
|
![]() ![]() Send message Joined: 12 Jan 13 Posts: 56 Credit: 13,467,599 RAC: 1,499 |
Please provide detailed 'How To" instructions for making this switch to the Anonymous platform. Well a new Development level BOINC 8.0.0 has been released for testing which includes AVX-512 detection. Bill F |
![]() Send message Joined: 25 Nov 14 Posts: 2 Credit: 5,842,826 RAC: 0 |
|
![]() ![]() Send message Joined: 1 Jan 14 Posts: 302 Credit: 32,671,868 RAC: 57 |
|
Send message Joined: 9 May 13 Posts: 6 Credit: 8,856,587 RAC: 2,835 |
|
![]() ![]() Send message Joined: 16 Nov 22 Posts: 120 Credit: 108,635,144 RAC: 438,131 |
Last modified: 7 Jul 2024, 6:56:10 UTC Yes, the 102.20 app across all platforms does AVX-512 if the cpu is capable. It is a universal app. Not necessary to indicate any specific SIMD instruction in its name. If you inspect the stderr.txt output of a finished task, it will show the SIMD instruction used in the calculation. ![]() ![]() A proud member of the OFA (Old Farts Association) |
Send message Joined: 16 Jun 23 Posts: 3 Credit: 394,359 RAC: 753 |
We are very proud to announce our new set of optimized applications that will utilize AVX512 instruction set capable engines or to be precise those, which support AVX512dq instructions! Any idea if Apple M series has an equivalent instruction that could be made to work ? |
Send message Joined: 1 Jan 13 Posts: 81 Credit: 9,047,055 RAC: 17,964 |
ARM processors are using 128bit ASIMD instructions. They have FMA capabilities and the performance is very competitive against x64. there's also a more recent SVE instruction set with a variable SIMD length (up to 2048bit). Unfortunately, none of the consumer hardware, including the Apple M4, supports them. Even if they were, the app won't be much faster. |
Previous · 1 · 2
Message boards :
News :
New AVX512 application released