Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- question about PARDISO statistical information output

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

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-21-2010
06:43 AM

136 Views

question about PARDISO statistical information output

================ PARDISO: solving a complex nonsym. system ================

Summary PARDISO: ( solve to solve )

================

Times:

======

Time solve : 0.166810 s

Time total : 0.527333 s total - sum: 0.360523 s

The time solve is much much less than the "time total", and then the sum actually seems to be the difference. I couldn't find any information in the MKL documentation on this output. What exactly do these times represent? I'm asking because PARDISO isn't performing nearly as fast as I would want it to, and if I could get it to run 3x as fast (by limiting what I guess is overhead before and after the solve?), it would be a huge benefit. Thanks.

Link Copied

15 Replies

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-21-2010
09:58 PM

136 Views

Time solve : 0.166810 s - this is the time of the Solution phase ( 33)

0.360523 s == this the time ofReordering + Numeric Factorization (phases 11 and 22 correspondingly)

Time total : 0.527333 s total - sum: 0.360523 s

>>The time solve is much much less than the "time total"

Yes, this is the expected behavior:thereorderingand numeric factorizationphases,take much more time then the solution phase.

--Gennady

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-22-2010
02:27 PM

136 Views

OK, thanks for the response. I'd like to store the factorization in memory, as I'm calling the solve multiple times iteratively with different right-hand-sides. I've read about this on the forum, and it seems like the way to do this is to either use the maxfct/mnum functionality, or to store the pointer when you do the factorization somewhere in memory. I have several matrices of different sizes that I would like to store the factorizations for, so I'm guessing I should use the "store the pointers" approach.

So I have the pardiso pointer stored in void *pardisoPt[64]. I can create a new pointer with void *myPardisoPt[64], and then set them equal to each other iteratively:

for (i = 0; i < 64; i++) {

myPardisoPt*=pardisoPt ;*

}

And then when I call PARDISO with phase=33, I'd use myPardisoPt, and it would use the factorization it's already done? Thanks.

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-22-2010
03:13 PM

136 Views

pardiso_read_ooc_file: Read error: No such file or directory

PARDISO_OOC_NUMBER_OF_READ_NOT_EQUAL_COUNT occured: blkslv1_unsym_ooc read 1 lindx

By default, it should store stuff in the current working directory, right? I have ooc_temp files stored in the directory; do I have to manually set the environment variable for the path PARDISO looks in?

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-23-2010
09:31 AM

136 Views

When I set the matrix type to 6 (Complex and symmetric matrix), is this complex and symmetric or complex and hermitian? i.e. if the matrix element (1,2) is 1+2j, is the matrix element (2,1) 1+2j or 1-2j?

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-23-2010
09:26 PM

136 Views

--Gennady

Gennady_F_Intel

Moderator

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-23-2010
09:37 PM

136 Views

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-24-2010
04:26 PM

136 Views

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

04-29-2010
11:35 AM

136 Views

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-03-2010
08:14 AM

136 Views

Sergey_Solovev__Inte

New Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-03-2010
10:13 PM

136 Views

If you didnt change matrix and changed just right hand size (rhs), you can run only phase=33 with new rhs. Let me note that:

1) Should to use same handle() array as on previous phases 11 and 22.

2) Dont run phase=-1, because this phase frees all PARDISO memory and internal data.
gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-11-2010
08:39 AM

136 Views

basel

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-11-2010
10:43 AM

136 Views

I am the author of PARDISO. I think you are using iterative refinement and it seems that you are doing two or three solve steps (this is the difference in the "sum" timing)

Olaf

www.pardiso-project.org

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-11-2010
11:15 AM

136 Views

EDIT: Can you turn iterative refinement completely off?

Thanks.

Konstantin_A_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-13-2010
11:53 PM

136 Views

Intel MKL PARDISO does NOT perform itarative refinements ONLY when iparm(8) was set to 0 and there were no pertrubed pivots during the factorization.

In all other cases at least 1 iteration refinement step will be performed.

Regards,

Konstantin

gandalf85p

Beginner

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

05-18-2010
07:36 AM

136 Views

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

For more complete information about compiler optimizations, see our Optimization Notice.