| log in |
Message boards : BOINC core client : BOINC 7.0.40-42 and new app_config.xml
1 · 2 · 3 · Next
| Author | Message |
|---|---|
|
Just downloaded the new version to specifically test the app_info.xml and see if I could get the system to not allow more of 1 CEP2 [one of those IO intense]. Here's the sample content: <app_config> <app> <name>cep2</name> <max_concurrent>1</max_concurrent> <gpu_versions> <gpu_usage>.25</gpu_usage> <cpu_usage>.1</cpu_usage> </gpu_version> </app> </app_config> The (short) app name I pulled from the client_state.xml to be sure and placed a copy of the file in both the main data_dir and, following the app_info.xml logic, also in the WCG project folder [no mention in wiki where to put]. When I suspended a running task to see if the next in line cep2 would not start, it did. Don't know if the setup is incorrect, or if the feature is not yet operational. No errors of any kind were logged. edit: Title to enter proper version number. | |
| ID: 46666 · | |
|
Not sure, but would this not require: | |
| ID: 46670 · | |
|
The client was restarted with app_config.xml in the project folder before the first CEP2 job was pulled. When the 2nd CEP2 was pulled and manually started [against expectation it did] copied the config file to the main data_dir and restarted client again. 2 CEP2 kept running. | |
| ID: 46671 · | |
|
A user at WCG pointed out that the wiki from which I copied the template has a closing tag error, a missing s in </gpu_versions>. He's got it to work as expected, to the point that if max per setting is running and no other is buffered, threads will go idle. In his example had 2 SIMAP running, 4 CEP2 buffered, and app_config set to allow only 1 CEP2 to run at a time. His quad had 1 idle core. | |
| ID: 46681 · | |
|
Just a quick question on this. In the doco it mentions the tags needed, are they all required? Are the <gpu_versions> tags required? | |
| ID: 46682 · | |
A user at WCG pointed out that the wiki from which I copied the template has a closing tag error, a missing s in </gpu_versions>. He's got it to work as expected, to the point that if max per setting is running and no other is buffered, threads will go idle. In his example had 2 SIMAP running, 4 CEP2 buffered, and app_config set to allow only 1 CEP2 to run at a time. His quad had 1 idle core. Wiki updated - thanks. | |
| ID: 46683 · | |
|
Well, on documentation, apparently we're not to use that one, but the 'official' one at http://boinc.berkeley.edu/wiki/Client_configuration#Application_configuration .. yeah, I don't get it either. ;-) | |
| ID: 46684 · | |
Well, on documentation, apparently we're not to use that one, but the 'official' one at http://boinc.berkeley.edu/wiki/Client_configuration#Application_configuration .. yeah, I don't get it either. ;-) That's the one which starts "There are three configuration mechanisms...", numbered 1 Configuration file ? ;-) Edit - the document we've all been editing is directly linked from the front page of Software Development (http://boinc.berkeley.edu/trac/wiki/SoftwareDevelopment?version=127#Currentdevelopment), so I think it's as well that we keep it accurate, too. | |
| ID: 46688 · | |
Edit - the document we've all been editing is directly linked from the front page of Software Development (http://boinc.berkeley.edu/trac/wiki/SoftwareDevelopment?version=127#Currentdevelopment), so I think it's as well that we keep it accurate, too. Yeah, but for that David told Rom, Charlie and me that documentation for the client only needs to go into the Wiki only. Server software/project related stuff goes into the Trac/Wiki, so he's been setting this thing up in the wrong place. I already pointed that out, don't be surprised if the one in Trac goes missing all of a sudden. ;-) ____________ Jord -BOINC FAQ Service -BOINC 7.0 FAQ Go, seize the day, wake up and say: This is an Extraordinary life! -- Asia, An Extraordinary Life | |
| ID: 46694 · | |
|
I've been playing around with this feature, and it seems to be very useful in two quite different forms. <app_config> As many users will have noticed, when a project is underworked in BOINC v7 (either a newly attached project, or following a server outage), the client has a tendency to both fetch and schedule that project exclusively until REC and priority start to balance out with other pre-existing projects. This usage of app_config can help to even out the balance between projects, though I fear boinc may starve low-priority projects while the re-balancing process finishes - I'm testing this. 2) For GPU-only apps. <app_config> has the effect of supplying a <count> value, and allowing multiple copies of a GPU app to run on a single GPU resource - something popular with GPU users. This is much easier and safer than using a full app_info.xml file, because it doesn't disable the automatic downloading of a new application version if the project server issues one. | |
| ID: 46716 · | |
Thanks, that is what I have been waiting for. But I had to use a version closer to what SekeRob used, to allow two HCC work units to run on my GPU: <app_config> <app> <name>hcc1</name> <user_friendly_name>Help Conquer Cancer</user_friendly_name> <gpu_versions> <gpu_usage>0.5</gpu_usage> <cpu_usage>1.0</cpu_usage> </gpu_versions> </app> </app_config> (And I had to place it in both the BOINC data folder, and the project folder.) | |
| ID: 46717 · | |
|
Ooops, my bad. I had looked back at an earlier version of the documentation, and forgot to come back forward to the present day before copying and posting. <app_config> 2) For GPU-only apps <app_config> From the changesets, it looks as if you may have to use BOINC v7.0.41 (or v7.0.42, just available) for the GPU version to work consistently. | |
| ID: 46718 · | |
|
Hi Richard, | |
| ID: 46721 · | |
|
Already we've made that conclusion off-line in discussion with knreed **. Also, if the user goes wild, too much work could get cached of the max_concurrent and eventually go "too late". As the developer indicated, something would give. How's the work submitting project to know the user has set concurrency restrictions... the buffer is the buffer, and if full it's full. Backup project, or at least another project outside the most wanted, to fill those instances. | |
| ID: 46724 · | |
|
I haven't noticed any problems with CPU apps, but for GPU apps there seems to be perhaps a '<' test where there should be a '<=' test. | |
| ID: 46728 · | |
Backup project, or at least another project outside the most wanted, to fill those instances. Rob, if you don't mind I'm not a sole WCG-cruncher, so my backup project in my example was SIMAP. All my projects have an equal resource share. In my example I expected to get another SIMAP task fetched, but as you said "a filled buffer" is a full buffer, even if a task in the buffer isn't allowed to start. It's just the user should be aware of this and not use too low buffer sizes when using the max_concurrent or Rom/David could work around in case of idle core(s), that may be used. @Richard: For me 0.5 resulted in 2 running GPU-tasks. Will load 7.0.42 as soon as the next checkpoint is written for a CEP2-task. Waiting for hours and hours already :( Suggestion: Why not reread all app_config.xml's when "read config file". That way you don't have to restart BOINC. | |
| ID: 46729 · | |
|
app_config.xml is first ignored after a reset of the project. | |
| ID: 46732 · | |
|
Crystal Pellet, I'd thought the idle core would initiate a call to a backup project, but as you surmised too, there being no buffer room. If that weakness could be overridden for a backup project task [those that only supply minimal work to keep a core occupied], that would be the cream on top of the icing on the cake.:D | |
| ID: 46734 · | |
|
NM! I had a major brain cramp. | |
| ID: 46747 · | |
|
People, you can stop PMing me with requests that I forward all your enhancement request information to the developers. I already did that mostly based on the contents of this thread. | |
| ID: 46755 · | |
Message boards : BOINC core client : BOINC 7.0.40-42 and new app_config.xml
Copyright © 2013 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.