Page 1 of 1

Multiple cores in RATS

Posted: Sat Dec 15, 2018 7:44 pm
by hasanov
Dear RATS Community,

How to utilize multiple cores in a machine?

In the RATS's User's guide, it is stated that:

"Rats now uses multiple “threads” with the editor interface in one and the statistical engine in another." It looks it supports the multi-core computations.

Is there any command or procedure to assign to use some or all cores in one's machine if a machine is a multi-core machine?

Would be appreciated if anyone can share his or her experience with the multi-core computations using RATS.

Many Thanks

Re: Multiple cores in RATS

Posted: Mon Dec 17, 2018 4:46 pm
by TomDoan
Running two threads (one for calculations, one for interface) is not (at least under Windows) all that complicated. (MacOSX is a bit trickier because interface operations have to be explicitly run on the "main" thread, and which operations require that changes from revision of the OS to the next). We did some experimenting with multi-processor support within calculations and found that it worked fairly predictably with Macintosh and UNIX, but worked very unpredictably under Windows. (Calculations that should have gotten noticeably faster got slower). For reasons that have never been explained (other than "not invented here"), the standard Microsoft compilers don't support the modern OpenMP multiprocessor handling and only support a very old, very bad version of it (hence, I assume the bad behavior). We briefly experimented with a different compiler for Windows, but it took *hours* to create an optimized version of the program (vs about five minutes with the standard Microsoft compiler). We'll revisit this in the near future.