...
Code Block |
---|
-Dduracloud.bridge.threads-per-job=5" |
This setting defines the number of threads that can be allocated for transferring files for each snapshot that is in progress.
What setting values should I use?
Together, the size of the jobTaskExecutor pool and the threads-per-job setting define your CPU utilization. Exactly how this translates to normalized load average can only be determined by experimentation.
The production DuraCloud Vault bridge application during a period of high activity in Jan-Mar 2018 landed on these settings, which provided the preferred load average:
- jobTaskExecutor size (maxPoolSize and corePoolSize): 7
- threads-per-job: 5
The total potential threads with these settings is 7*5 = 35.
This was with a setting of 24 CPU cores on the bridge VM. This suggests that a ratio of potential threads to CPU cores of (35 / 24) 1.45 is about right.
Attempting to achieve the same ratio for a machine with 8 CPU cores, might suggest settings like:
- jobTaskExecutor size (maxPoolSize and corePoolSize): 4
- threads-per-job: 3
Total potential threads = 12. Ratio of potential threads to CPU cores = 1.5.