what is "plan_class" xml tag in app_info ?

Message boards : Questions and problems : what is "plan_class" xml tag in app_info ?
Message board moderation

To post messages, you must log in.

AuthorMessage
GeneAZ

Send message
Joined: 28 Jun 14
Posts: 27
United States
Message 84903 - Posted: 25 Feb 2018, 15:11:34 UTC

In an anonymous platform context... boinc 7.6.33, linux host... seti@home project...

What is the <plan_class> tag in the app_info.xml file? Looking in the boinc wiki it says that in the plan_class tag one should fill in the "plan_class" of the application. Well, that's not very helpful. Is the plan_class built-in to the application? If so, how does one know what it is? Or, is the plan_class somehow implied in the name of the executable file?
The wiki also indicates that the plan_class tag is OPTIONAL. So, under what conditions is it required and what are the consequences of leaving it out if it is not required?
I'm really only aiming at having one cpu app and one gpu app on a given named application.

Thanks for any light you can shed on this.
ID: 84903 · Report as offensive
Profile Richie

Send message
Joined: 2 Jul 14
Posts: 186
Finland
Message 84906 - Posted: 25 Feb 2018, 20:06:40 UTC

I think plan_class might come handy in a situation when your host has both AMD and Nvidia gpu's. Then plan_class could be used to control them separately. I don't know about Seti apps, but sometimes a project might have an app that has multiple sub-versions for different GPUs and platforms.

Maybe the few posts here will give something useful:
https://www.reddit.com/r/BOINC/comments/4isriv/setihome_app_configxml_to_run_2_tasks_on_nvidia/

Not about Seti apps... but in Einstein@Home... here is their file that might give an example of some applications having multiple plan_class for different architectures:
https://einsteinathome.org/apps.php?xml=1
ID: 84906 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15477
Netherlands
Message 84907 - Posted: 25 Feb 2018, 20:49:06 UTC

As per https://boinc.berkeley.edu/trac/wiki/AppPlan
Plan classes are policies that allow the BOINC scheduler to decide:

    whether an application should run on a particular host;
    what resources it will use (# of CPUs and GPUs, optionally memory usage)
    how fast it is expected to run. 

Each app version has an associated plan class; multiple app versions may have the same plan class. See how to specify an app version's plan class. Each plan class has a textual name. The default plan class (whose name is empty) is for single-threaded CPU applications.
You can check the application's plan class at the project's applications page, or perhaps it's shown in the name and therefore shows in the properties of the tasks. Like Seti@Home has the application name setiathome_v8 8.20 with between parenthesis the plan class, for example (opencl_ati5_sah). You can check that against their applications page.
ID: 84907 · Report as offensive
GeneAZ

Send message
Joined: 28 Jun 14
Posts: 27
United States
Message 84911 - Posted: 26 Feb 2018, 5:43:34 UTC

Thanks for the replies. The examples and other references were enough to get me on the right track. All is well now. Up and running with the cpu and gpu apps that I wanted to use. I might note (for the benefit of others who might find this thread) that the boinc manager action "read config files" is NOT SUFFICIENT to update the boinc manager process state, especially in an anonymous platform context - a boinc RESTART is required. My best analysis is that the app_info.xml file is NOT re-read and when the app_config.xml file IS re-read there can be many mismatches. That fact is probably spelled out somewhere in the boinc documentation and user guides. But easy to overlook and/or forget. :(
ID: 84911 · Report as offensive
mmonnin

Send message
Joined: 1 Jul 16
Posts: 146
United States
Message 84936 - Posted: 27 Feb 2018, 18:09:07 UTC - in response to Message 84911.  

Correct, app_info is read at BOINC startup. app_config edits can be reread.
ID: 84936 · Report as offensive

Message boards : Questions and problems : what is "plan_class" xml tag in app_info ?

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.