| |
 |  |  |
 | Command |  | Argument |  | Datatype |  | Default |
 | Min |
 | Max |  |  |
 | Format: |
 | Processors |
| Number = Number of processors to use |  | INT |  | - |  | 1 |
 | 16 |
 |  |  | Python: |  | Processors(number) resultlist = Processors() |  |  |  | Menu: |
 | Options > Processors |
 |  |  | Related: |  | Sim |
 |  |  | Required: |  |
|  |  |
The Processors command tells YASARA how many processors to use in those parts of the program that support parallel execution. Currently these are:
- Molecular simulations with all force fields except NOVA.
- Molecular graphics and shadows.
- Calculation of numeric molecular surfaces and volumes.
Optimal performance is achieved if the Processors
setting matches the number of logical processors in your computer (e.g. for a Pentium D Extreme Edition,
with two CPU cores and hyperthreading enabled, you would set Processors
to 4). Here are a few additional hints:
- YASARA does not complain if you set Processors too high (e.g. 6 on a simple 1 CPU machine), but performance will be lower due to the task-switching overhead. Since a simulation is influenced by the number of processors used, this feature allows you to reproduce a simulation run on multiple CPUs also on a single CPU (assuming it's a similar CPU and operating system).
- If you want to run two instances of YASARA in parallel on the same machine, select only half of the available processors for optimal performance.
- When longrange interactions are activated, YASARA currently reaches a performance limit at 3 to 4 CPUs. Providing 5 or more CPUs will thus not speed up simulations any further.
- The parallel MD performance is reduced on old Linux kernels like 2.4.X and before, since these contain an unsolvable problem in the process scheduler. Use kernel 2.6.X or higher.
- If you choose two or more processors, YASARA needs to do its own scheduling for optimal performance and cache usage. As a consequence, the main YASARA process is bound to a certain CPU.
- When running a simulation on more than one processor, the Linux 'top' command usually shows a CPU usage close to 100*N%. In some Linux distributions, there seems to be a bug in 'top' that makes it always show less than 100%. Neverthess, YASARA correctly uses the selected number of CPUs.
Example 1:
Processors 1
Use only one processor.
Example
2:
Processors 4
Use four processors in parallel.
Example 3:
Processors all
Use all available processors.
Example 4:
used,available = Processors
Assign the numbers of used and available processors to variables
'used' and 'available'.
|