Very strange scalability problem on a workstation

Questions and remarks about code_saturne usage
Forum rules
Please read the forum usage recommendations before posting.
Yvan Fournier
Posts: 4070
Joined: Mon Feb 20, 2012 3:25 pm

Re: Very strange scalability problem on a workstation

Post by Yvan Fournier »

Hello,

Strange that the setttings in the .cfg file have no effect. In theory, they should appear in run_solver (just the same as when you edit that file manually, as you have done).

Regarding the fact that no time step was run, in the log file, it seems the number of requested time steps was -1 (so you have an immediate exit). Can you check your setup.xml and user-defined functions here ? Binding to sockets should not have any influence on this.

Regards,

Yvan
Antech
Posts: 197
Joined: Wed Jun 10, 2015 10:02 am

Re: Very strange scalability problem on a workstation

Post by Antech »

It's strange but there are lots of iterations set in XML.

Code: Select all

<time_parameters>
      <iterations>10000000</iterations>
      <max_courant_num>2</max_courant_num>
      <max_fourier_num>10</max_fourier_num>
      <property label="CourantNb" name="courant_number"/>
      <property label="FourierNb" name="fourier_number"/>
      <property label="LocalTime" name="local_time_step"/>
      <thermal_time_step status="off"/>
      <time_passing>2</time_passing>
      <time_step_max_factor>1000</time_step_max_factor>
      <time_step_min_factor>0.01</time_step_min_factor>
      <time_step_ref>0.0001</time_step_ref>
      <time_step_var>0.1</time_step_var>
    </time_parameters>
And it takes correct XML:

Code: Select all

[setup]

param: BL-G000-R000-S000-Preview.xml

[job_defaults]

n_procs: 7
n_threads: 

[run]

id: Test
Yvan Fournier
Posts: 4070
Joined: Mon Feb 20, 2012 3:25 pm

Re: Very strange scalability problem on a workstation

Post by Yvan Fournier »

Hello,

Does the number of time steps actually run change when you change the mpirun/mpiexec command ?
This would be surprising, and if there is a bug here, it would seem quite subtle.

Best regards,

Yvan
Antech
Posts: 197
Joined: Wed Jun 10, 2015 10:02 am

Re: Very strange scalability problem on a workstation

Post by Antech »

Hello. I think it's just not enough to start run_solver script. I need to execute install/bin/code_saturne run... to start run properly. The problem with MPI options was that I edited the same configuration file in backup directory tree instead of directory Saturne starts from. Now "socket" affinity sets but it doesn't help with 7 processes, I have the same run speed (60...70s per iteration for the test case with 7-million mesh).
I also tried 2 processes + 2 threads, it leads to very slow calculation although 4 cores are loaded continuosly. I has speed of ~3 processes although 4 cores are loaded.
Looks like there is no way 2-slots machine will run faster. To provide reasonable memory bandwidth, cores to slots ratio must be lower than 1.5...2 for commonly used DDR3 sticks like 1600 MHz or 1866 MHz (to be more precise it depends on particular cores and RAM, maybe also memory controller in CPU). For example, on our G34 server boards there are 24 cores and 16 DDR3 slots (1600 MHz RAM sticks) so the "slot ratio" is 1.5. In other (ATX) 2011v3 machine there are 12 cores and 4 slots giving the slot ratio of 3 and there is actually not ideal scalability with 12 processes (2x faster than 4 cores while it should be 3x faster). For 2-slots PC this ratio is 6 that is obviously "too much".
Anyway, thanks for your support and explanations. It's great that you help people with Saturne usage for so many years.
Post Reply