/* Copyright 1995 Jonathan C. Hardwick */

#define MAXPROCS 66
#define BUFSIZE (2 * MAXPROCS)
#define PROCS_NOT_CHUNKS -1
#define TRUE 1
#define FALSE 0

#define MGR_WKR_QUIT_TAG	1
#define MGR_WKR_FROM_TAG	2
#define MGR_WKR_TO_TAG		3
#define WKR_MGR_DONE_TAG	4
#define WKR_MGR_HELP_TAG	5
#define MGR_WKR_TOUGH_TAG	6
#define WKR_WKR_DATA_TAG	7
#define LDR_WKR_ADD_TAG		8
#define MGR_LDR_SYNC_TAG	10
#define LDR_MGR_SPLIT_TAG	11
#define LDR_MGR_SYNC_TAG	12
#define GROUP_INTER_TAG		13
#define SINGLE_INTER_TAG	14

#ifdef MPILOG
  #define PIVOT_START	1
  #define PIVOT_END	2
  #define PARTN_START	3
  #define PARTN_END	4
  #define GATHER_START	5
  #define GATHER_END	6
  #define COMM_START	7
  #define COMM_END	8
  #define SERIAL_START	9
  #define SERIAL_END	10
  #define ASSIGN_START	11
  #define ASSIGN_END	12
  #define ADD_START	13
  #define ADD_END	14
  #define SEND_START	15
  #define SEND_END	16
  #define RECV_START	17
  #define RECV_END	18
#else
  #define MPE_Init_log()
  #define MPE_Describe_state(w,x,y,z)
  #define MPE_Log_event(x,y,z)
  #define MPE_Finish_log(x)
#endif

#define min(a,b) ((a) < (b) ? (a) : (b))

#ifdef MPI_sun4
  extern char *printf();
#endif

/* Doesn't seem to be a standard ANSI C location for these. */
extern int getopt (int argc, char **argv, char *optstring);
extern char *optarg;
extern long random (void);
extern void srandom (int seed);

extern void ckp (char *str);
