Difference between revisions of "User talk:Bwbaugh"

From Robowiki
Jump to navigation Jump to search
(→‎RoboRumble: multi core info)
(reply)
Line 6: Line 6:
  
 
Welcome to the wiki, glad you are contributing to the rumble =) If you're worried about causing skipped turns first open up robocode and reset the CPU constant, then close robocode and open up the config/robocode.properties file with notepad. Manually increase the CPU constant there to something you feel would account for anything like cache thrashing, possible external logins etc (I'd say just double it...) and save the file. Make sure you run each instance of roborumble from a different install, otherwise there will be issues with all of them saving to or uploading from the same file concurrently. Hope this helps! --[[User:Skilgannon|Skilgannon]] 10:28, 8 June 2011 (UTC)
 
Welcome to the wiki, glad you are contributing to the rumble =) If you're worried about causing skipped turns first open up robocode and reset the CPU constant, then close robocode and open up the config/robocode.properties file with notepad. Manually increase the CPU constant there to something you feel would account for anything like cache thrashing, possible external logins etc (I'd say just double it...) and save the file. Make sure you run each instance of roborumble from a different install, otherwise there will be issues with all of them saving to or uploading from the same file concurrently. Hope this helps! --[[User:Skilgannon|Skilgannon]] 10:28, 8 June 2011 (UTC)
 +
 +
Personally, in addition to boosting the CPU constant, I prefer to run one fewer robocode instance than the number of CPUs on the system. This is because robocode seems to use some processor power outside it's handling it a separate thread than the robots run in (perhaps the Java GC?  Perhaps part of the robocode engine itself? I'm not sure). About setting affinity, I doubt it would make much difference. Robocode is already alternating between running each robot, which I'd expect to limit how long-lived things are in the cpu cache, which I'd expect to mean that affinity probably wouldn't help much. That's just a guess though, it's not like I've tested. --[[User:Rednaxela|Rednaxela]] 13:57, 8 June 2011 (UTC)

Revision as of 14:57, 8 June 2011

RoboRumble

Question: Number of Client Instances

If I have computers that are multicore (some dual some quad), is there a way to safely run multiple instances of the RoboRumble client without causing skipped turns? Would I need to set the affinity of each instance to separate CPUs? I'm a bit new to this, and my parallel computing class doesn't start until the Fall. =) --bwbaugh 10:05, 8 June 2011 (UTC)

Welcome to the wiki, glad you are contributing to the rumble =) If you're worried about causing skipped turns first open up robocode and reset the CPU constant, then close robocode and open up the config/robocode.properties file with notepad. Manually increase the CPU constant there to something you feel would account for anything like cache thrashing, possible external logins etc (I'd say just double it...) and save the file. Make sure you run each instance of roborumble from a different install, otherwise there will be issues with all of them saving to or uploading from the same file concurrently. Hope this helps! --Skilgannon 10:28, 8 June 2011 (UTC)

Personally, in addition to boosting the CPU constant, I prefer to run one fewer robocode instance than the number of CPUs on the system. This is because robocode seems to use some processor power outside it's handling it a separate thread than the robots run in (perhaps the Java GC? Perhaps part of the robocode engine itself? I'm not sure). About setting affinity, I doubt it would make much difference. Robocode is already alternating between running each robot, which I'd expect to limit how long-lived things are in the cpu cache, which I'd expect to mean that affinity probably wouldn't help much. That's just a guess though, it's not like I've tested. --Rednaxela 13:57, 8 June 2011 (UTC)