Hi,
I am using MKL platform. To use multithreading that I have followed following steps in option.mk file,
1.set ITENSOR_USE_OMP=1
2.set export MKL_NUM_THREADS=1
by calling following commands for same program
- OMP_NUM_THREADS=1 ./program
- OMP_NUM_THREADS=2 ./program
- OMP_NUM_THREADS=3 ./program
- OMP_NUM_THREADS=4 ./program
Total calculation time noted for each thread and I get,
run1 run2
no. of threads time(in milliseconds) time(in milliseconds)
thread 1 91523 91894
thread 2 78757 92365
thread 4 87575 85565
thread 8 85563 91352
Also here (“ConserveQNs=”,false).
Why do I get different calculation time for different threads? Or this benefits only for itensor code that conserves QN.