-
Notifications
You must be signed in to change notification settings - Fork 466
Added an ILAENV2STAGE, fixed ILAENV in [CZ]HEEVR_2STAGE #177
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Added ilaenv2stage.f to enable the extraction of 2stage machine dependent variables from the 2stage solver without having to rely on compiling the entire library with the recursive flag. Secondly, all calls to ILAENV( 17 <= 21, ...) have been fixed to use the corresponding ILAENV2STAGE routine by translating ISPEC by -16 I.e. ILAENV( 17, ...) == ILAENV2STAGE( 1, ...) Also fixed the documentation of ilaenv.f to specify the cases of ISPEC > 16. Signed-off-by: Nick Papior <[email protected]>
This required an overloaded ilaenv2stage in the ilaenv.f in the test directories to use the PARMS(1) for ISPEC == 17. Signed-off-by: Nick Papior <[email protected]>
They called with DSY* and thus the block-sizes were not selected for complex numbers. Signed-off-by: Nick Papior <[email protected]>
@langou gentle ping, could you please comment on whether this seems like a good idea or not? My main motivation was the removal of the If this has no interest I can make a new PR with the fixes for the |
Hi Nick, I was waiting on some feedback for some stakeholders in your fix. I did not hear from them. So this is all good. Yes, thanks for the fix. I do agree that this is better like this. Thanks for the PR. Cheers, Julien. |
Great it could be of use. You are welcome. :) |
This removes the |
Yes, however in http://icl.cs.utk.edu/lapack-forum/viewtopic.php?t=1930#p5457 Julien explains that only using the correct stack size solves the problem (i.e. without frecursive), so I guess it is not really related to that flag. |
I see now that the recursive flag is for exactly that bug. It should be re-added. |
@pv I have made a PR to fix this, thanks for noticing. |
There were some missing ILAENV -> ILAENV2STAGE conversions missing. This commit fixes all calls to ILAENV that uses the parameters 17, 18, 19, 20 (the old ILAENV). I have also tested this for the issue reported in Reference-LAPACK#262. Signed-off-by: Nick Papior <[email protected]>
The
ILAENV
routine forces the entire LAPACK library to be compiled with-frecursive
or the equivalent for non-GNU compilers.This merge fixes this by adding a separate
ILAENV2STAGE
routine to query information related to the 2stage solvers, only.I.e. there are now 2
ILAENV
routines for retrieving machine dependent variables.Secondly, this merge fixes
ILAENV
for the 2stage routines[CZ]HEEVR
for their block-size queries (DSY*
was used). I know this should have went in another PR, but that would inflict with this PR.Tests are also updated to enable these changes.