Skip to content

add path for TRTRZ and UNMRZ in ILAENV#1325

Open
langou wants to merge 1 commit into
Reference-LAPACK:masterfrom
langou:add_path_in_ilaenv_for_tzrzf_and_unmrz
Open

add path for TRTRZ and UNMRZ in ILAENV#1325
langou wants to merge 1 commit into
Reference-LAPACK:masterfrom
langou:add_path_in_ilaenv_for_tzrzf_and_unmrz

Conversation

@langou

@langou langou commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

This completes #1289

In #1289, @jschueller introduced dedicated paths for CTZRZF (NB2) and CUNMRZ (NB4) in GELSY

      INFO = 0
      NB1 = ILAENV( 1, 'CGEQRF', ' ', M, N, -1, -1 )
-      NB2 = ILAENV( 1, 'CGERQF', ' ', M, N, -1, -1 )
+      NB2 = ILAENV( 1, 'CTZRZF', ' ', M, N, -1, -1 )
      NB3 = ILAENV( 1, 'CUNMQR', ' ', M, N, NRHS, -1 )
-      NB4 = ILAENV( 1, 'CUNMRQ', ' ', M, N, NRHS, -1 )
+      NB4 = ILAENV( 1, 'CUNMRZ', ' ', M, N, NRHS, -1 )
      NB = MAX( NB1, NB2, NB3, NB4 )
      LWKOPT = MAX( 1, MN+2*N+NB*(N+1), 2*MN+NB*NRHS )
      WORK( 1 ) = CMPLX( LWKOPT )

But, as pointed out by @martin-frbg, #1289 (comment), these paths did not exist in ILAENV. So then ILAENV was returning the default value of NB2 = 1 and NB4 = 1.

We might accept the previous code (before PR #1289) as saying "the optimal block size for TZRZF is the same as the block size for GERQF", so we do not need to create a dedicated path for TZRZF in ILAENV, we simply call ILAENV with argument GERQF.

This commits keeps the PR as is and adds the two paths to ILAENV.

Note: It might feel "lazy" to drop the paths at the start like this. But I think it is better than hide the paths in a series of nested IFs. They are cons and pros to the nested IFs. I chose to drop it at the top.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant