- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
HI,
I am creating 4 CPU threads that at each of them I want to use MKL's DSS solver, I have a question:
- As these threads are working in parallel, is it possible to have access to the DSS's functionssimultaneouslyat each thread?
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
what do mean by access? Please elaborate. Do you want to run 4 independent solvers? What about data sharing (are problems fully independent?).
A.
what do mean by access? Please elaborate. Do you want to run 4 independent solvers? What about data sharing (are problems fully independent?).
A.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have 4 tasks that are done independently by 4 cpu threads on a quad core cpu. They use the share memory to communicate. In each of these tasks I need to solve Ax=b with DSS. What I meant was if it is possible to call the same functions (from DSS routine) in the process of parallel threads? and if these call are run can be runsimultaneously?
The reason that I am asking this question is that, before this I was using my own LU solver, not DSS, and when I had 4 cpu threads the computation time reduced to onequarter in compare with a single thread computation, but now that I am using DSS at each thread I am not seeing any acceleration in compare with a single thread computation (with DSS)!!
Please let me know if it is not clear.
any idea?!
Thank you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Vahid,
Yes, it's possible to call DSS from different OpenMP threads, it's not a problem. As I see, you use 4 own threads and don;t need DSS/PARDISO to be threaded inside. In this case I would recommend you to link with MKL in sequential mode to reduce OpenMP-related overhead in MKL. But it should work for threaded MKL as well.
And of course, you will not observe any speed-up between a single DSS task and 4 DSS tasks ran in parallel. Your gain here is that you solve 4 tasks during the about the same time as you would solve 1 task.
Regards,
Konstantin
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
First of all sorry to write this in this thread. But as I saw that you're experts with this tool, you might be able to give me some help.
I've posted a new thread in http://software.intel.com/en-us/forums/showthread.php?t=78926&o=a&s=lr
I'd really appreciate any kind of help from you, since I don't know what else to do to have this problem solved.
Thanks!!
First of all sorry to write this in this thread. But as I saw that you're experts with this tool, you might be able to give me some help.
I've posted a new thread in http://software.intel.com/en-us/forums/showthread.php?t=78926&o=a&s=lr
I'd really appreciate any kind of help from you, since I don't know what else to do to have this problem solved.
Thanks!!
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