WTIME = wtime.c MACHINE = -DIBM Chapter 9. Measuring and tuning applications  261 $ cat jobscript #! /bin/bash #BSUB -q excl #BSUB -J NPB-22cpu-smt2 #BSUB -nnodes 1 #BSUB -alloc_flags "smt2" #BSUB -o NPB-22cpu-smt2.%J ### End BSUB Options and begin shell commands export OMP_DYNAMIC="FALSE" export OMP_SCHEDULE="static" # 22 cpus with SMT2 = 44 available cpus. export OMP_NUM_THREADS=44 Example 9-2 IBM Spectrum LSF job submission for running benchmarks with 22 cores in SMT-2 mode Example 9-2 shows how to submit a job to run on 22 CPU cores with SMT-2 by using 44  virtual CPUs. All of the runs were performed with the following environment variables: GLYPH<SM590000> export OMP_DYNAMIC="FALSE" GLYPH<SM590000> export OMP_SCHEDULE="static" Table 9-1 NPB: Compilation parameters that were used to build the NPB suite executable files The example considers four sets of compilation parameters. In addition to the previous  compilation parameters, the remaining parameters are listed in Table 9-1. The column  “Option set name” lists shortcuts that were used to reference each set of compilation  parameters that are presented in the “Compilation parameters” columns. Option set name Compilation parameters Varying Common -O2 -O2 -qsmp=noauto:omp  -qnosave  -qmaxmem=-1 -qarch=auto  -qtune=auto:balanced -O3 -O3 -O4 -O4 -O5 -O5 It is not feasible to cover all the compilation parameters, so the tests varied only the level of  optimization. The following parameters were common for all builds: GLYPH<SM590000> -qsmp=noauto:omp  GLYPH<SM590000> -qnosave  GLYPH<SM590000> -qmaxmem=-1  GLYPH<SM590000> -qarch=auto  GLYPH<SM590000> -qtune=auto:balanced The benchmarks were submitted through IBM Spectrum Load Sharing Facility (IBM Spectrum  LSF) by using  jsrun  as the job launcher. IBM Spectrum LSF configured the node for the  needed SMT level, and  jsrun  made sure to pack the requested OpenMP threads into all  available CPUs in each core. 