JEMRIS parallel computation

60 views
Skip to first unread message

Xin Chen

unread,
Mar 20, 2022, 10:09:07 PM3/20/22
to JEMRIS
Dear JEMRIS Developers,

We often found JEMRIS computation performance inadequate even with parallel computation. I have two questions:

1. JEMRIS can use multiple CPUs of a computer cluster. Could you please provide detailed instructions on how to do that?
2. Can parallel JEMRIS utilize cloud computing? If so could you please provide more information?

Thanks,
Xin

Daniel Pflugfelder

unread,
Mar 21, 2022, 6:35:37 AM3/21/22
to Xin Chen, JEMRIS
Hi Xin,
 
Parallelization in JEMRIS is realized by the Master-Slave principle: A single master thread distributes the simulation workload to multiple, singlethreaded workers. The communication between master and slaves is realized by the 'messag passing interface'-Standard (MPI). This is all JEMRIS does, the key to use JEMRIS on a cluster or in the cloud is in setting up your MPI environment accordingly. If you start parallel jemris from the GUI, the respective call to start the mpi environment can be foung in jemris_sim.m (line 87 in version 2.9, look for the call to: 'mpirun  [...]'). I am not an expert on MPI and I am sure you will find much more helpful resources for that on google. Just a few thoughts on the process:
To get the expected performance you need to run at least 1 slave process per physical CPU (a few more can boost the performance further since then the processors can continue working while data is transfered.). Thus for a cluster with N nodes each with K cpus, you have to start N*K+1 mpi processes (+1 is for the master process which is just collecting data). AFAIK the default for MPI is to start one process per node which could be the problem for your inadequate performance. Some Info for configuring your MPI environment can be found e.g. here: https://www.ibm.com/docs/en/pessl/5.3.0?topic=ctopp-choosing-how-many-mpi-tasks-computational-threads-use
 
For utilizing JEMRIS in the cloud, I used the Amazon web service for a Demo in the ISMRM2019 which worked very well. Back then you could use the AWS just as a local computer, except that you could choose the number of CPUs during startup (up to 64 cores back then, which was way more that I needed).
 
Best regards,
Daniel
 
 
Gesendet: Montag, 21. März 2022 um 03:09 Uhr
Von: "Xin Chen" <xin.ch...@gmail.com>
An: "JEMRIS" <jem...@googlegroups.com>
Betreff: JEMRIS parallel computation
--
You received this message because you are subscribed to the Google Groups "JEMRIS" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jemris+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jemris/30414462-ac98-4d69-ab04-41e00a8b899an%40googlegroups.com.

Xin Chen

unread,
Apr 6, 2022, 8:36:55 AM4/6/22
to JEMRIS
Hi Daniel,

Could you please share more information on running JEMRIS on AWS? I did not attend ISMRM 2019 and the demo is not archived. 

Thank you!
Xin

Daniel Pflugfelder

unread,
Apr 6, 2022, 3:31:09 PM4/6/22
to Xin Chen, JEMRIS
Hi Xin,
 
There is not too much to share, really. AWS offers a service they call 'Amazon Elastic Compute Cloud' (EC2). You'll find more information here: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html
Basically you just grab one of the standard linux instances, boot it up and login in. You can then use it like your local computer, specifically install and run JEMRIS. The only difference to your local computer is that during bootup you can decide whether your instance should run with 1, 4, 8 or even 64 CPUs, depending on your simulation needs.
 
Cheers,
Daniel
 
Gesendet: Mittwoch, 06. April 2022 um 14:36 Uhr

Von: "Xin Chen" <xin.ch...@gmail.com>
An: "JEMRIS" <jem...@googlegroups.com>
Betreff: Re: JEMRIS parallel computation

Xin Chen

unread,
Apr 11, 2022, 1:10:54 PM4/11/22
to JEMRIS
Hi Daniel,

Could you please share the commands for installing and running JEMRIS (e.g. the latest distribution jemris-2.9.0-Linux.deb) on EC2? I have a Linux instance running on AWS but this is all new to me.

Thanks!
Xin

Reply all
Reply to author
Forward
0 new messages