18 #include <flecsi-config.h> 20 #if !defined(FLECSI_ENABLE_MPI) 21 #error FLECSI_ENABLE_MPI not defined! This file depends on MPI! 37 template<
typename TYPE>
40 inline static MPI_Datatype type() {
41 static MPI_Datatype data_type = MPI_DATATYPE_NULL;
43 if(data_type == MPI_DATATYPE_NULL) {
44 MPI_Type_contiguous(
sizeof(TYPE), MPI_BYTE, &data_type);
45 MPI_Type_commit(&data_type);
53 inline static MPI_Datatype
type() {
54 if(
sizeof(
size_t) == 8) {
55 return MPI_UNSIGNED_LONG_LONG;
65 inline static MPI_Datatype
type() {
66 return MPI_SIGNED_CHAR;
72 inline static MPI_Datatype
type() {
73 return MPI_UNSIGNED_CHAR;
79 inline static MPI_Datatype
type() {
86 inline static MPI_Datatype
type() {
87 return MPI_UNSIGNED_SHORT;
93 inline static MPI_Datatype
type() {
100 inline static MPI_Datatype
type() {
107 inline static MPI_Datatype
type() {
114 inline static MPI_Datatype
type() {
121 inline static MPI_Datatype
type() {
128 inline static MPI_Datatype
type() {
129 return MPI_LONG_DOUBLE;
std::string type()
Definition: demangle.hh:44
Definition: mpi_type_traits.hh:38
Definition: control.hh:31