PERROR(3PVM)

πŸ“¦ version 3.4.6, in debian bookworm, ubuntu jammy

πŸ’– PERROR(3PVM) β€” pvm_perror πŸ’–

okay bestie, welcome to PVM Version 3.4's lil error-translator page, the one and only PERROR(3PVM). if your PVM call just flopped, this is the routine that tells you why. 🫢


✨ NAME ✨

pvm_perror β€” prints a message describing the last error returned by a PVM call. it's giving translator bestie energy πŸ’…


🌸 SYNOPSIS 🌸

C:

int info = pvm_perror( char *msg )

Fortran:

call pvmfperror( msg, info )

πŸŽ€ PARAMETERS πŸŽ€

  • msg β€” a character string you supply, and it gets prepended to the error message from the last PVM call. like your little personal note on top of the actual tea. πŸ’Œ
  • info β€” integer status code the routine hands back. values less than zero mean something went wrong, no cap. 🚨

πŸ¦‹ DESCRIPTION πŸ¦‹

so pvm_perror returns the error message of the last PVM call. that's it, that's the job. ✨

and you can use msg to add extra info to that error message β€” for example, where the error happened. lowkey so useful when you have no idea which call betrayed you. 😭

heads up bestie: unless it's redirected, all stdout and stderr messages get placed in the file /tmp/pvml.<uid> on the master host. so if you're staring at your terminal like "where are my messages πŸ˜€" β€” they're over there. πŸ‘€

πŸ”₯ EXAMPLES πŸ”₯

C:

if ( pvm_send( tid, msgtag ) )
     pvm_perror();

Fortran:

CALL PVMFSEND( TID, MSGTAG )
IF( INFO .LT. 0 ) CALL PVMFPERROR( 'Step 6', INFO )

see how the Fortran one is like "Step 6"? that's the msg doing its thing, labeling exactly which step ate it. iconic behavior honestly. πŸ‘‘


πŸ’€ ERRORS πŸ’€

no error condition is returned by pvm_perror. literally none. it can't fail at telling you that something else failed. main character energy fr fr. ✨


that's the whole page bestie, go forth and debug slayfully πŸ§šπŸ’œ

this was PVM Version 3.4, dated 30 August, 1993 β€” yes it's vintage, yes it still eats, mwah πŸ’‹πŸŒˆβ­
πŸ“¦ where this page comes from