Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
op2args.C File Reference
#include <functional>
#include <cmath>
#include <cstdlib>
#include <iostream>
#include "Rocblas.h"
Include dependency graph for op2args.C:

Go to the source code of this file.

Classes

struct  Rocblas::assn< T_src, T_trg >
 
struct  Rocblas::random< T >
 
struct  Rocblas::random< double >
 
struct  Rocblas::swapp< T >
 
struct  Rocblas::maxv< T >
 
struct  Rocblas::minv< T >
 
struct  Rocblas::sumv< T >
 
struct  Rocblas::nega< T >
 
struct  Rocblas::sqrta< T >
 
struct  Rocblas::acosa< T >
 

Enumerations

enum  { BLAS_MIN =1, BLAS_MAX, BLAS_SUM }
 

Functions

template<class T1 , class T2 >
bool compare_types ()
 
template<>
bool compare_types< int, int > ()
 
template<>
bool compare_types< char, char > ()
 
template<>
bool compare_types< double, double > ()
 
MPI_Op convert2mpiop (int i)
 

Enumeration Type Documentation

anonymous enum
Enumerator
BLAS_MIN 
BLAS_MAX 
BLAS_SUM 

Definition at line 617 of file op2args.C.

Function Documentation

bool compare_types ( )

Definition at line 107 of file op2args.C.

107 { return true; }
bool compare_types< char, char > ( )

Definition at line 109 of file op2args.C.

109 { return false; }
bool compare_types< double, double > ( )

Definition at line 110 of file op2args.C.

110 { return false; }
bool compare_types< int, int > ( )

Definition at line 108 of file op2args.C.

108 { return false; }
MPI_Op convert2mpiop ( int  i)

Definition at line 619 of file op2args.C.

References BLAS_MAX, BLAS_MIN, BLAS_SUM, COM_assertion, MPI_MAX, MPI_MIN, and MPI_SUM.

Referenced by Rocblas::reduce_MPI(), and Rocblas::reduce_scalar_MPI().

619  {
620  switch (i) {
621  case BLAS_MIN: return MPI_MIN;
622  case BLAS_MAX: return MPI_MAX;
623  case BLAS_SUM: return MPI_SUM;
624  default: COM_assertion(false); return MPI_SUM; // Should never reach here.
625  }
626 }
#define COM_assertion(EX)
Error checking utility similar to the assert macro of the C language.
here we put it at the!beginning of the common block The point to point and collective!routines know about but MPI_TYPE_STRUCT as yet does not!MPI_STATUS_IGNORE and MPI_STATUSES_IGNORE are similar objects!Until the underlying MPI library implements the C version of these are declared as arrays of MPI_STATUS_SIZE!The types and are OPTIONAL!Their values are zero if they are not available Note that!using these reduces the portability of MPI_IO INTEGER MPI_BOTTOM INTEGER MPI_DOUBLE_PRECISION INTEGER MPI_LOGICAL INTEGER MPI_2REAL INTEGER MPI_2DOUBLE_COMPLEX INTEGER MPI_LB INTEGER MPI_WTIME_IS_GLOBAL INTEGER MPI_GROUP_EMPTY INTEGER MPI_MAX
here we put it at the!beginning of the common block The point to point and collective!routines know about but MPI_TYPE_STRUCT as yet does not!MPI_STATUS_IGNORE and MPI_STATUSES_IGNORE are similar objects!Until the underlying MPI library implements the C version of these are declared as arrays of MPI_STATUS_SIZE!The types and are OPTIONAL!Their values are zero if they are not available Note that!using these reduces the portability of MPI_IO INTEGER MPI_BOTTOM INTEGER MPI_DOUBLE_PRECISION INTEGER MPI_LOGICAL INTEGER MPI_2REAL INTEGER MPI_2DOUBLE_COMPLEX INTEGER MPI_LB INTEGER MPI_WTIME_IS_GLOBAL INTEGER MPI_GROUP_EMPTY INTEGER MPI_MIN
blockLoc i
Definition: read.cpp:79
here we put it at the!beginning of the common block The point to point and collective!routines know about but MPI_TYPE_STRUCT as yet does not!MPI_STATUS_IGNORE and MPI_STATUSES_IGNORE are similar objects!Until the underlying MPI library implements the C version of these are declared as arrays of MPI_STATUS_SIZE!The types and are OPTIONAL!Their values are zero if they are not available Note that!using these reduces the portability of MPI_IO INTEGER MPI_BOTTOM INTEGER MPI_DOUBLE_PRECISION INTEGER MPI_LOGICAL INTEGER MPI_2REAL INTEGER MPI_2DOUBLE_COMPLEX INTEGER MPI_LB INTEGER MPI_WTIME_IS_GLOBAL INTEGER MPI_GROUP_EMPTY INTEGER MPI_SUM

Here is the caller graph for this function: