- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are using Intel Visual Fortran Composer XE 2011 with MKL library, and we trying to solve large matrices using pardiso using multithread enabled but it's not working. When runing mkl_get_max_threads() it shows only 2 instead of 4 even if we use call mkl_set_num_threads(4) it still shows 2 and we can see from Task Manager that not all the threads are working 100% just 20% and only sometime...
We set
iparm(2) = 3 ! fill-in reordering from METIS
iparm(3) = 4 ! numbers of processors
This is runing on Intel Core i7 with 2 Cores and 4 Threads
Can anyone please advise why this is not working?
Thanks in advance.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Currently, iparm(3) is not supported in Intel MKL PARDISO. Do not use it to set the number of threads. Instead, you should use either the support function mkl_set_num_threads, or the environment variable MKL_NUM_THREADS.
Please try this before you call pardiso:
mkl_set_dynamic(0);
mkl_set_num_threads(4);
Let us know if it works.You can also check the output statistics from PARDISO to see how many threads are actually used. You'd look for a line in the output that starts with "< Parallel Direct Factorization with number of processors: >".
![](/skins/images/B7BA37F9CE4B52FF7CAE1FB0388839C8/responsive_peak/images/icon_anonymous_message.png)
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page