OpenMPI  0.1.1
fcoll_ylib.h
1 /*
2  * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
3  * University Research and Technology
4  * Corporation. All rights reserved.
5  * Copyright (c) 2004-2006 The University of Tennessee and The University
6  * of Tennessee Research Foundation. All rights
7  * reserved.
8  * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9  * University of Stuttgart. All rights reserved.
10  * Copyright (c) 2004-2005 The Regents of the University of California.
11  * All rights reserved.
12  * Copyright (c) 2008-2011 University of Houston. All rights reserved.
13  * $COPYRIGHT$
14  *
15  * Additional copyrights may follow
16  *
17  * $HEADER$
18  */
19 
20 #ifndef MCA_FCOLL_YLIB_EXPORT_H
21 #define MCA_FCOLL_YLIB_EXPORT_H
22 
23 #include "ompi_config.h"
24 
25 #include "mpi.h"
26 #include "opal/mca/mca.h"
27 #include "ompi/mca/fcoll/fcoll.h"
29 #include "ompi/mca/io/ompio/io_ompio.h"
30 
31 BEGIN_C_DECLS
32 
33 /* Globally exported variables */
34 
35 extern int mca_fcoll_ylib_priority;
36 extern int mca_fcoll_ylib_num_io_procs;
37 extern int mca_fcoll_ylib_stripe_size;
38 extern int mca_fcoll_ylib_blocks_per_cycle;
39 
40 OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_ylib_component;
41 
42 /* API functions */
43 
44 int mca_fcoll_ylib_component_init_query(bool enable_progress_threads,
45  bool enable_mpi_threads);
47 mca_fcoll_ylib_component_file_query (mca_io_ompio_file_t *fh, int *priority);
48 
49 int mca_fcoll_ylib_component_file_unquery (mca_io_ompio_file_t *file);
50 
51 int mca_fcoll_ylib_module_init (mca_io_ompio_file_t *file);
52 int mca_fcoll_ylib_module_finalize (mca_io_ompio_file_t *file);
53 
54 int mca_fcoll_ylib_file_read_all (mca_io_ompio_file_t *fh,
55  void *buf,
56  int count,
57  struct ompi_datatype_t *datatype,
58  ompi_status_public_t * status);
59 
60 int mca_fcoll_ylib_file_read_all_begin (mca_io_ompio_file_t *fh,
61  void *buf,
62  int count,
63  struct ompi_datatype_t *datatype);
64 
65 int mca_fcoll_ylib_file_read_all_end (mca_io_ompio_file_t *fh,
66  void *buf,
67  ompi_status_public_t * status);
68 
69 int mca_fcoll_ylib_file_write_all (mca_io_ompio_file_t *fh,
70  void *buf,
71  int count,
72  struct ompi_datatype_t *datatype,
73  ompi_status_public_t * status);
74 
75 int mca_fcoll_ylib_file_write_all_begin (mca_io_ompio_file_t *fh,
76  void *buf,
77  int count,
78  struct ompi_datatype_t *datatype);
79 
80 int mca_fcoll_ylib_file_write_all_end (mca_io_ompio_file_t *fh,
81  void *buf,
82  ompi_status_public_t * status);
83 
84 END_C_DECLS
85 
86 #endif /* MCA_FCOLL_YLIB_EXPORT_H */
Definition: ompi_datatype.h:68
Definition: fcoll.h:150
MCA fcoll base framework public interface functions.
Top-level interface for all MCA components.
Back-end structure for MPI_File.
Definition: io_ompio.h:121
Definition: mpi.h:337
Definition: fcoll.h:84