HPL_reduce(3)
π HPL_reduce(3) β the HPL Library Functions era π
okay bestie, sit down, hydrate, and let me tell you about HPL_reduce β literally one of the HPL Library Functions and honestly? she's giving reduce operation. that's it, that's the whole NAME section, no notes π
β¨ SYNOPSIS β¨
#include "hpl.h"
int HPL_reduce( void * BUFFER, const int COUNT, const HPL_T_TYPE DTYPE,
const HPL_T_OP OP, const int ROOT, MPI_Comm COMM );
look at her. six arguments. main character energy fr fr π
πΈ DESCRIPTION πΈ
so HPL_reduce does a global reduce operation across all processes of a group. slay. that's the job. that's what she does.
but here's the part you gotta hear, bestie β the input buffer is used as a workarray. which means in all processes but the accumulating process, your original data gets corrupted. π not a vibe, just a fact. she's destructive like that. lowkey iconic, highkey dangerous.
π ARGUMENTS π
BUFFER(local input/output)void *β on entry,BUFFERpoints to the buffer to be reduced. on exit, and in the process of rankROOT, this array holds the reduced data π. this buffer is also used as workspace during the operation in the other processes of the group, iykyk.COUNT(global input)const intβ on entry,COUNTtells you the number of entries inBUFFER. and bestie,COUNTmust be at least zero. no negative counts, we don't do that here π.DTYPE(global input)const HPL_T_TYPEβ on entry,DTYPEspecifies the type of the buffers operands. the type! of the operands! of the buffers! β¨OP(global input)const HPL_T_OPβ on entry,OPis a pointer to the local combine function. she's the one doing the combining. the girlboss of the operation π«Ά.ROOT(global input)const intβ on entry,ROOTis the coordinate of the accumulating process. that's the one process keeping the data. the chosen one. the main character π.COMM(global/local input)MPI_Commβ the MPI communicator identifying the process collection. the group chat, basically π¬.
π¦ SEE ALSO π¦
HPL_broadcast(3)HPL_all_reduce(3)HPL_barrier(3)HPL_min(3)HPL_max(3)HPL_sum(3)
go read those too, they're all serving π
heads up bestie: that buffer-as-workarray thing means your original data in every process except ROOT is gone-gone after this call. not corrupted-and-recoverable. corrupting. periodt. π
and that's the whole page, bestie!! this one shipped with HPL 2.2 and was dated February 24, 2016 π β yeah she's an elder but she still ate. mwah, stan, bye πβ¨π¦
π¦ 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