root/ompi/mca/vprotocol/pessimist/vprotocol_pessimist_sender_based_types.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * Copyright (c) 2004-2007 The Trustees of the University of Tennessee.
   3  *                         All rights reserved.
   4  * $COPYRIGHT$
   5  *
   6  * Additional copyrights may follow
   7  *
   8  * $HEADER$
   9  */
  10 
  11 #ifndef __VPROTOCOL_PESSIMIST_SENDERBASED_TYPES_H__
  12 #define __VPROTOCOL_PESSIMIST_SENDERBASED_TYPES_H__
  13 
  14 #include "ompi_config.h"
  15 #include "vprotocol_pessimist_event.h"
  16 
  17 BEGIN_C_DECLS
  18 
  19 /* There is several different ways of packing the data to the sender-based
  20  * buffer. Just pick one.
  21  */
  22 #define SB_USE_PACK_METHOD
  23 #undef SB_USE_PROGRESS_METHOD
  24 #undef SB_USE_CONVERTOR_METHOD
  25 
  26 typedef struct vprotocol_pessimist_sender_based_t
  27 {
  28     int sb_pagesize;        /* size of memory pages on this architecture */
  29 #ifdef SB_USE_CONVERTOR_METHOD
  30     uintptr_t sb_conv_to_pessimist_offset; /* end of request from req_conv */
  31 #endif
  32     int sb_fd;              /* file descriptor of mapped file */
  33     off_t sb_offset;        /* offset in mmaped file          */
  34     uintptr_t sb_addr;      /* base address of mmaped segment */
  35     size_t sb_length;       /* length of mmaped segment */
  36     uintptr_t sb_cursor;    /* current pointer to writeable memory */
  37     size_t sb_available;    /* available space before end of segment */
  38 
  39 #ifdef SB_USE_PROGRESS_METHOD
  40     opal_list_t sb_sendreq; /* requests that needs to be progressed */
  41 #endif
  42 } vprotocol_pessimist_sender_based_t;
  43 
  44 typedef struct vprotocol_pessimist_sender_based_header_t
  45 {
  46     size_t size;
  47     int dst;
  48     int tag;
  49     uint32_t contextid;
  50     vprotocol_pessimist_clock_t sequence;
  51 } vprotocol_pessimist_sender_based_header_t;
  52 
  53 typedef struct vprotocol_pessimist_sender_based_request_t
  54 {
  55     uintptr_t cursor;
  56     size_t bytes_progressed;
  57     convertor_advance_fct_t conv_advance;
  58     uint32_t conv_flags;
  59 } vprotocol_pessimist_sender_based_request_t;
  60 
  61 
  62 END_C_DECLS
  63 
  64 #endif /* defined(VPROTOCOL_PESSIMIST_SENDERBASED_TYPES_H)*/
  65 

/* [<][>][^][v][top][bottom][index][help] */