New AVX512 application released


Message boards : News : New AVX512 application released

Message board moderation

To post messages, you must log in.
AuthorMessage
AquaBoy

Send message
Joined: 5 May 18
Posts: 1
Credit: 625,241
RAC: 1,139
Message 8322 - Posted: 27 Mar 2024, 10:29:26 UTC
- Where the AVX512 application for Linux (Anonymous platform by ahorek's team) can be downloaded?
- Should the contents of the "app_info.xml" for Linux look like that offered by Keith Myers?
ID: 8322 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ahorek's team
Volunteer developer
Volunteer tester

Send message
Joined: 1 Jan 13
Posts: 34
Credit: 4,611,137
RAC: 88,879
Message 8323 - Posted: 27 Mar 2024, 13:49:55 UTC - in response to Message 8322.  
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.).
ID: 8323 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Keith Myers
Avatar

Send message
Joined: 16 Nov 22
Posts: 98
Credit: 50,737,086
RAC: 340,012
Message 8324 - Posted: 27 Mar 2024, 15:34:19 UTC - in response to Message 8322.  
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)
ID: 8324 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
magic_sam

Send message
Joined: 16 Nov 22
Posts: 18
Credit: 6,962,168
RAC: 4,150
Message 8325 - Posted: 27 Mar 2024, 16:46:07 UTC

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
ID: 8325 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Keith Myers
Avatar

Send message
Joined: 16 Nov 22
Posts: 98
Credit: 50,737,086
RAC: 340,012
Message 8326 - Posted: 27 Mar 2024, 17:54:36 UTC

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)
ID: 8326 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
magic_sam

Send message
Joined: 16 Nov 22
Posts: 18
Credit: 6,962,168
RAC: 4,150
Message 8327 - Posted: 27 Mar 2024, 18:09:19 UTC
@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
ID: 8327 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Keith Myers
Avatar

Send message
Joined: 16 Nov 22
Posts: 98
Credit: 50,737,086
RAC: 340,012
Message 8328 - Posted: 27 Mar 2024, 18:27:52 UTC - in response to Message 8314.  

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)
ID: 8328 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Keith Myers
Avatar

Send message
Joined: 16 Nov 22
Posts: 98
Credit: 50,737,086
RAC: 340,012
Message 8329 - Posted: 27 Mar 2024, 18:38:39 UTC
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)
ID: 8329 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
magic_sam

Send message
Joined: 16 Nov 22
Posts: 18
Credit: 6,962,168
RAC: 4,150
Message 8330 - Posted: 27 Mar 2024, 19:05:11 UTC
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
ID: 8330 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
ahorek's team
Volunteer developer
Volunteer tester

Send message
Joined: 1 Jan 13
Posts: 34
Credit: 4,611,137
RAC: 88,879
Message 8331 - Posted: 27 Mar 2024, 19:13:13 UTC - in response to Message 8327.  
I've tested the alpha 8.0 version and have no issues getting new tasks. Could you double-check if CPU work is enabled in your account manager preferences?
Also, the client may not request new work, if your host is busy running other projects.
ID: 8331 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
magic_sam

Send message
Joined: 16 Nov 22
Posts: 18
Credit: 6,962,168
RAC: 4,150
Message 8332 - Posted: 27 Mar 2024, 19:38:28 UTC

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
ID: 8332 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
magic_sam

Send message
Joined: 16 Nov 22
Posts: 18
Credit: 6,962,168
RAC: 4,150
Message 8333 - Posted: 28 Mar 2024, 16:39:03 UTC

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
ID: 8333 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote
Profile Keith Myers
Avatar

Send message
Joined: 16 Nov 22
Posts: 98
Credit: 50,737,086
RAC: 340,012
Message 8334 - Posted: 28 Mar 2024, 17:34:25 UTC - in response to Message 8333.  
Your post statement is correct. Best to use an app_info.xml file to get the avx-512 tasks right now.

A proud member of the OFA (Old Farts Association)
ID: 8334 · Rating: 0 · rate: Rate + / Rate - Report as offensive     Reply Quote

Message boards : News : New AVX512 application released