next up previous
Next: Non-SMPlib Routines Up: Application Programming Interface Previous: Data Reduction

3.6 Utility Routines

int SMP_Debug(int newflag);

INTEGER FUNCTION SMP_DEBUG(NEWFLAG)
INTEGER NEWFLAG

int SMP_Errcode(void);

INTEGER FUNCTION SMP_ERRCODE()

char *SMP_Errstring(int errcode);

SUBROUTINE SMP_ERRSTRING(ERRCODE, ERRSTR)
INTEGER ERRCODE
CHARACTER ERRSTR*(*)

int SMP_Getoption(char *sopt, char *svalue, int lvalue);

SUBROUTINE SMP_GETOPTION(SOPT, SVALUE, IFLAG)
CHARACTER SOPT*(*), SVALUE*(*)
INTEGER IFLAG

int SMP_Myid(void);

INTEGER FUNCTION SMP_MYID()

int SMP_Numprocs(void);

INTEGER FUNCTION SMP_NUMPROCS()

void SMP_Perror(char *msg);

SUBROUTINE SMP_PERROR(MSG)
CHARACTER MSG*(*)

void SMP_Pinit_flag(int pinit, int pinit_step, int flag);

SUBROUTINE SMP_PINIT_FLAG(PINIT, PINIT_STEP, FLAG)
INTEGER PINIT, PINIT_STEP, FLAG

int SMP_Setoption(char *sopt, char *svalue);

SUBROUTINE SMP_SETOPTION(SOPT, SVALUE, IFLAG)
CHARACTER SOPT*(*), SVALUE*(*)
INTEGER IFLAG

void SMP_Version(char **verno, char **vdate);

SUBROUTINE SMP_VERSION(VERNO, VDATE)
CHARACTER VERNO*(*), VDATE*(*)

double SMP_Wtime(void);

DOUBLE PRECISION FUNCTION SMP_WTIME()


The following routines define a set of timers besides the SMP_Wtime() function. Maximum number of timers is 64. The ``timer" field is from 1 to 64. The timer routines are not thread-safe.

void SMP_Timer_init(int timer);

SUBROUTINE SMP_TIMER_INIT(TIMER)
INTEGER TIMER

void SMP_Timer_start(int timer);

SUBROUTINE SMP_TIMER_START(TIMER)
INTEGER TIMER

void SMP_Timer_stop(int timer);

SUBROUTINE SMP_TIMER_STOP(TIMER)
INTEGER TIMER

double SMP_Timer_read(int timer);

DOUBLE PRECISION FUNCTION SMP_TIMER_READ(TIMER)
INTEGER TIMER

void SMP_Timer_string(int timer, char *str);

SUBROUTINE SMP_TIMER_STRING(TIMER, STR)
INTEGER TIMER
CHARACTER STR*(*)

void SMP_Timer_print(int timer);

SUBROUTINE SMP_TIMER_PRINT(TIMER)
INTEGER TIMER


next up previous
Next: Non-SMPlib Routines Up: Application Programming Interface Previous: Data Reduction
Haoqiang Jin 2005-08-10