Page 1 of 1

qusetion about running time of routine ZHEEVX

PostPosted: Mon Aug 01, 2011 9:35 pm
by simon_zhao
I have a question about running time.
I use the routine ZHEEVX to get the largest eigenvalue and its corresponding eigenvector of a hermite matrix with (1000,1000) dimension.
The parameter LWORK is required to larger or equal to 2 * N ( which is 2000 ).
I set LWORK = 2000, and get the outcome using about 7.1 seconds.
Then by the document , I change LWORK to -1 , and get the value for LWORK from WORK(1), which is 33000.
However , I get the outcome using about 7.9 seconds.
Beacause of block algorithm , it is supposed that time using LWORK = 33000( from WORK(1) ) is shorter than time using LWORK = 2000(the least acceptable value for LWORK).
In fact , I get the opposite outcome about time.
My computer can run lapack routine normally.
Please help me and give me the reason. Thank you !

Re: qusetion about running time of routine ZHEEVX

PostPosted: Tue Aug 16, 2011 9:40 am
by admin
Did you try changing the dimension of your matrix?
The biggest your matrix, the better the improvment.

Also NB has to be tuned, at the moment your nb is at 32, maybe a higher value of NB will give you better result. You can try for example 64, 128, etc...