NewMadeleine

Documentation

« back to PM2 home.
nm_mpi_datatype_s Struct Reference

Internal datatype. More...

#include <nm_mpi_private.h>

Collaboration diagram for nm_mpi_datatype_s:

Data Fields

int id
 
nm_mpi_type_combiner_t combiner
 combiner of datatype elements
 
nm_mpi_count_t count
 number of blocks in type map
 
int is_compact
 whether contiguous && lb == 0 && extent == size
 
int is_contig
 whether entirely contiguous
 
nm_mpi_count_t elements
 number of base elements in the datatype
 
nm_mpi_count_t lb
 lower bound of type
 
nm_mpi_count_t extent
 extent of type; upper bound is lb + extent
 
nm_mpi_count_t true_lb
 
nm_mpi_count_t true_extent
 
size_t size
 size of type
 
struct nm_data_properties_s props
 pre-computed data properties
 
struct nm_refcount_s refcount
 number of references pointing to this type (active communications, handle)
 
int committed
 whether committed or not
 
union { 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
   }   DUP 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
   }   RESIZED 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
   }   CONTIGUOUS 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      nm_mpi_count_t   blocklength 
 
      nm_mpi_aint_t   stride 
 stride in multiple of datatype extent More...
 
   }   VECTOR 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      nm_mpi_count_t   blocklength 
 
      nm_mpi_aint_t   hstride 
 stride in bytes More...
 
   }   HVECTOR 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      struct nm_mpi_type_indexed_map_s
 
         nm_mpi_count_t   blocklength 
 
         nm_mpi_aint_t   displacement 
 displacement in multiple of oldtype extent More...
 
      }   p_map 
 
   }   INDEXED 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      struct nm_mpi_type_hindexed_map_s
 
         nm_mpi_count_t   blocklength 
 
         nm_mpi_aint_t   displacement 
 displacement in bytes More...
 
      }   p_map 
 
   }   HINDEXED 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      nm_mpi_count_t   blocklength 
 
      nm_mpi_count_t *   array_of_displacements 
 
   }   INDEXED_BLOCK 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      nm_mpi_count_t   blocklength 
 
      nm_mpi_aint_t *   array_of_displacements 
 
   }   HINDEXED_BLOCK 
 
   struct { 
 
      struct nm_mpi_datatype_s *   p_old_type 
 
      int   ndims 
 
      int   order 
 
      struct nm_mpi_type_subarray_dim_s
 
         int   size 
 
         int   subsize 
 
         int   start 
 
      }   p_dims 
 
   }   SUBARRAY 
 
   struct { 
 
      struct nm_mpi_type_struct_map_s
 
         struct nm_mpi_datatype_s *   p_old_type 
 
         nm_mpi_count_t   blocklength 
 
         nm_mpi_aint_t   displacement 
 displacement in bytes More...
 
      }   p_map 
 
   }   STRUCT 
 
};  
 
char * name
 
struct nm_mpi_attrs_s attrs
 datatype attributes, hashed by keyval descriptor
 
size_t ser_size
 size of the datatype once serialized
 
nm_mpi_datatype_ser_tp_serialized
 serialized version of the type.
 
nm_mpi_datatype_hash_t hash
 (probably unique) datatype hash
 

Detailed Description

Internal datatype.

Definition at line 669 of file nm_mpi_private.h.

Field Documentation

◆ [union]

union { ... } nm_mpi_datatype_s

◆ array_of_displacements [1/2]

nm_mpi_count_t* nm_mpi_datatype_s::array_of_displacements

Definition at line 744 of file nm_mpi_private.h.

◆ array_of_displacements [2/2]

nm_mpi_aint_t* nm_mpi_datatype_s::array_of_displacements

Definition at line 750 of file nm_mpi_private.h.

◆ attrs

struct nm_mpi_attrs_s nm_mpi_datatype_s::attrs

datatype attributes, hashed by keyval descriptor

Definition at line 775 of file nm_mpi_private.h.

◆ blocklength

nm_mpi_count_t nm_mpi_datatype_s::blocklength

Definition at line 713 of file nm_mpi_private.h.

◆ combiner

nm_mpi_type_combiner_t nm_mpi_datatype_s::combiner

combiner of datatype elements

Definition at line 673 of file nm_mpi_private.h.

Referenced by nm_mpi_datatype_hash_common().

◆ committed

int nm_mpi_datatype_s::committed

whether committed or not

Definition at line 695 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::CONTIGUOUS

◆ count

nm_mpi_count_t nm_mpi_datatype_s::count

number of blocks in type map

Definition at line 675 of file nm_mpi_private.h.

Referenced by nm_mpi_data_build(), and nm_mpi_datatype_hash_common().

◆ displacement

nm_mpi_aint_t nm_mpi_datatype_s::displacement

displacement in multiple of oldtype extent

displacement in bytes

Definition at line 728 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::DUP

◆ elements

nm_mpi_count_t nm_mpi_datatype_s::elements

number of base elements in the datatype

Definition at line 681 of file nm_mpi_private.h.

◆ extent

nm_mpi_count_t nm_mpi_datatype_s::extent

extent of type; upper bound is lb + extent

Definition at line 685 of file nm_mpi_private.h.

Referenced by nm_mpi_datatype_get_ptr(), and nm_mpi_datatype_hash_common().

◆ hash

nm_mpi_datatype_hash_t nm_mpi_datatype_s::hash

(probably unique) datatype hash

Definition at line 778 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::HINDEXED

◆ [struct]

struct { ... } nm_mpi_datatype_s::HINDEXED_BLOCK

◆ hstride

nm_mpi_aint_t nm_mpi_datatype_s::hstride

stride in bytes

Definition at line 720 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::HVECTOR

◆ id

int nm_mpi_datatype_s::id

Definition at line 671 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::INDEXED

◆ [struct]

struct { ... } nm_mpi_datatype_s::INDEXED_BLOCK

◆ is_compact

int nm_mpi_datatype_s::is_compact

whether contiguous && lb == 0 && extent == size

Definition at line 677 of file nm_mpi_private.h.

◆ is_contig

int nm_mpi_datatype_s::is_contig

whether entirely contiguous

Definition at line 679 of file nm_mpi_private.h.

◆ lb

nm_mpi_count_t nm_mpi_datatype_s::lb

lower bound of type

Definition at line 683 of file nm_mpi_private.h.

Referenced by nm_mpi_datatype_hash_common().

◆ name

char* nm_mpi_datatype_s::name

Definition at line 774 of file nm_mpi_private.h.

◆ ndims

int nm_mpi_datatype_s::ndims

Definition at line 755 of file nm_mpi_private.h.

◆ order

int nm_mpi_datatype_s::order

Definition at line 756 of file nm_mpi_private.h.

◆ [struct]

struct { ... } ::nm_mpi_type_subarray_dim_s * nm_mpi_datatype_s::p_dims

◆ [struct] [1/3]

struct { ... } ::nm_mpi_type_indexed_map_s * nm_mpi_datatype_s::p_map

◆ [struct] [2/3]

struct { ... } ::nm_mpi_type_hindexed_map_s * nm_mpi_datatype_s::p_map

◆ [struct] [3/3]

struct { ... } ::nm_mpi_type_struct_map_s * nm_mpi_datatype_s::p_map

◆ p_old_type

struct nm_mpi_datatype_s* nm_mpi_datatype_s::p_old_type

Definition at line 700 of file nm_mpi_private.h.

◆ p_serialized

nm_mpi_datatype_ser_t* nm_mpi_datatype_s::p_serialized

serialized version of the type.

Definition at line 777 of file nm_mpi_private.h.

◆ props

struct nm_data_properties_s nm_mpi_datatype_s::props

pre-computed data properties

Definition at line 691 of file nm_mpi_private.h.

◆ refcount

struct nm_refcount_s nm_mpi_datatype_s::refcount

number of references pointing to this type (active communications, handle)

Definition at line 693 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::RESIZED

◆ ser_size

size_t nm_mpi_datatype_s::ser_size

size of the datatype once serialized

Definition at line 776 of file nm_mpi_private.h.

◆ size [1/2]

size_t nm_mpi_datatype_s::size

size of type

Definition at line 689 of file nm_mpi_private.h.

Referenced by nm_mpi_datatype_hash_common().

◆ size [2/2]

int nm_mpi_datatype_s::size

Definition at line 759 of file nm_mpi_private.h.

◆ start

int nm_mpi_datatype_s::start

Definition at line 761 of file nm_mpi_private.h.

◆ stride

nm_mpi_aint_t nm_mpi_datatype_s::stride

stride in multiple of datatype extent

Definition at line 714 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::STRUCT

◆ [struct]

struct { ... } nm_mpi_datatype_s::SUBARRAY

◆ subsize

int nm_mpi_datatype_s::subsize

Definition at line 760 of file nm_mpi_private.h.

◆ true_extent

nm_mpi_count_t nm_mpi_datatype_s::true_extent

Definition at line 687 of file nm_mpi_private.h.

◆ true_lb

nm_mpi_count_t nm_mpi_datatype_s::true_lb

Definition at line 686 of file nm_mpi_private.h.

◆ [struct]

struct { ... } nm_mpi_datatype_s::VECTOR

The documentation for this struct was generated from the following file: