Performance enhancement in computing difftime
running the perf profiler on slurmctld on our production cluster (with select/cons_res) showed that with our configuration & workload highest up in the profile are calls to difftime() and _cr_job_list_sort(), in total accounting for ~37% of the total runtime. By sacrificing some theoretical portability by replacing the calls to difftime() with a simple inline subtraction that 37% should be substantially reduced. As I saw identical code also in the linear and serial plugins, I fixed those in the same manner, although I don't know if this performance issue turns up when using those plugins.
Showing
- src/common/macros.h 10 additions, 0 deletionssrc/common/macros.h
- src/plugins/select/cons_res/select_cons_res.c 1 addition, 1 deletionsrc/plugins/select/cons_res/select_cons_res.c
- src/plugins/select/linear/select_linear.c 1 addition, 1 deletionsrc/plugins/select/linear/select_linear.c
- src/plugins/select/serial/select_serial.c 1 addition, 1 deletionsrc/plugins/select/serial/select_serial.c
Loading
Please register or sign in to comment