OpenMPI 0.1.1

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

fcoll_two_phase.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_TWO_PHASE_EXPORT_H
21 #define MCA_FCOLL_TWO_PHASE_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"
28 #include "ompi/mca/fcoll/base/base.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_two_phase_priority;
36 extern int mca_fcoll_two_phase_num_io_procs;
37 extern int mca_fcoll_two_phase_constant_cbs;
38 extern int mca_fcoll_two_phase_cycle_buffer_size;
39
40 OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_two_phase_component;
41
42 /* API functions */
43
44 int mca_fcoll_two_phase_component_init_query(bool enable_progress_threads,
45 bool enable_mpi_threads);
46 struct mca_fcoll_base_module_1_0_0_t *
47 mca_fcoll_two_phase_component_file_query (mca_io_ompio_file_t *fh, int *priority);
48
49 int mca_fcoll_two_phase_component_file_unquery (mca_io_ompio_file_t *file);
50
51 int mca_fcoll_two_phase_module_init (mca_io_ompio_file_t *file);
52 int mca_fcoll_two_phase_module_finalize (mca_io_ompio_file_t *file);
53
54 int mca_fcoll_two_phase_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_two_phase_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_two_phase_file_read_all_end (mca_io_ompio_file_t *fh,
66 void *buf,
67 ompi_status_public_t * status);
68
69 int mca_fcoll_two_phase_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_two_phase_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_two_phase_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_TWO_PHASE_EXPORT_H */
ompi_datatype_t
Definition: ompi_datatype.h:68
mca_fcoll_base_module_1_0_0_t
Definition: fcoll.h:150
base.h
MCA fcoll base framework public interface functions.
mca.h
Top-level interface for all MCA components.
mca_io_ompio_file_t
Back-end structure for MPI_File.
Definition: io_ompio.h:121
ompi_status_public_t
Definition: mpi.h:337
mca_fcoll_base_component_2_0_0_t
Definition: fcoll.h:84