- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
being a novice with MKL usage on DualCore machine, I am completely confused...
I have a FORTRAN code, which is dominated by BLAS/LAPACK calls, no OMP pragmas.
The code is compiled by ifort with -openmp, and linked to MKL library.
Running this code with no OMP_NUM_THREADS set, or with =1, I got faster time comparing with run with OMP_NUM_THREADS=2.
I thought that I will see an improvement, by allowing MKL to use 2 cores, but the result is oposite.
What can be wrong??
being a novice with MKL usage on DualCore machine, I am completely confused...
I have a FORTRAN code, which is dominated by BLAS/LAPACK calls, no OMP pragmas.
The code is compiled by ifort with -openmp, and linked to MKL library.
Running this code with no OMP_NUM_THREADS set, or with =1, I got faster time comparing with run with OMP_NUM_THREADS=2.
I thought that I will see an improvement, by allowing MKL to use 2 cores, but the result is oposite.
What can be wrong??
Link Copied
2 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
May be the problem is with your method of measuring running time. If you are using cpu_time(), then take into account that this function returns total time consumed on both CPU's, e.g. if your program ran for 1 minute with total load of both processors, this function will return 2 minutes (1 min for one CPU +1 min for another one), which would compare unfavorably to the running time on 1 CPU due to some overhead.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks! It was indeed my stupidity - to look at CPU time :(

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page