Pairing of projects - how?

Message boards : Questions and problems : Pairing of projects - how?
Message board moderation

To post messages, you must log in.

AuthorMessage
Raistmer

Send message
Joined: 9 Apr 06
Posts: 302
Message 18079 - Posted: 28 Jun 2008, 8:42:32 UTC

If few CPUs available for BOINC projects does any way exist to set what projects pairs (or triples or quads and so on) should work together?

Example for host with dual cores CPU and shared L2 cache:
In this situation if project with bigger cache requirements will be paired with project with low cache requirements it could lead to better overall performance due to lessen cache contention.
The same could be applicable to other shared resources in system.
ID: 18079 · Report as offensive
Keck_Komputers
Avatar

Send message
Joined: 29 Aug 05
Posts: 304
United States
Message 18082 - Posted: 28 Jun 2008, 9:21:39 UTC

Sorry there is not currently any way to do this. I also doubt that anything more than "try to run different projects" will be possible.
BOINC WIKI

BOINCing since 2002/12/8
ID: 18082 · Report as offensive
Pepo
Avatar

Send message
Joined: 3 Apr 06
Posts: 547
Slovakia
Message 18140 - Posted: 1 Jul 2008, 13:22:32 UTC - in response to Message 18082.  

I also doubt that anything more than "try to run different projects" will be possible.

It indeed could be possible and it is just up to someone to try to impement it. (And I hope it will be a part of client's functionality.)

See selecting how many cores a project runs on and How do I control Dual CPU usage?.

Peter
ID: 18140 · Report as offensive
Raistmer

Send message
Joined: 9 Apr 06
Posts: 302
Message 18171 - Posted: 2 Jul 2008, 22:06:43 UTC - in response to Message 18140.  
Last modified: 2 Jul 2008, 22:13:09 UTC

I also doubt that anything more than "try to run different projects" will be possible.

It indeed could be possible and it is just up to someone to try to impement it. (And I hope it will be a part of client's functionality.)


Yes, it definitely could be possible.
The simplest way (that is, not adding too much new functionality) is to set all tasks to suspended state, then pick two, three and so on needed projects that will be run simultaneously, then resume one task from each selected project.
Provided ncpus field setted at 2,3 and so on we will get paired, "tripled" and so on projects that will run simultaneously on single CPU. And in case of multicore CPU we can get needed combination of projects. This feature can help when project's app cant use CPU fully (big disk I/O activity for example) and when some project use big amount of memory on multicore CPU (it could be paired with project that memory requirements more modest)
This algorithm can be executed by hands now and I see nothing that can prevent its automatisation in BOINC client. Multiple suspend/resume functionality already exists in BOINCView (for example). Probably, this feature can be implemented as BOINC client addon software too.
ID: 18171 · Report as offensive

Message boards : Questions and problems : Pairing of projects - how?

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.