Automatic Parallelisation.


    For automatic parallelization, the -apo option is to be used while compiling. (see installing Jadim)
    A first test with Jadim was aimed to see if the parallelizing of the code was efficient, using a small model. This was done with the compiler options given with Jadim, so only a -o2 optimization was used, and the -APO option was not used. The loss of performances due to the -o2 option compared to a -fast optimization is about 15% (user time : 30.212s vs/ 25.99s)
    There is an immediate loss of efficiency, by using more than one processors. This was expected since the code was not written in view of a possible parallelisation.
 

Number of CPUs
user time : 
u time/nCPUs
1
30
30
2
66
33
3
108
36
5
190
38
7
266
38
9
324
36

 

    The test was then done with another model, much larger. This makes it easier to parallelize the process for the computer. An initial gain of 20% is observed with two CPUs. This is important enough to be considered in future uses of Jadim. On a one week run, the gain is immediately of more than one day. But the use of more than two CPUs, leads to a loss of performances.

  The following test consists in comparing the performances of the whole program automatically parallelized, with only the main sub-programs parallelized.
    To find out what are the mainly used subprograms, we used speedshop. It is a tool allowing a sampling of the counter and the stack of the software. This depends on two parameters : the sample rate and the type of information sampled. The tool then generates a data file while running the software. It allows to find out where the program spends the most time.         More info on speedshop here.
    There was a difference between these two ways to parallelize the problem, but possibly due to the lack of the -APO option. This should be tested later.
 
 
 

Number of CPUs
user time : 
u time/nCPUs
automatic parallelisation.
   
1
100
100
2
163
81
aimed parallelisation
   
1
100
100
2
164
82
4
168
84

 
 
 
 
Back to index 
Back to report index