HPL_pdlange(3)
π HPL_pdlange β it's giving norms, bestie π
okay so this is a page from the HPL Library Functions manual (the whole HPL 2.2 situation), and today's main character is HPL_pdlange. Sit down, hydrate, and let's compute a matrix norm together. π«Ά
β¨ NAME β¨
HPL_pdlange β Compute ||A||. that's it, that's the whole job, she computes a norm and she does it flawlessly π
πΈ SYNOPSIS πΈ
#include "hpl.h"
double HPL_pdlange( const HPL_T_grid * GRID, const HPL_T_NORM NORM,
const int M, const int N, const int NB, const double * A, const int LDA
);
π¦ DESCRIPTION π¦
so HPL_pdlange hands you back the value of the one norm, or the infinity norm, or the element of largest absolute value of a distributed matrix A, depending on the vibe you requested:
max(abs(A(i,j)))whenNORM = HPL_NORM_A,norm1(A), whenNORM = HPL_NORM_1,normI(A), whenNORM = HPL_NORM_I,
where norm1 is the one norm of a matrix (maximum column sum) and normI is the infinity norm of a matrix (maximum row sum).
okay important lore drop π₯ β max(abs(A(i,j))) is not a matrix norm. like, technically speaking, not a norm. she's just the biggest absolute value hanging out in there. don't let anyone tell you otherwise, no cap.
π ARGUMENTS π
every single one of these, in order, because we respect the interface in this house π
GRIDβ (local input)const HPL_T_grid *β on entry,GRIDpoints to the data structure containing the process grid information. it's the map, bestie πΊοΈNORMβ (global input)const HPL_T_NORMβ on entry,NORMspecifies the value to be returned by this function, as described up above. you pick the flavor, she picks the math β¨Mβ (global input)const intβ on entry,Mspecifies the number of rows of the matrixA.Mmust be at least zero.Nβ (global input)const intβ on entry,Nspecifies the number of columns of the matrixA.Nmust be at least zero.NBβ (global input)const intβ on entry,NBspecifies the blocking factor used to partition and distribute the matrix.NBmust be larger than one.Aβ (local input)const double *β on entry,Apoints to an array of dimension(LDA,LocQ(N)), that contains the local pieces of the distributed matrixA. local pieces only, she's distributed, that's the whole point πLDAβ (local input)const intβ on entry,LDAspecifies the leading dimension of the arrayA.LDAmust be at leastmax(1,LocP(M)).
π SEE ALSO π
the girlies she runs with:
HPL_pdlaprnt (3)HPL_fprintf (3)
π and that's the page π
written up as part of HPL 2.2, dated February 24, 2016 β and yeah, she still eats. go forth, compute your norms, and remember: max(abs(A(i,j))) is not a matrix norm, iykyk. periodt. π
πΈβ¨
π¦ where this page comes from
- fedora 43: hpl-doc 2.2-22.fc43 Β· LicenseRef-Callaway-BSD-with-advertising
- fedora 44: hpl-doc 2.2-23.fc44 Β· LicenseRef-Callaway-BSD-with-advertising
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms