1
1
Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
Этот коммит содержится в:
Gilles Gouaillardet 2018-06-13 14:51:29 +09:00
родитель 36b35ae0db
Коммит cd45c7abb6
113 изменённых файлов: 844 добавлений и 734 удалений

Просмотреть файл

@ -102,33 +102,33 @@ enum ompio_fs_type
PLFS = 4
};
typedef struct mca_io_ompio_io_array_t {
typedef struct mca_common_ompio_io_array_t {
void *memory_address;
/* we need that of type OMPI_MPI_OFFSET_TYPE */
void *offset;
size_t length;
/*mca_io_ompio_server_t io_server;*/
} mca_io_ompio_io_array_t;
/*mca_common_ompio_server_t io_server;*/
} mca_common_ompio_io_array_t;
typedef struct mca_io_ompio_access_array_t{
typedef struct mca_common_ompio_access_array_t{
OMPI_MPI_OFFSET_TYPE *offsets;
int *lens;
MPI_Aint *mem_ptrs;
int count;
} mca_io_ompio_access_array_t;
} mca_common_ompio_access_array_t;
/* forward declaration to keep the compiler happy. */
struct mca_io_ompio_file_t;
typedef int (*mca_io_ompio_generate_current_file_view_fn_t) (struct mca_io_ompio_file_t *fh,
struct ompio_file_t;
typedef int (*mca_common_ompio_generate_current_file_view_fn_t) (struct ompio_file_t *fh,
size_t max_data,
struct iovec **f_iov,
int *iov_count);
/* functions to retrieve the number of aggregators and the size of the
temporary buffer on aggregators from the fcoll modules */
typedef int (*mca_io_ompio_get_mca_parameter_value_fn_t) ( char *mca_parameter_name, int name_length );
typedef int (*mca_common_ompio_get_mca_parameter_value_fn_t) ( char *mca_parameter_name, int name_length );
struct mca_common_ompio_print_queue;
@ -136,7 +136,7 @@ struct mca_common_ompio_print_queue;
/**
* Back-end structure for MPI_File
*/
struct mca_io_ompio_file_t {
struct ompio_file_t {
/* General parameters */
int fd;
struct ompi_file_t *f_fh; /* pointer back to the file_t structure */
@ -183,7 +183,7 @@ struct mca_io_ompio_file_t {
size_t f_etype_size;
/* contains IO requests that needs to be read/written */
mca_io_ompio_io_array_t *f_io_array;
mca_common_ompio_io_array_t *f_io_array;
int f_num_of_io_entries;
/* Hooks for modules to hang things */
@ -215,85 +215,85 @@ struct mca_io_ompio_file_t {
int f_procs_per_group;
/* internal ompio functions required by fbtl and fcoll */
mca_io_ompio_generate_current_file_view_fn_t f_generate_current_file_view;
mca_common_ompio_generate_current_file_view_fn_t f_generate_current_file_view;
mca_io_ompio_get_mca_parameter_value_fn_t f_get_mca_parameter_value;
mca_common_ompio_get_mca_parameter_value_fn_t f_get_mca_parameter_value;
};
typedef struct mca_io_ompio_file_t mca_io_ompio_file_t;
typedef struct ompio_file_t ompio_file_t;
struct mca_io_ompio_data_t {
mca_io_ompio_file_t ompio_fh;
struct mca_common_ompio_data_t {
ompio_file_t ompio_fh;
};
typedef struct mca_io_ompio_data_t mca_io_ompio_data_t;
typedef struct mca_common_ompio_data_t mca_common_ompio_data_t;
#include "common_ompio_print_queue.h"
#include "common_ompio_aggregators.h"
OMPI_DECLSPEC int mca_common_ompio_file_write (mca_io_ompio_file_t *fh, const void *buf, int count,
OMPI_DECLSPEC int mca_common_ompio_file_write (ompio_file_t *fh, const void *buf, int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
OMPI_DECLSPEC int mca_common_ompio_file_write_at (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset, const void *buf,
OMPI_DECLSPEC int mca_common_ompio_file_write_at (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset, const void *buf,
int count, struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
OMPI_DECLSPEC int mca_common_ompio_file_iwrite (mca_io_ompio_file_t *fh, const void *buf, int count,
OMPI_DECLSPEC int mca_common_ompio_file_iwrite (ompio_file_t *fh, const void *buf, int count,
struct ompi_datatype_t *datatype, ompi_request_t **request);
OMPI_DECLSPEC int mca_common_ompio_file_iwrite_at (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset,
OMPI_DECLSPEC int mca_common_ompio_file_iwrite_at (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset,
const void *buf, int count, struct ompi_datatype_t *datatype,
ompi_request_t **request);
OMPI_DECLSPEC int mca_common_ompio_file_write_at_all (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset, const void *buf,
OMPI_DECLSPEC int mca_common_ompio_file_write_at_all (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset, const void *buf,
int count, struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
OMPI_DECLSPEC int mca_common_ompio_file_iwrite_at_all (mca_io_ompio_file_t *fp, OMPI_MPI_OFFSET_TYPE offset, const void *buf,
OMPI_DECLSPEC int mca_common_ompio_file_iwrite_at_all (ompio_file_t *fp, OMPI_MPI_OFFSET_TYPE offset, const void *buf,
int count, struct ompi_datatype_t *datatype, ompi_request_t **request);
OMPI_DECLSPEC int mca_common_ompio_build_io_array ( mca_io_ompio_file_t *fh, int index, int cycles,
OMPI_DECLSPEC int mca_common_ompio_build_io_array ( ompio_file_t *fh, int index, int cycles,
size_t bytes_per_cycle, int max_data, uint32_t iov_count,
struct iovec *decoded_iov, int *ii, int *jj, size_t *tbw,
size_t *spc );
OMPI_DECLSPEC int mca_common_ompio_file_read (mca_io_ompio_file_t *fh, void *buf, int count,
OMPI_DECLSPEC int mca_common_ompio_file_read (ompio_file_t *fh, void *buf, int count,
struct ompi_datatype_t *datatype, ompi_status_public_t *status);
OMPI_DECLSPEC int mca_common_ompio_file_read_at (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset, void *buf,
OMPI_DECLSPEC int mca_common_ompio_file_read_at (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset, void *buf,
int count, struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
OMPI_DECLSPEC int mca_common_ompio_file_iread (mca_io_ompio_file_t *fh, void *buf, int count,
OMPI_DECLSPEC int mca_common_ompio_file_iread (ompio_file_t *fh, void *buf, int count,
struct ompi_datatype_t *datatype, ompi_request_t **request);
OMPI_DECLSPEC int mca_common_ompio_file_iread_at (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset,
OMPI_DECLSPEC int mca_common_ompio_file_iread_at (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset,
void *buf, int count, struct ompi_datatype_t *datatype,
ompi_request_t **request);
OMPI_DECLSPEC int mca_common_ompio_file_read_at_all (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset,
OMPI_DECLSPEC int mca_common_ompio_file_read_at_all (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset,
void *buf, int count, struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
OMPI_DECLSPEC int mca_common_ompio_file_iread_at_all (mca_io_ompio_file_t *fp, OMPI_MPI_OFFSET_TYPE offset,
OMPI_DECLSPEC int mca_common_ompio_file_iread_at_all (ompio_file_t *fp, OMPI_MPI_OFFSET_TYPE offset,
void *buf, int count, struct ompi_datatype_t *datatype,
ompi_request_t **request);
OMPI_DECLSPEC int mca_common_ompio_file_open (ompi_communicator_t *comm, const char *filename,
int amode, opal_info_t *info,
mca_io_ompio_file_t *ompio_fh, bool use_sharedfp);
ompio_file_t *ompio_fh, bool use_sharedfp);
int mca_common_ompio_file_delete (const char *filename,
struct opal_info_t *info);
OMPI_DECLSPEC int mca_common_ompio_file_close (mca_io_ompio_file_t *ompio_fh);
OMPI_DECLSPEC int mca_common_ompio_file_get_size (mca_io_ompio_file_t *ompio_fh, OMPI_MPI_OFFSET_TYPE *size);
OMPI_DECLSPEC int mca_common_ompio_file_get_position (mca_io_ompio_file_t *fh,OMPI_MPI_OFFSET_TYPE *offset);
OMPI_DECLSPEC int mca_common_ompio_set_explicit_offset (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset);
OMPI_DECLSPEC int mca_common_ompio_set_file_defaults (mca_io_ompio_file_t *fh);
OMPI_DECLSPEC int mca_common_ompio_set_view (mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE disp,
OMPI_DECLSPEC int mca_common_ompio_file_close (ompio_file_t *ompio_fh);
OMPI_DECLSPEC int mca_common_ompio_file_get_size (ompio_file_t *ompio_fh, OMPI_MPI_OFFSET_TYPE *size);
OMPI_DECLSPEC int mca_common_ompio_file_get_position (ompio_file_t *fh,OMPI_MPI_OFFSET_TYPE *offset);
OMPI_DECLSPEC int mca_common_ompio_set_explicit_offset (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE offset);
OMPI_DECLSPEC int mca_common_ompio_set_file_defaults (ompio_file_t *fh);
OMPI_DECLSPEC int mca_common_ompio_set_view (ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE disp,
ompi_datatype_t *etype, ompi_datatype_t *filetype, const char *datarep,
opal_info_t *info);
@ -302,7 +302,7 @@ OMPI_DECLSPEC int mca_common_ompio_set_view (mca_io_ompio_file_t *fh, OMPI_MPI_
* Function that takes in a datatype and buffer, and decodes that datatype
* into an iovec using the convertor_raw function
*/
OMPI_DECLSPEC int mca_common_ompio_decode_datatype (struct mca_io_ompio_file_t *fh,
OMPI_DECLSPEC int mca_common_ompio_decode_datatype (struct ompio_file_t *fh,
struct ompi_datatype_t *datatype,
int count,
const void *buf,
@ -310,6 +310,6 @@ OMPI_DECLSPEC int mca_common_ompio_decode_datatype (struct mca_io_ompio_file_t *
struct iovec **iov,
uint32_t *iov_count);
OMPI_DECLSPEC int mca_common_ompio_set_callbacks(mca_io_ompio_generate_current_file_view_fn_t generate_current_file_view,
mca_io_ompio_get_mca_parameter_value_fn_t get_mca_parameter_value);
OMPI_DECLSPEC int mca_common_ompio_set_callbacks(mca_common_ompio_generate_current_file_view_fn_t generate_current_file_view,
mca_common_ompio_get_mca_parameter_value_fn_t get_mca_parameter_value);
#endif /* MCA_COMMON_OMPIO_H */

Просмотреть файл

@ -13,7 +13,7 @@
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2011-2018 Cisco Systems, Inc. All rights reserved
* Copyright (c) 2012-2013 Inria. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -57,7 +57,7 @@ static double cost_calc (int P, int P_agg, size_t Data_proc, size_t coll_buffer,
#define DIM1 1
#define DIM2 2
int mca_common_ompio_simple_grouping(mca_io_ompio_file_t *fh,
int mca_common_ompio_simple_grouping(ompio_file_t *fh,
int *num_groups_out,
mca_common_ompio_contg *contg_groups)
{
@ -186,7 +186,7 @@ int mca_common_ompio_simple_grouping(mca_io_ompio_file_t *fh,
return mca_common_ompio_forced_grouping ( fh, num_groups, contg_groups);
}
int mca_common_ompio_forced_grouping ( mca_io_ompio_file_t *fh,
int mca_common_ompio_forced_grouping ( ompio_file_t *fh,
int num_groups,
mca_common_ompio_contg *contg_groups)
{
@ -224,7 +224,7 @@ int mca_common_ompio_forced_grouping ( mca_io_ompio_file_t *fh,
return OMPI_SUCCESS;
}
int mca_common_ompio_fview_based_grouping(mca_io_ompio_file_t *fh,
int mca_common_ompio_fview_based_grouping(ompio_file_t *fh,
int *num_groups,
mca_common_ompio_contg *contg_groups)
{
@ -321,7 +321,7 @@ exit:
return ret;
}
int mca_common_ompio_cart_based_grouping(mca_io_ompio_file_t *ompio_fh,
int mca_common_ompio_cart_based_grouping(ompio_file_t *ompio_fh,
int *num_groups,
mca_common_ompio_contg *contg_groups)
{
@ -448,7 +448,7 @@ exit:
int mca_common_ompio_finalize_initial_grouping(mca_io_ompio_file_t *fh,
int mca_common_ompio_finalize_initial_grouping(ompio_file_t *fh,
int num_groups,
mca_common_ompio_contg *contg_groups)
{
@ -501,7 +501,7 @@ int mca_common_ompio_finalize_initial_grouping(mca_io_ompio_file_t *fh,
** of aggregators.
*/
int mca_common_ompio_set_aggregator_props (struct mca_io_ompio_file_t *fh,
int mca_common_ompio_set_aggregator_props (struct ompio_file_t *fh,
int num_aggregators,
size_t bytes_per_proc)
{
@ -546,7 +546,7 @@ int mca_common_ompio_set_aggregator_props (struct mca_io_ompio_file_t *fh,
/*****************************************************************************************************/
/*****************************************************************************************************/
/*****************************************************************************************************/
int mca_common_ompio_create_groups(mca_io_ompio_file_t *fh,
int mca_common_ompio_create_groups(ompio_file_t *fh,
size_t bytes_per_proc)
{
@ -681,7 +681,7 @@ exit:
return ret;
}
int mca_common_ompio_merge_initial_groups(mca_io_ompio_file_t *fh,
int mca_common_ompio_merge_initial_groups(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *aggr_bytes_per_group,
int *decision_list,
int is_aggregator){
@ -881,7 +881,7 @@ exit:
return ret;
}
int mca_common_ompio_split_initial_groups(mca_io_ompio_file_t *fh,
int mca_common_ompio_split_initial_groups(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets_lens,
OMPI_MPI_OFFSET_TYPE *end_offsets,
OMPI_MPI_OFFSET_TYPE bytes_per_group){
@ -1018,7 +1018,7 @@ int mca_common_ompio_split_initial_groups(mca_io_ompio_file_t *fh,
}
int mca_common_ompio_retain_initial_groups(mca_io_ompio_file_t *fh){
int mca_common_ompio_retain_initial_groups(ompio_file_t *fh){
int i = 0;
@ -1036,7 +1036,7 @@ int mca_common_ompio_retain_initial_groups(mca_io_ompio_file_t *fh){
return OMPI_SUCCESS;
}
int mca_common_ompio_merge_groups(mca_io_ompio_file_t *fh,
int mca_common_ompio_merge_groups(ompio_file_t *fh,
int *merge_aggrs,
int num_merge_aggrs)
{
@ -1125,7 +1125,7 @@ exit:
int mca_common_ompio_split_a_group(mca_io_ompio_file_t *fh,
int mca_common_ompio_split_a_group(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets_lens,
OMPI_MPI_OFFSET_TYPE *end_offsets,
int size_new_group,
@ -1186,7 +1186,7 @@ int mca_common_ompio_split_a_group(mca_io_ompio_file_t *fh,
return OMPI_SUCCESS;
}
int mca_common_ompio_finalize_split(mca_io_ompio_file_t *fh,
int mca_common_ompio_finalize_split(ompio_file_t *fh,
int size_new_group,
int size_last_group)
{
@ -1240,7 +1240,7 @@ int mca_common_ompio_finalize_split(mca_io_ompio_file_t *fh,
return OMPI_SUCCESS;
}
int mca_common_ompio_prepare_to_group(mca_io_ompio_file_t *fh,
int mca_common_ompio_prepare_to_group(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE **start_offsets_lens,
OMPI_MPI_OFFSET_TYPE **end_offsets, // need it?
OMPI_MPI_OFFSET_TYPE **aggr_bytes_per_group,

Просмотреть файл

@ -48,29 +48,29 @@ typedef struct{
/*Aggregator selection methods*/
OMPI_DECLSPEC int mca_common_ompio_set_aggregator_props (struct mca_io_ompio_file_t *fh,
OMPI_DECLSPEC int mca_common_ompio_set_aggregator_props (struct ompio_file_t *fh,
int num_aggregators,
size_t bytes_per_proc);
int mca_common_ompio_forced_grouping ( mca_io_ompio_file_t *fh,
int mca_common_ompio_forced_grouping ( ompio_file_t *fh,
int num_groups,
mca_common_ompio_contg *contg_groups);
int mca_common_ompio_cart_based_grouping(mca_io_ompio_file_t *ompio_fh, int *num_groups,
int mca_common_ompio_cart_based_grouping(ompio_file_t *ompio_fh, int *num_groups,
mca_common_ompio_contg *contg_groups);
int mca_common_ompio_fview_based_grouping(mca_io_ompio_file_t *fh, int *num_groups,
int mca_common_ompio_fview_based_grouping(ompio_file_t *fh, int *num_groups,
mca_common_ompio_contg *contg_groups);
int mca_common_ompio_simple_grouping(mca_io_ompio_file_t *fh, int *num_groups,
int mca_common_ompio_simple_grouping(ompio_file_t *fh, int *num_groups,
mca_common_ompio_contg *contg_groups);
int mca_common_ompio_finalize_initial_grouping(mca_io_ompio_file_t *fh, int num_groups,
int mca_common_ompio_finalize_initial_grouping(ompio_file_t *fh, int num_groups,
mca_common_ompio_contg *contg_groups);
int mca_common_ompio_create_groups(mca_io_ompio_file_t *fh, size_t bytes_per_proc);
int mca_common_ompio_create_groups(ompio_file_t *fh, size_t bytes_per_proc);
int mca_common_ompio_prepare_to_group(mca_io_ompio_file_t *fh,
int mca_common_ompio_prepare_to_group(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE **start_offsets_lens,
OMPI_MPI_OFFSET_TYPE **end_offsets,
OMPI_MPI_OFFSET_TYPE **aggr_bytes_per_group,
@ -80,16 +80,16 @@ int mca_common_ompio_prepare_to_group(mca_io_ompio_file_t *fh,
int *is_aggregator,
int *ompio_grouping_flag);
int mca_common_ompio_retain_initial_groups(mca_io_ompio_file_t *fh);
int mca_common_ompio_retain_initial_groups(ompio_file_t *fh);
int mca_common_ompio_split_initial_groups(mca_io_ompio_file_t *fh,
int mca_common_ompio_split_initial_groups(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets_lens,
OMPI_MPI_OFFSET_TYPE *end_offsets,
OMPI_MPI_OFFSET_TYPE bytes_per_group);
int mca_common_ompio_split_a_group(mca_io_ompio_file_t *fh,
int mca_common_ompio_split_a_group(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets_lens,
OMPI_MPI_OFFSET_TYPE *end_offsets,
int size_new_group,
@ -97,14 +97,14 @@ int mca_common_ompio_split_a_group(mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *min_cci,
int *num_groups, int *size_smallest_group);
int mca_common_ompio_finalize_split(mca_io_ompio_file_t *fh, int size_new_group,
int mca_common_ompio_finalize_split(ompio_file_t *fh, int size_new_group,
int size_last_group);
int mca_common_ompio_merge_initial_groups(mca_io_ompio_file_t *fh,
int mca_common_ompio_merge_initial_groups(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *aggr_bytes_per_group,
int *decision_list, int is_aggregator);
int mca_common_ompio_merge_groups(mca_io_ompio_file_t *fh, int *merge_aggrs,
int mca_common_ompio_merge_groups(ompio_file_t *fh, int *merge_aggrs,
int num_merge_aggrs);

Просмотреть файл

@ -41,14 +41,14 @@
#include "common_ompio.h"
#include "ompi/mca/topo/topo.h"
static mca_io_ompio_generate_current_file_view_fn_t generate_current_file_view_fn;
static mca_io_ompio_get_mca_parameter_value_fn_t get_mca_parameter_value_fn;
static mca_common_ompio_generate_current_file_view_fn_t generate_current_file_view_fn;
static mca_common_ompio_get_mca_parameter_value_fn_t get_mca_parameter_value_fn;
int mca_common_ompio_file_open (ompi_communicator_t *comm,
const char *filename,
int amode,
opal_info_t *info,
mca_io_ompio_file_t *ompio_fh, bool use_sharedfp)
ompio_file_t *ompio_fh, bool use_sharedfp)
{
int ret = OMPI_SUCCESS;
int remote_arch;
@ -228,7 +228,7 @@ int mca_common_ompio_file_open (ompi_communicator_t *comm,
return ret;
}
int mca_common_ompio_file_close (mca_io_ompio_file_t *ompio_fh)
int mca_common_ompio_file_close (ompio_file_t *ompio_fh)
{
int ret = OMPI_SUCCESS;
int delete_flag = 0;
@ -367,7 +367,7 @@ int mca_common_ompio_file_close (mca_io_ompio_file_t *ompio_fh)
return ret;
}
int mca_common_ompio_file_get_size (mca_io_ompio_file_t *ompio_fh,
int mca_common_ompio_file_get_size (ompio_file_t *ompio_fh,
OMPI_MPI_OFFSET_TYPE *size)
{
int ret = OMPI_SUCCESS;
@ -378,7 +378,7 @@ int mca_common_ompio_file_get_size (mca_io_ompio_file_t *ompio_fh,
}
int mca_common_ompio_file_get_position (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_get_position (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *offset)
{
OMPI_MPI_OFFSET_TYPE off;
@ -396,7 +396,7 @@ int mca_common_ompio_file_get_position (mca_io_ompio_file_t *fh,
return OMPI_SUCCESS;
}
int mca_common_ompio_set_file_defaults (mca_io_ompio_file_t *fh)
int mca_common_ompio_set_file_defaults (ompio_file_t *fh)
{
if (NULL != fh) {
@ -497,7 +497,7 @@ int mca_common_ompio_file_delete (const char *filename,
return OMPI_SUCCESS;
}
int mca_common_ompio_decode_datatype (struct mca_io_ompio_file_t *fh,
int mca_common_ompio_decode_datatype (struct ompio_file_t *fh,
ompi_datatype_t *datatype,
int count,
const void *buf,
@ -616,8 +616,8 @@ int mca_common_ompio_decode_datatype (struct mca_io_ompio_file_t *fh,
return OMPI_SUCCESS;
}
int mca_common_ompio_set_callbacks(mca_io_ompio_generate_current_file_view_fn_t generate_current_file_view,
mca_io_ompio_get_mca_parameter_value_fn_t get_mca_parameter_value)
int mca_common_ompio_set_callbacks(mca_common_ompio_generate_current_file_view_fn_t generate_current_file_view,
mca_common_ompio_get_mca_parameter_value_fn_t get_mca_parameter_value)
{
generate_current_file_view_fn = generate_current_file_view;
get_mca_parameter_value_fn = get_mca_parameter_value;

Просмотреть файл

@ -48,10 +48,10 @@
** routesin are used e.g. from the shared file pointer modules.
** The main difference is, that the first one takes an ompi_file_t
** as a file pointer argument, while the second uses the ompio internal
** mca_io_ompio_file_t structure.
** ompio_file_t structure.
*/
int mca_common_ompio_file_read (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_read (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -148,7 +148,7 @@ int mca_common_ompio_file_read (mca_io_ompio_file_t *fh,
return ret;
}
int mca_common_ompio_file_read_at (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_read_at (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
void *buf,
int count,
@ -176,7 +176,7 @@ int mca_common_ompio_file_read_at (mca_io_ompio_file_t *fh,
}
int mca_common_ompio_file_iread (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_iread (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -263,7 +263,7 @@ int mca_common_ompio_file_iread (mca_io_ompio_file_t *fh,
}
int mca_common_ompio_file_iread_at (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_iread_at (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
void *buf,
int count,
@ -296,7 +296,7 @@ int mca_common_ompio_file_iread_at (mca_io_ompio_file_t *fh,
/* Infrastructure for collective operations */
int mca_common_ompio_file_read_at_all (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_read_at_all (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
void *buf,
int count,
@ -318,7 +318,7 @@ int mca_common_ompio_file_read_at_all (mca_io_ompio_file_t *fh,
return ret;
}
int mca_common_ompio_file_iread_at_all (mca_io_ompio_file_t *fp,
int mca_common_ompio_file_iread_at_all (ompio_file_t *fp,
OMPI_MPI_OFFSET_TYPE offset,
void *buf,
int count,
@ -350,7 +350,7 @@ int mca_common_ompio_file_iread_at_all (mca_io_ompio_file_t *fp,
return ret;
}
int mca_common_ompio_set_explicit_offset (mca_io_ompio_file_t *fh,
int mca_common_ompio_set_explicit_offset (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset)
{
int i = 0;

Просмотреть файл

@ -31,7 +31,7 @@
#include "ompi/mca/fcoll/base/base.h"
#include "ompi/mca/topo/topo.h"
static OMPI_MPI_OFFSET_TYPE get_contiguous_chunk_size (mca_io_ompio_file_t *, int flag);
static OMPI_MPI_OFFSET_TYPE get_contiguous_chunk_size (ompio_file_t *, int flag);
static int datatype_duplicate (ompi_datatype_t *oldtype, ompi_datatype_t **newtype );
static int datatype_duplicate (ompi_datatype_t *oldtype, ompi_datatype_t **newtype )
{
@ -54,7 +54,7 @@ static int datatype_duplicate (ompi_datatype_t *oldtype, ompi_datatype_t **newt
}
int mca_common_ompio_set_view (mca_io_ompio_file_t *fh,
int mca_common_ompio_set_view (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE disp,
ompi_datatype_t *etype,
ompi_datatype_t *filetype,
@ -290,7 +290,7 @@ exit:
return ret;
}
OMPI_MPI_OFFSET_TYPE get_contiguous_chunk_size (mca_io_ompio_file_t *fh, int flag)
OMPI_MPI_OFFSET_TYPE get_contiguous_chunk_size (ompio_file_t *fh, int flag)
{
int uniform = 0;
OMPI_MPI_OFFSET_TYPE avg[3] = {0,0,0};

Просмотреть файл

@ -34,7 +34,7 @@
#include "math.h"
#include <unistd.h>
int mca_common_ompio_file_write (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_write (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -121,7 +121,7 @@ int mca_common_ompio_file_write (mca_io_ompio_file_t *fh,
return ret;
}
int mca_common_ompio_file_write_at (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_write_at (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
const void *buf,
int count,
@ -145,7 +145,7 @@ int mca_common_ompio_file_write_at (mca_io_ompio_file_t *fh,
return ret;
}
int mca_common_ompio_file_iwrite (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_iwrite (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -228,7 +228,7 @@ int mca_common_ompio_file_iwrite (mca_io_ompio_file_t *fh,
return ret;
}
int mca_common_ompio_file_iwrite_at (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_iwrite_at (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
const void *buf,
int count,
@ -262,7 +262,7 @@ int mca_common_ompio_file_iwrite_at (mca_io_ompio_file_t *fh,
/* Collective operations */
/******************************************************************/
int mca_common_ompio_file_write_at_all (mca_io_ompio_file_t *fh,
int mca_common_ompio_file_write_at_all (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
const void *buf,
int count,
@ -284,7 +284,7 @@ int mca_common_ompio_file_write_at_all (mca_io_ompio_file_t *fh,
return ret;
}
int mca_common_ompio_file_iwrite_at_all (mca_io_ompio_file_t *fp,
int mca_common_ompio_file_iwrite_at_all (ompio_file_t *fp,
OMPI_MPI_OFFSET_TYPE offset,
const void *buf,
int count,
@ -321,7 +321,7 @@ int mca_common_ompio_file_iwrite_at_all (mca_io_ompio_file_t *fp,
/* Helper function used by both read and write operations */
/**************************************************************/
int mca_common_ompio_build_io_array ( mca_io_ompio_file_t *fh, int index, int cycles,
int mca_common_ompio_build_io_array ( ompio_file_t *fh, int index, int cycles,
size_t bytes_per_cycle, int max_data, uint32_t iov_count,
struct iovec *decoded_iov, int *ii, int *jj, size_t *tbw,
size_t *spc)
@ -347,8 +347,8 @@ int mca_common_ompio_build_io_array ( mca_io_ompio_file_t *fh, int index, int cy
bytes_to_write_in_cycle = bytes_per_cycle;
}
fh->f_io_array = (mca_io_ompio_io_array_t *)malloc
(OMPIO_IOVEC_INITIAL_SIZE * sizeof (mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *)malloc
(OMPIO_IOVEC_INITIAL_SIZE * sizeof (mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
return OMPI_ERR_OUT_OF_RESOURCE;
@ -358,9 +358,9 @@ int mca_common_ompio_build_io_array ( mca_io_ompio_file_t *fh, int index, int cy
/* reallocate if needed */
if (OMPIO_IOVEC_INITIAL_SIZE*block <= k) {
block ++;
fh->f_io_array = (mca_io_ompio_io_array_t *)realloc
fh->f_io_array = (mca_common_ompio_io_array_t *)realloc
(fh->f_io_array, OMPIO_IOVEC_INITIAL_SIZE *
block * sizeof (mca_io_ompio_io_array_t));
block * sizeof (mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
return OMPI_ERR_OUT_OF_RESOURCE;

Просмотреть файл

@ -99,7 +99,7 @@ int mca_common_ompio_full_print_queue( struct mca_common_ompio_print_queue *q)
int mca_common_ompio_print_time_info( struct mca_common_ompio_print_queue *q,
char *name,
struct mca_io_ompio_file_t *fh){
struct ompio_file_t *fh){
int i = 0, j=0, nprocs_for_coll = 0, ret = OMPI_SUCCESS, count = 0;
double *time_details = NULL, *final_sum = NULL;

Просмотреть файл

@ -26,8 +26,6 @@
#include "mpi.h"
struct mca_io_ompio_file_t;
#define MCA_COMMON_OMPIO_QUEUESIZE 2048
/*To extract time-information */
@ -61,7 +59,7 @@ OMPI_DECLSPEC int mca_common_ompio_full_print_queue( struct mca_common_ompio_pri
OMPI_DECLSPEC int mca_common_ompio_initialize_print_queue(struct mca_common_ompio_print_queue **q);
OMPI_DECLSPEC int mca_common_ompio_print_time_info( struct mca_common_ompio_print_queue *q,
char *name_operation, struct mca_io_ompio_file_t *fh);
char *name_operation, struct ompio_file_t *fh);
END_C_DECLS

Просмотреть файл

@ -11,6 +11,8 @@
* All rights reserved.
* Copyright (c) 2008 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -30,23 +32,24 @@
#include "ompi_config.h"
#include "mpi.h"
#include "ompi/mca/fbtl/fbtl.h"
#include "opal/mca/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
#include "ompi/mca/fbtl/fbtl.h"
BEGIN_C_DECLS
OMPI_DECLSPEC int mca_fbtl_base_file_select(struct mca_io_ompio_file_t *file,
OMPI_DECLSPEC int mca_fbtl_base_file_select(struct ompio_file_t *file,
mca_base_component_t *preferred);
OMPI_DECLSPEC int mca_fbtl_base_file_unselect(struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_fbtl_base_file_unselect(struct ompio_file_t *file);
OMPI_DECLSPEC int mca_fbtl_base_find_available(bool enable_progress_threads,
bool enable_mpi_threads);
OMPI_DECLSPEC int mca_fbtl_base_init_file (struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_fbtl_base_init_file (struct ompio_file_t *file);
OMPI_DECLSPEC int mca_fbtl_base_get_param (struct mca_io_ompio_file_t *file, int keyval);
OMPI_DECLSPEC int mca_fbtl_base_get_param (struct ompio_file_t *file, int keyval);
/*
* Globals
*/

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -62,7 +64,7 @@ static OBJ_CLASS_INSTANCE(queried_module_t, opal_list_item_t, NULL, NULL);
* their module but were unfortunate to not get selected
*/
int mca_fbtl_base_file_select (struct mca_io_ompio_file_t *file,
int mca_fbtl_base_file_select (struct ompio_file_t *file,
mca_base_component_t *preferred)
{
int priority;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -31,7 +33,7 @@
#include "ompi/mca/fbtl/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
int mca_fbtl_base_file_unselect(mca_io_ompio_file_t *file)
int mca_fbtl_base_file_unselect(ompio_file_t *file)
{
if (NULL != file->f_fbtl && NULL != file->f_fbtl->fbtl_module_finalize) {
return file->f_fbtl->fbtl_module_finalize(file);

Просмотреть файл

@ -13,6 +13,8 @@
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -34,7 +36,7 @@
BEGIN_C_DECLS
struct mca_io_ompio_file_t;
struct ompio_file_t;
struct mca_ompio_request_t;
/*
@ -81,11 +83,11 @@ typedef int (*mca_fbtl_base_component_init_query_1_0_0_fn_t)
bool enable_mpi_threads);
typedef struct mca_fbtl_base_module_1_0_0_t *
(*mca_fbtl_base_component_file_query_1_0_0_fn_t) (struct mca_io_ompio_file_t *file,
(*mca_fbtl_base_component_file_query_1_0_0_fn_t) (struct ompio_file_t *file,
int *priority);
typedef int (*mca_fbtl_base_component_file_unquery_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
/*
* ****************** component struct ******************************
@ -112,21 +114,21 @@ typedef struct mca_fbtl_base_component_2_0_0_t mca_fbtl_base_component_t;
*/
typedef int (*mca_fbtl_base_module_init_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
typedef int (*mca_fbtl_base_module_finalize_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
typedef ssize_t (*mca_fbtl_base_module_preadv_fn_t)
(struct mca_io_ompio_file_t *file );
(struct ompio_file_t *file );
typedef ssize_t (*mca_fbtl_base_module_pwritev_fn_t)
(struct mca_io_ompio_file_t *file );
(struct ompio_file_t *file );
typedef ssize_t (*mca_fbtl_base_module_ipreadv_fn_t)
(struct mca_io_ompio_file_t *file,
(struct ompio_file_t *file,
ompi_request_t *request);
typedef ssize_t (*mca_fbtl_base_module_ipwritev_fn_t)
(struct mca_io_ompio_file_t *file,
(struct ompio_file_t *file,
ompi_request_t *request);
typedef bool (*mca_fbtl_base_module_progress_fn_t)
( struct mca_ompio_request_t *request);

Просмотреть файл

@ -11,6 +11,8 @@
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2018 Cisco Systems, Inc. All rights reserved
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -77,7 +79,7 @@ int mca_fbtl_posix_component_init_query(bool enable_progress_threads,
}
struct mca_fbtl_base_module_1_0_0_t *
mca_fbtl_posix_component_file_query (mca_io_ompio_file_t *fh, int *priority) {
mca_fbtl_posix_component_file_query (ompio_file_t *fh, int *priority) {
*priority = mca_fbtl_posix_priority;
if (UFS == fh->f_fstype) {
@ -89,7 +91,7 @@ mca_fbtl_posix_component_file_query (mca_io_ompio_file_t *fh, int *priority) {
return &posix;
}
int mca_fbtl_posix_component_file_unquery (mca_io_ompio_file_t *file) {
int mca_fbtl_posix_component_file_unquery (ompio_file_t *file) {
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
* to be undone if this module is not selected */
@ -97,7 +99,7 @@ int mca_fbtl_posix_component_file_unquery (mca_io_ompio_file_t *file) {
return OMPI_SUCCESS;
}
int mca_fbtl_posix_module_init (mca_io_ompio_file_t *file) {
int mca_fbtl_posix_module_init (ompio_file_t *file) {
#if defined (FBTL_POSIX_HAVE_AIO)
long val = sysconf(_SC_AIO_MAX);
@ -109,7 +111,7 @@ int mca_fbtl_posix_module_init (mca_io_ompio_file_t *file) {
}
int mca_fbtl_posix_module_finalize (mca_io_ompio_file_t *file) {
int mca_fbtl_posix_module_finalize (ompio_file_t *file) {
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2018 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -33,11 +35,11 @@ BEGIN_C_DECLS
int mca_fbtl_posix_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fbtl_base_module_1_0_0_t *
mca_fbtl_posix_component_file_query (mca_io_ompio_file_t *file, int *priority);
int mca_fbtl_posix_component_file_unquery (mca_io_ompio_file_t *file);
mca_fbtl_posix_component_file_query (ompio_file_t *file, int *priority);
int mca_fbtl_posix_component_file_unquery (ompio_file_t *file);
int mca_fbtl_posix_module_init (mca_io_ompio_file_t *file);
int mca_fbtl_posix_module_finalize (mca_io_ompio_file_t *file);
int mca_fbtl_posix_module_init (ompio_file_t *file);
int mca_fbtl_posix_module_finalize (ompio_file_t *file);
extern int fbtl_posix_max_aio_active_reqs;
@ -48,19 +50,19 @@ OMPI_MODULE_DECLSPEC extern mca_fbtl_base_component_2_0_0_t mca_fbtl_posix_compo
* ******************************************************************
*/
ssize_t mca_fbtl_posix_preadv (mca_io_ompio_file_t *file );
ssize_t mca_fbtl_posix_pwritev (mca_io_ompio_file_t *file );
ssize_t mca_fbtl_posix_ipreadv (mca_io_ompio_file_t *file,
ssize_t mca_fbtl_posix_preadv (ompio_file_t *file );
ssize_t mca_fbtl_posix_pwritev (ompio_file_t *file );
ssize_t mca_fbtl_posix_ipreadv (ompio_file_t *file,
ompi_request_t *request);
ssize_t mca_fbtl_posix_ipwritev (mca_io_ompio_file_t *file,
ssize_t mca_fbtl_posix_ipwritev (ompio_file_t *file,
ompi_request_t *request);
bool mca_fbtl_posix_progress ( mca_ompio_request_t *req);
void mca_fbtl_posix_request_free ( mca_ompio_request_t *req);
int mca_fbtl_posix_lock ( struct flock *lock, mca_io_ompio_file_t *fh, int op,
int mca_fbtl_posix_lock ( struct flock *lock, ompio_file_t *fh, int op,
OMPI_MPI_OFFSET_TYPE iov_offset, off_t len, int flags);
void mca_fbtl_posix_unlock ( struct flock *lock, mca_io_ompio_file_t *fh );
void mca_fbtl_posix_unlock ( struct flock *lock, ompio_file_t *fh );
struct mca_fbtl_posix_request_data_t {
@ -74,7 +76,7 @@ struct mca_fbtl_posix_request_data_t {
int *aio_req_status; /* array of statuses */
ssize_t aio_total_len; /* total amount of data written */
struct flock aio_lock; /* lock used for certain file systems */
mca_io_ompio_file_t *aio_fh; /* pointer back to the mca_io_ompio_fh structure */
ompio_file_t *aio_fh; /* pointer back to the mca_io_ompio_fh structure */
};
typedef struct mca_fbtl_posix_request_data_t mca_fbtl_posix_request_data_t;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -33,7 +33,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_posix_ipreadv (mca_io_ompio_file_t *fh,
ssize_t mca_fbtl_posix_ipreadv (ompio_file_t *fh,
ompi_request_t *request)
{
#if defined (FBTL_POSIX_HAVE_AIO)

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -32,7 +32,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_posix_ipwritev (mca_io_ompio_file_t *fh,
ssize_t mca_fbtl_posix_ipwritev (ompio_file_t *fh,
ompi_request_t *request)
{
#if defined(FBTL_POSIX_HAVE_AIO)

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2017 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -41,7 +43,7 @@
Support for MPI atomicity operations are envisioned, but not yet tested.
*/
int mca_fbtl_posix_lock ( struct flock *lock, mca_io_ompio_file_t *fh, int op,
int mca_fbtl_posix_lock ( struct flock *lock, ompio_file_t *fh, int op,
OMPI_MPI_OFFSET_TYPE offset, off_t len, int flags)
{
off_t lmod, bmod;
@ -131,7 +133,7 @@ int mca_fbtl_posix_lock ( struct flock *lock, mca_io_ompio_file_t *fh, int op,
return ret;
}
void mca_fbtl_posix_unlock ( struct flock *lock, mca_io_ompio_file_t *fh )
void mca_fbtl_posix_unlock ( struct flock *lock, ompio_file_t *fh )
{
if ( -1 == lock->l_start && -1 == lock->l_len ) {
return;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -28,7 +28,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_posix_preadv (mca_io_ompio_file_t *fh )
ssize_t mca_fbtl_posix_preadv (ompio_file_t *fh )
{
/*int *fp = NULL;*/
int i, block=1, ret;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -30,7 +30,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_posix_pwritev(mca_io_ompio_file_t *fh )
ssize_t mca_fbtl_posix_pwritev(ompio_file_t *fh )
{
/*int *fp = NULL;*/
int i, block = 1, ret;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -57,7 +59,7 @@ int mca_fbtl_pvfs2_component_init_query(bool enable_progress_threads,
}
struct mca_fbtl_base_module_1_0_0_t *
mca_fbtl_pvfs2_component_file_query (mca_io_ompio_file_t *fh, int *priority) {
mca_fbtl_pvfs2_component_file_query (ompio_file_t *fh, int *priority) {
*priority = mca_fbtl_pvfs2_priority;
if (PVFS2 == fh->f_fstype) {
@ -69,7 +71,7 @@ mca_fbtl_pvfs2_component_file_query (mca_io_ompio_file_t *fh, int *priority) {
return &pvfs2;
}
int mca_fbtl_pvfs2_component_file_unquery (mca_io_ompio_file_t *file) {
int mca_fbtl_pvfs2_component_file_unquery (ompio_file_t *file) {
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
* to be undone if this module is not selected */
@ -77,11 +79,11 @@ int mca_fbtl_pvfs2_component_file_unquery (mca_io_ompio_file_t *file) {
return OMPI_SUCCESS;
}
int mca_fbtl_pvfs2_module_init (mca_io_ompio_file_t *file) {
int mca_fbtl_pvfs2_module_init (ompio_file_t *file) {
return OMPI_SUCCESS;
}
int mca_fbtl_pvfs2_module_finalize (mca_io_ompio_file_t *file) {
int mca_fbtl_pvfs2_module_finalize (ompio_file_t *file) {
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -44,11 +46,11 @@ BEGIN_C_DECLS
int mca_fbtl_pvfs2_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fbtl_base_module_1_0_0_t *
mca_fbtl_pvfs2_component_file_query (mca_io_ompio_file_t *file, int *priority);
int mca_fbtl_pvfs2_component_file_unquery (mca_io_ompio_file_t *file);
mca_fbtl_pvfs2_component_file_query (ompio_file_t *file, int *priority);
int mca_fbtl_pvfs2_component_file_unquery (ompio_file_t *file);
int mca_fbtl_pvfs2_module_init (mca_io_ompio_file_t *file);
int mca_fbtl_pvfs2_module_finalize (mca_io_ompio_file_t *file);
int mca_fbtl_pvfs2_module_init (ompio_file_t *file);
int mca_fbtl_pvfs2_module_finalize (ompio_file_t *file);
OMPI_MODULE_DECLSPEC extern mca_fbtl_base_component_2_0_0_t mca_fbtl_pvfs2_component;
/*
@ -57,11 +59,11 @@ OMPI_MODULE_DECLSPEC extern mca_fbtl_base_component_2_0_0_t mca_fbtl_pvfs2_compo
* ******************************************************************
*/
ssize_t mca_fbtl_pvfs2_preadv (mca_io_ompio_file_t *file);
ssize_t mca_fbtl_pvfs2_pwritev (mca_io_ompio_file_t *file);
ssize_t mca_fbtl_pvfs2_ipreadv (mca_io_ompio_file_t *file,
ssize_t mca_fbtl_pvfs2_preadv (ompio_file_t *file);
ssize_t mca_fbtl_pvfs2_pwritev (ompio_file_t *file);
ssize_t mca_fbtl_pvfs2_ipreadv (ompio_file_t *file,
ompi_request_t **request);
ssize_t mca_fbtl_pvfs2_ipwritev (mca_io_ompio_file_t *file,
ssize_t mca_fbtl_pvfs2_ipwritev (ompio_file_t *file,
ompi_request_t **request);
/*

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -25,7 +27,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_pvfs2_ipreadv (mca_io_ompio_file_t *file,
ssize_t mca_fbtl_pvfs2_ipreadv (ompio_file_t *file,
ompi_request_t **request)
{
printf ("PVFS2 IPREADV\n");

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -25,7 +27,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_pvfs2_ipwritev (mca_io_ompio_file_t *file,
ssize_t mca_fbtl_pvfs2_ipwritev (ompio_file_t *file,
ompi_request_t **request)
{
printf ("PVFS2 IPWRITEV\n");

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2017 Research Organization for Information Science
* Copyright (c) 2017-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -32,7 +32,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_pvfs2_preadv (mca_io_ompio_file_t *fh)
ssize_t mca_fbtl_pvfs2_preadv (ompio_file_t *fh)
{
int i;
int ret;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2017 Research Organization for Information Science
* Copyright (c) 2017-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -33,7 +33,7 @@
#include "ompi/constants.h"
#include "ompi/mca/fbtl/fbtl.h"
ssize_t mca_fbtl_pvfs2_pwritev (mca_io_ompio_file_t *fh )
ssize_t mca_fbtl_pvfs2_pwritev (ompio_file_t *fh )
{
int i;
int merge = 0;

Просмотреть файл

@ -12,6 +12,8 @@
* Copyright (c) 2008 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2017 IBM Corporation. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -32,22 +34,23 @@
#include "mpi.h"
#include "opal/mca/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
#include "ompi/mca/fcoll/fcoll.h"
BEGIN_C_DECLS
OMPI_DECLSPEC int mca_fcoll_base_file_select(struct mca_io_ompio_file_t *file,
OMPI_DECLSPEC int mca_fcoll_base_file_select(struct ompio_file_t *file,
mca_base_component_t *preferred);
OMPI_DECLSPEC int mca_fcoll_base_query_table (struct mca_io_ompio_file_t *file,
OMPI_DECLSPEC int mca_fcoll_base_query_table (struct ompio_file_t *file,
char *name);
OMPI_DECLSPEC int mca_fcoll_base_file_unselect(struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_fcoll_base_file_unselect(struct ompio_file_t *file);
OMPI_DECLSPEC int mca_fcoll_base_find_available(bool enable_progress_threads,
bool enable_mpi_threads);
OMPI_DECLSPEC int mca_fcoll_base_init_file (struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_fcoll_base_init_file (struct ompio_file_t *file);
OMPI_DECLSPEC int mca_fcoll_base_get_param (struct mca_io_ompio_file_t *file, int keyval);
OMPI_DECLSPEC int mca_fcoll_base_get_param (struct ompio_file_t *file, int keyval);
OMPI_DECLSPEC int ompi_fcoll_base_sort_iovec (struct iovec *iov, int num_entries, int *sorted);
/*

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -62,7 +64,7 @@ static OBJ_CLASS_INSTANCE(queried_module_t, opal_list_item_t, NULL, NULL);
* their module but were unfortunate to not get selected
*/
int mca_fcoll_base_file_select (struct mca_io_ompio_file_t *file,
int mca_fcoll_base_file_select (struct ompio_file_t *file,
mca_base_component_t *preferred)
{
int priority;
@ -255,7 +257,7 @@ int mca_fcoll_base_file_select (struct mca_io_ompio_file_t *file,
return err;
}
int mca_fcoll_base_query_table (struct mca_io_ompio_file_t *file, char *name)
int mca_fcoll_base_query_table (struct ompio_file_t *file, char *name)
{
if (!strcmp (name, "individual")) {
if ((int)file->f_cc_size >= file->f_bytes_per_agg &&

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -31,7 +33,7 @@
#include "ompi/mca/fcoll/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
int mca_fcoll_base_file_unselect(mca_io_ompio_file_t *file)
int mca_fcoll_base_file_unselect(ompio_file_t *file)
{
if (NULL != file->f_fcoll && NULL != file->f_fcoll->fcoll_module_finalize) {
return file->f_fcoll->fcoll_module_finalize(file);

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -43,21 +43,21 @@ OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_dynamic_c
int mca_fcoll_dynamic_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fcoll_base_module_1_0_0_t *
mca_fcoll_dynamic_component_file_query (mca_io_ompio_file_t *fh, int *priority);
mca_fcoll_dynamic_component_file_query (ompio_file_t *fh, int *priority);
int mca_fcoll_dynamic_component_file_unquery (mca_io_ompio_file_t *file);
int mca_fcoll_dynamic_component_file_unquery (ompio_file_t *file);
int mca_fcoll_dynamic_module_init (mca_io_ompio_file_t *file);
int mca_fcoll_dynamic_module_finalize (mca_io_ompio_file_t *file);
int mca_fcoll_dynamic_module_init (ompio_file_t *file);
int mca_fcoll_dynamic_module_finalize (ompio_file_t *file);
int mca_fcoll_dynamic_file_read_all (mca_io_ompio_file_t *fh,
int mca_fcoll_dynamic_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
int mca_fcoll_dynamic_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_dynamic_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -50,7 +50,7 @@ static int read_heap_sort (mca_io_ompio_local_io_array *io_array,
int
mca_fcoll_dynamic_file_read_all (mca_io_ompio_file_t *fh,
mca_fcoll_dynamic_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -125,7 +125,7 @@ mca_fcoll_dynamic_file_read_all (mca_io_ompio_file_t *fh,
if (! recvbuf_is_contiguous ) {
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *)fh,
datatype,
count,
buf,
@ -149,7 +149,7 @@ mca_fcoll_dynamic_file_read_all (mca_io_ompio_file_t *fh,
ret = OMPI_ERROR;
goto exit;
}
ret = mca_common_ompio_set_aggregator_props ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_set_aggregator_props ((struct ompio_file_t *) fh,
dynamic_num_io_procs,
max_data);
if (OMPI_SUCCESS != ret){
@ -199,7 +199,7 @@ mca_fcoll_dynamic_file_read_all (mca_io_ompio_file_t *fh,
/*********************************************************************
*** 3. Generate the File offsets/lengths corresponding to this write
********************************************************************/
ret = fh->f_generate_current_file_view ((struct mca_io_ompio_file_t *) fh,
ret = fh->f_generate_current_file_view ((struct ompio_file_t *) fh,
max_data,
&local_iov_array,
&local_count);
@ -663,8 +663,8 @@ mca_fcoll_dynamic_file_read_all (mca_io_ompio_file_t *fh,
/**********************************************************
*** 7e. Create the io array, and pass it to fbtl
*********************************************************/
fh->f_io_array = (mca_io_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;

Просмотреть файл

@ -51,7 +51,7 @@ static int local_heap_sort (mca_io_ompio_local_io_array *io_array,
int
mca_fcoll_dynamic_file_write_all (mca_io_ompio_file_t *fh,
mca_fcoll_dynamic_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -127,7 +127,7 @@ mca_fcoll_dynamic_file_write_all (mca_io_ompio_file_t *fh,
if (! sendbuf_is_contiguous ) {
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *) fh,
datatype,
count,
buf,
@ -151,7 +151,7 @@ mca_fcoll_dynamic_file_write_all (mca_io_ompio_file_t *fh,
ret = OMPI_ERROR;
goto exit;
}
ret = mca_common_ompio_set_aggregator_props ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_set_aggregator_props ((struct ompio_file_t *) fh,
dynamic_num_io_procs,
max_data);
@ -205,7 +205,7 @@ mca_fcoll_dynamic_file_write_all (mca_io_ompio_file_t *fh,
*** 3. Generate the local offsets/lengths array corresponding to
*** this write operation
********************************************************************/
ret = fh->f_generate_current_file_view( (struct mca_io_ompio_file_t *) fh,
ret = fh->f_generate_current_file_view( (struct ompio_file_t *) fh,
max_data,
&local_iov_array,
&local_count);
@ -911,8 +911,8 @@ mca_fcoll_dynamic_file_write_all (mca_io_ompio_file_t *fh,
start_write_time = MPI_Wtime();
#endif
fh->f_io_array = (mca_io_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -53,7 +55,7 @@ mca_fcoll_dynamic_component_init_query(bool enable_progress_threads,
}
mca_fcoll_base_module_1_0_0_t *
mca_fcoll_dynamic_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fcoll_dynamic_component_file_query (ompio_file_t *fh, int *priority)
{
*priority = mca_fcoll_dynamic_priority;
if (0 >= mca_fcoll_dynamic_priority) {
@ -69,7 +71,7 @@ mca_fcoll_dynamic_component_file_query (mca_io_ompio_file_t *fh, int *priority)
return &dynamic;
}
int mca_fcoll_dynamic_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fcoll_dynamic_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -78,13 +80,13 @@ int mca_fcoll_dynamic_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fcoll_dynamic_module_init (mca_io_ompio_file_t *file)
int mca_fcoll_dynamic_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_fcoll_dynamic_module_finalize (mca_io_ompio_file_t *file)
int mca_fcoll_dynamic_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -45,21 +45,21 @@ OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_dynamic_g
int mca_fcoll_dynamic_gen2_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fcoll_base_module_1_0_0_t *
mca_fcoll_dynamic_gen2_component_file_query (mca_io_ompio_file_t *fh, int *priority);
mca_fcoll_dynamic_gen2_component_file_query (ompio_file_t *fh, int *priority);
int mca_fcoll_dynamic_gen2_component_file_unquery (mca_io_ompio_file_t *file);
int mca_fcoll_dynamic_gen2_component_file_unquery (ompio_file_t *file);
int mca_fcoll_dynamic_gen2_module_init (mca_io_ompio_file_t *file);
int mca_fcoll_dynamic_gen2_module_finalize (mca_io_ompio_file_t *file);
int mca_fcoll_dynamic_gen2_module_init (ompio_file_t *file);
int mca_fcoll_dynamic_gen2_module_finalize (ompio_file_t *file);
int mca_fcoll_dynamic_gen2_file_read_all (mca_io_ompio_file_t *fh,
int mca_fcoll_dynamic_gen2_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
int mca_fcoll_dynamic_gen2_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_dynamic_gen2_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -50,7 +50,7 @@ static int read_heap_sort (mca_io_ompio_local_io_array *io_array,
int
mca_fcoll_dynamic_gen2_file_read_all (mca_io_ompio_file_t *fh,
mca_fcoll_dynamic_gen2_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -125,7 +125,7 @@ mca_fcoll_dynamic_gen2_file_read_all (mca_io_ompio_file_t *fh,
if (! recvbuf_is_contiguous ) {
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *)fh,
datatype,
count,
buf,
@ -149,7 +149,7 @@ mca_fcoll_dynamic_gen2_file_read_all (mca_io_ompio_file_t *fh,
ret = OMPI_ERROR;
goto exit;
}
ret = mca_common_ompio_set_aggregator_props ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_set_aggregator_props ((struct ompio_file_t *) fh,
dynamic_gen2_num_io_procs,
max_data);
if (OMPI_SUCCESS != ret){
@ -199,7 +199,7 @@ mca_fcoll_dynamic_gen2_file_read_all (mca_io_ompio_file_t *fh,
/*********************************************************************
*** 3. Generate the File offsets/lengths corresponding to this write
********************************************************************/
ret = fh->f_generate_current_file_view ((struct mca_io_ompio_file_t *) fh,
ret = fh->f_generate_current_file_view ((struct ompio_file_t *) fh,
max_data,
&local_iov_array,
&local_count);
@ -662,8 +662,8 @@ mca_fcoll_dynamic_gen2_file_read_all (mca_io_ompio_file_t *fh,
/**********************************************************
*** 7e. Create the io array, and pass it to fbtl
*********************************************************/
fh->f_io_array = (mca_io_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;

Просмотреть файл

@ -61,7 +61,7 @@ typedef struct mca_io_ompio_aggregator_data {
int bytes_sent, prev_bytes_sent;
struct iovec *decoded_iov;
int bytes_to_write, prev_bytes_to_write;
mca_io_ompio_io_array_t *io_array, *prev_io_array;
mca_common_ompio_io_array_t *io_array, *prev_io_array;
int num_io_entries, prev_num_io_entries;
} mca_io_ompio_aggregator_data;
@ -92,7 +92,7 @@ typedef struct mca_io_ompio_aggregator_data {
static int shuffle_init ( int index, int cycles, int aggregator, int rank,
mca_io_ompio_aggregator_data *data,
ompi_request_t **reqs );
static int write_init (mca_io_ompio_file_t *fh, int aggregator, mca_io_ompio_aggregator_data *aggr_data, int write_chunksize );
static int write_init (ompio_file_t *fh, int aggregator, mca_io_ompio_aggregator_data *aggr_data, int write_chunksize );
int mca_fcoll_dynamic_gen2_break_file_view ( struct iovec *decoded_iov, int iov_count,
struct iovec *local_iov_array, int local_count,
@ -102,7 +102,7 @@ int mca_fcoll_dynamic_gen2_break_file_view ( struct iovec *decoded_iov, int iov_
int stripe_count, int stripe_size);
int mca_fcoll_dynamic_gen2_get_configuration (mca_io_ompio_file_t *fh, int *dynamic_gen2_num_io_procs,
int mca_fcoll_dynamic_gen2_get_configuration (ompio_file_t *fh, int *dynamic_gen2_num_io_procs,
int **ret_aggregators);
@ -110,12 +110,12 @@ static int local_heap_sort (mca_io_ompio_local_io_array *io_array,
int num_entries,
int *sorted);
int mca_fcoll_dynamic_gen2_split_iov_array ( mca_io_ompio_file_t *fh, mca_io_ompio_io_array_t *work_array,
int mca_fcoll_dynamic_gen2_split_iov_array ( ompio_file_t *fh, mca_common_ompio_io_array_t *work_array,
int num_entries, int *last_array_pos, int *last_pos_in_field,
int chunk_size );
int mca_fcoll_dynamic_gen2_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_dynamic_gen2_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -168,7 +168,7 @@ int mca_fcoll_dynamic_gen2_file_write_all (mca_io_ompio_file_t *fh,
the user requested */
bytes_per_cycle =bytes_per_cycle/2;
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *) fh,
datatype,
count,
buf,
@ -234,7 +234,7 @@ int mca_fcoll_dynamic_gen2_file_write_all (mca_io_ompio_file_t *fh,
*** 2. Generate the local offsets/lengths array corresponding to
*** this write operation
********************************************************************/
ret = fh->f_generate_current_file_view( (struct mca_io_ompio_file_t *) fh,
ret = fh->f_generate_current_file_view( (struct ompio_file_t *) fh,
max_data,
&local_iov_array,
&local_count);
@ -734,7 +734,7 @@ exit :
}
static int write_init (mca_io_ompio_file_t *fh, int aggregator, mca_io_ompio_aggregator_data *aggr_data, int write_chunksize )
static int write_init (ompio_file_t *fh, int aggregator, mca_io_ompio_aggregator_data *aggr_data, int write_chunksize )
{
int ret=OMPI_SUCCESS;
int last_array_pos=0;
@ -1258,8 +1258,8 @@ static int shuffle_init ( int index, int cycles, int aggregator, int rank, mca_i
if (aggregator == rank && entries_per_aggregator>0) {
data->io_array = (mca_io_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_io_ompio_io_array_t));
data->io_array = (mca_common_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_common_ompio_io_array_t));
if (NULL == data->io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;
@ -1549,7 +1549,7 @@ exit:
}
int mca_fcoll_dynamic_gen2_get_configuration (mca_io_ompio_file_t *fh, int *dynamic_gen2_num_io_procs, int **ret_aggregators)
int mca_fcoll_dynamic_gen2_get_configuration (ompio_file_t *fh, int *dynamic_gen2_num_io_procs, int **ret_aggregators)
{
int *aggregators=NULL;
int num_io_procs = *dynamic_gen2_num_io_procs;
@ -1591,7 +1591,7 @@ int mca_fcoll_dynamic_gen2_get_configuration (mca_io_ompio_file_t *fh, int *dyna
}
int mca_fcoll_dynamic_gen2_split_iov_array ( mca_io_ompio_file_t *fh, mca_io_ompio_io_array_t *io_array, int num_entries,
int mca_fcoll_dynamic_gen2_split_iov_array ( ompio_file_t *fh, mca_common_ompio_io_array_t *io_array, int num_entries,
int *ret_array_pos, int *ret_pos, int chunk_size )
{
@ -1601,7 +1601,7 @@ int mca_fcoll_dynamic_gen2_split_iov_array ( mca_io_ompio_file_t *fh, mca_io_omp
size_t bytes_to_write = chunk_size;
if ( 0 == array_pos && 0 == pos ) {
fh->f_io_array = (mca_io_ompio_io_array_t *) malloc ( num_entries * sizeof(mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *) malloc ( num_entries * sizeof(mca_common_ompio_io_array_t));
if ( NULL == fh->f_io_array ){
opal_output (1,"Could not allocate memory\n");
return -1;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -53,7 +55,7 @@ mca_fcoll_dynamic_gen2_component_init_query(bool enable_progress_threads,
}
mca_fcoll_base_module_1_0_0_t *
mca_fcoll_dynamic_gen2_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fcoll_dynamic_gen2_component_file_query (ompio_file_t *fh, int *priority)
{
*priority = mca_fcoll_dynamic_gen2_priority;
if (0 >= mca_fcoll_dynamic_gen2_priority) {
@ -69,7 +71,7 @@ mca_fcoll_dynamic_gen2_component_file_query (mca_io_ompio_file_t *fh, int *prior
return &dynamic_gen2;
}
int mca_fcoll_dynamic_gen2_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fcoll_dynamic_gen2_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -78,13 +80,13 @@ int mca_fcoll_dynamic_gen2_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fcoll_dynamic_gen2_module_init (mca_io_ompio_file_t *file)
int mca_fcoll_dynamic_gen2_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_fcoll_dynamic_gen2_module_finalize (mca_io_ompio_file_t *file)
int mca_fcoll_dynamic_gen2_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -13,7 +13,7 @@
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -33,7 +33,7 @@
BEGIN_C_DECLS
struct mca_io_ompio_file_t;
struct ompio_file_t;
struct mca_fcoll_request_t;
/*
@ -76,11 +76,11 @@ typedef int (*mca_fcoll_base_component_init_query_1_0_0_fn_t)
bool enable_mpi_threads);
typedef struct mca_fcoll_base_module_1_0_0_t *
(*mca_fcoll_base_component_file_query_1_0_0_fn_t) (struct mca_io_ompio_file_t *file,
(*mca_fcoll_base_component_file_query_1_0_0_fn_t) (struct ompio_file_t *file,
int *priority);
typedef int (*mca_fcoll_base_component_file_unquery_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
/*
* ****************** component struct ******************************
@ -107,34 +107,34 @@ typedef struct mca_fcoll_base_component_2_0_0_t mca_fcoll_base_component_t;
*/
typedef int (*mca_fcoll_base_module_init_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
typedef int (*mca_fcoll_base_module_finalize_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
typedef int (*mca_fcoll_base_module_file_read_all_fn_t)
(struct mca_io_ompio_file_t *fh,
(struct ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
typedef int (*mca_fcoll_base_module_file_iread_all_fn_t)
(struct mca_io_ompio_file_t *fh,
(struct ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_request_t **request);
typedef int (*mca_fcoll_base_module_file_write_all_fn_t)
(struct mca_io_ompio_file_t *fh,
(struct ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
typedef int (*mca_fcoll_base_module_file_iwrite_all_fn_t)
(struct mca_io_ompio_file_t *fh,
(struct ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -43,21 +43,21 @@ OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_individua
int mca_fcoll_individual_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fcoll_base_module_1_0_0_t *
mca_fcoll_individual_component_file_query (mca_io_ompio_file_t *fh, int *priority);
mca_fcoll_individual_component_file_query (ompio_file_t *fh, int *priority);
int mca_fcoll_individual_component_file_unquery (mca_io_ompio_file_t *file);
int mca_fcoll_individual_component_file_unquery (ompio_file_t *file);
int mca_fcoll_individual_module_init (mca_io_ompio_file_t *file);
int mca_fcoll_individual_module_finalize (mca_io_ompio_file_t *file);
int mca_fcoll_individual_module_init (ompio_file_t *file);
int mca_fcoll_individual_module_finalize (ompio_file_t *file);
int mca_fcoll_individual_file_read_all (mca_io_ompio_file_t *fh,
int mca_fcoll_individual_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
int mca_fcoll_individual_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_individual_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -31,7 +33,7 @@
/* this component just directly calls the individual I/O operations */
int
mca_fcoll_individual_file_read_all (mca_io_ompio_file_t *fh,
mca_fcoll_individual_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -30,7 +30,7 @@
#include <unistd.h>
int mca_fcoll_individual_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_individual_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -53,7 +55,7 @@ mca_fcoll_individual_component_init_query(bool enable_progress_threads,
}
mca_fcoll_base_module_1_0_0_t *
mca_fcoll_individual_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fcoll_individual_component_file_query (ompio_file_t *fh, int *priority)
{
*priority = mca_fcoll_individual_priority;
if (0 >= mca_fcoll_individual_priority) {
@ -72,7 +74,7 @@ mca_fcoll_individual_component_file_query (mca_io_ompio_file_t *fh, int *priorit
return &individual;
}
int mca_fcoll_individual_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fcoll_individual_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -81,13 +83,13 @@ int mca_fcoll_individual_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fcoll_individual_module_init (mca_io_ompio_file_t *file)
int mca_fcoll_individual_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_fcoll_individual_module_finalize (mca_io_ompio_file_t *file)
int mca_fcoll_individual_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -43,28 +43,28 @@ OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_two_phase
int mca_fcoll_two_phase_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fcoll_base_module_1_0_0_t *
mca_fcoll_two_phase_component_file_query (mca_io_ompio_file_t *fh, int *priority);
mca_fcoll_two_phase_component_file_query (ompio_file_t *fh, int *priority);
int mca_fcoll_two_phase_component_file_unquery (mca_io_ompio_file_t *file);
int mca_fcoll_two_phase_component_file_unquery (ompio_file_t *file);
int mca_fcoll_two_phase_module_init (mca_io_ompio_file_t *file);
int mca_fcoll_two_phase_module_finalize (mca_io_ompio_file_t *file);
int mca_fcoll_two_phase_module_init (ompio_file_t *file);
int mca_fcoll_two_phase_module_finalize (ompio_file_t *file);
int mca_fcoll_two_phase_file_read_all (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
int mca_fcoll_two_phase_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
int mca_fcoll_two_phase_calc_aggregator (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_aggregator (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE off,
OMPI_MPI_OFFSET_TYPE min_off,
OMPI_MPI_OFFSET_TYPE *len,
@ -75,14 +75,14 @@ int mca_fcoll_two_phase_calc_aggregator (mca_io_ompio_file_t *fh,
int num_aggregators,
int *aggregator_list);
int mca_fcoll_two_phase_calc_others_requests(mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_others_requests(ompio_file_t *fh,
int count_my_req_procs,
int *count_my_req_per_proc,
mca_io_ompio_access_array_t *my_req,
mca_common_ompio_access_array_t *my_req,
int *count_others_req_procs_ptr,
mca_io_ompio_access_array_t **others_req_ptr);
mca_common_ompio_access_array_t **others_req_ptr);
int mca_fcoll_two_phase_calc_my_requests (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_my_requests (ompio_file_t *fh,
struct iovec *offset_len,
int contig_access_count,
OMPI_MPI_OFFSET_TYPE min_st_offset,
@ -91,13 +91,13 @@ int mca_fcoll_two_phase_calc_my_requests (mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE fd_size,
int *count_my_req_procs_ptr,
int **count_my_req_per_proc_ptr,
mca_io_ompio_access_array_t **my_req_ptr,
mca_common_ompio_access_array_t **my_req_ptr,
size_t **buf_indices,
int striping_unit,
int num_aggregators,
int *aggregator_list);
int mca_fcoll_two_phase_domain_partition (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_domain_partition (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets,
OMPI_MPI_OFFSET_TYPE *end_offsets,
OMPI_MPI_OFFSET_TYPE *min_st_offset_ptr,

Просмотреть файл

@ -54,10 +54,10 @@ typedef struct flat_list_node {
}Flatlist_node;
/* local function declarations */
static int two_phase_read_and_exch(mca_io_ompio_file_t *fh,
static int two_phase_read_and_exch(ompio_file_t *fh,
void *buf,
MPI_Datatype datatype,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
struct iovec *offset_len,
int contig_access_count,
OMPI_MPI_OFFSET_TYPE min_st_offset,
@ -68,7 +68,7 @@ static int two_phase_read_and_exch(mca_io_ompio_file_t *fh,
size_t *buf_idx, int striping_unit,
int num_io_procs, int *aggregator_list);
static int two_phase_exchange_data(mca_io_ompio_file_t *fh,
static int two_phase_exchange_data(ompio_file_t *fh,
void *buf,
struct iovec *offset_length,
int *send_size, int *start_pos,
@ -81,14 +81,14 @@ static int two_phase_exchange_data(mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *fd_start,
OMPI_MPI_OFFSET_TYPE *fd_end,
Flatlist_node *flat_buf,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
int iter,
size_t *buf_idx, MPI_Aint buftype_extent,
int striping_unit, int num_io_procs,
int *aggregator_list);
static void two_phase_fill_user_buffer(mca_io_ompio_file_t *fh,
static void two_phase_fill_user_buffer(ompio_file_t *fh,
void *buf,
Flatlist_node *flat_buf,
char **recv_buf,
@ -119,7 +119,7 @@ double read_exch = 0.0, start_rexch = 0.0, end_rexch = 0.0;
int
mca_fcoll_two_phase_file_read_all (mca_io_ompio_file_t *fh,
mca_fcoll_two_phase_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -141,7 +141,7 @@ mca_fcoll_two_phase_file_read_all (mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets=NULL, *end_offsets=NULL;
OMPI_MPI_OFFSET_TYPE *fd_start=NULL, *fd_end=NULL, min_st_offset = 0;
Flatlist_node *flat_buf=NULL;
mca_io_ompio_access_array_t *my_req=NULL, *others_req=NULL;
mca_common_ompio_access_array_t *my_req=NULL, *others_req=NULL;
#if OMPIO_FCOLL_WANT_TIME_BREAKDOWN
mca_common_ompio_print_entry nentry;
#endif
@ -150,7 +150,7 @@ mca_fcoll_two_phase_file_read_all (mca_io_ompio_file_t *fh,
// }
if (! (fh->f_flags & OMPIO_CONTIGUOUS_MEMORY)) {
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *)fh,
datatype,
count,
buf,
@ -192,7 +192,7 @@ mca_fcoll_two_phase_file_read_all (mca_io_ompio_file_t *fh,
goto exit;
}
if (-1 == two_phase_num_io_procs ){
ret = mca_common_ompio_set_aggregator_props ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_set_aggregator_props ((struct ompio_file_t *)fh,
two_phase_num_io_procs,
max_data);
if (OMPI_SUCCESS != ret){
@ -224,7 +224,7 @@ mca_fcoll_two_phase_file_read_all (mca_io_ompio_file_t *fh,
}
}
ret = fh->f_generate_current_file_view ((struct mca_io_ompio_file_t *)fh,
ret = fh->f_generate_current_file_view ((struct ompio_file_t *)fh,
max_data,
&iov,
&local_count);
@ -528,10 +528,10 @@ exit:
static int two_phase_read_and_exch(mca_io_ompio_file_t *fh,
static int two_phase_read_and_exch(ompio_file_t *fh,
void *buf,
MPI_Datatype datatype,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
struct iovec *offset_len,
int contig_access_count,
OMPI_MPI_OFFSET_TYPE min_st_offset,
@ -726,8 +726,8 @@ static int two_phase_read_and_exch(mca_io_ompio_file_t *fh,
#endif
len = size * byte_size;
fh->f_io_array = (mca_io_ompio_io_array_t *)calloc
(1,sizeof(mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *)calloc
(1,sizeof(mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;
@ -827,7 +827,7 @@ exit:
}
static int two_phase_exchange_data(mca_io_ompio_file_t *fh,
static int two_phase_exchange_data(ompio_file_t *fh,
void *buf, struct iovec *offset_len,
int *send_size, int *start_pos, int *recv_size,
int *count, int *partial_send,
@ -837,7 +837,7 @@ static int two_phase_exchange_data(mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *fd_start,
OMPI_MPI_OFFSET_TYPE *fd_end,
Flatlist_node *flat_buf,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
int iter, size_t *buf_idx,
MPI_Aint buftype_extent, int striping_unit,
int two_phase_num_io_procs, int *aggregator_list)
@ -1065,7 +1065,7 @@ exit:
static void two_phase_fill_user_buffer(mca_io_ompio_file_t *fh,
static void two_phase_fill_user_buffer(ompio_file_t *fh,
void *buf,
Flatlist_node *flat_buf,
char **recv_buf,

Просмотреть файл

@ -56,10 +56,10 @@ typedef struct flat_list_node {
/* local function declarations */
static int two_phase_exch_and_write(mca_io_ompio_file_t *fh,
static int two_phase_exch_and_write(ompio_file_t *fh,
const void *buf,
MPI_Datatype datatype,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
struct iovec *offset_len,
int contig_access_count,
OMPI_MPI_OFFSET_TYPE min_st_offset,
@ -72,7 +72,7 @@ static int two_phase_exch_and_write(mca_io_ompio_file_t *fh,
static int two_phase_exchage_data(mca_io_ompio_file_t *fh,
static int two_phase_exchage_data(ompio_file_t *fh,
const void *buf,
char *write_buf,
struct iovec *offset_length,
@ -87,7 +87,7 @@ static int two_phase_exchage_data(mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *fd_start,
OMPI_MPI_OFFSET_TYPE *fd_end,
Flatlist_node *flat_buf,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
int *send_buf_idx, int *curr_to_proc,
int *done_to_proc, int iter,
size_t *buf_idx, MPI_Aint buftype_extent,
@ -95,7 +95,7 @@ static int two_phase_exchage_data(mca_io_ompio_file_t *fh,
int *aggregator_list, int *hole);
static int two_phase_fill_send_buffer(mca_io_ompio_file_t *fh,
static int two_phase_fill_send_buffer(ompio_file_t *fh,
const void *buf,
Flatlist_node *flat_buf,
char **send_buf,
@ -120,7 +120,7 @@ static int is_aggregator(int rank,
int *aggregator_list);
#endif
void two_phase_heap_merge(mca_io_ompio_access_array_t *others_req,
void two_phase_heap_merge(mca_common_ompio_access_array_t *others_req,
int *count,
OMPI_MPI_OFFSET_TYPE *srt_off,
int *srt_len,
@ -141,7 +141,7 @@ double exch_write = 0.0, start_exch = 0.0, end_exch = 0.0;
#endif
int
mca_fcoll_two_phase_file_write_all (mca_io_ompio_file_t *fh,
mca_fcoll_two_phase_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -166,7 +166,7 @@ mca_fcoll_two_phase_file_write_all (mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets=NULL, *end_offsets=NULL;
OMPI_MPI_OFFSET_TYPE *fd_start=NULL, *fd_end=NULL, min_st_offset;
Flatlist_node *flat_buf=NULL;
mca_io_ompio_access_array_t *my_req=NULL, *others_req=NULL;
mca_common_ompio_access_array_t *my_req=NULL, *others_req=NULL;
MPI_Aint send_buf_addr;
#if OMPIO_FCOLL_WANT_TIME_BREAKDOWN
mca_common_ompio_print_entry nentry;
@ -180,7 +180,7 @@ mca_fcoll_two_phase_file_write_all (mca_io_ompio_file_t *fh,
if (! (fh->f_flags & OMPIO_CONTIGUOUS_MEMORY)) {
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *)fh,
datatype,
count,
buf,
@ -228,7 +228,7 @@ mca_fcoll_two_phase_file_write_all (mca_io_ompio_file_t *fh,
goto exit;
}
if(-1 == two_phase_num_io_procs){
ret = mca_common_ompio_set_aggregator_props ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_set_aggregator_props ((struct ompio_file_t *)fh,
two_phase_num_io_procs,
max_data);
if ( OMPI_SUCCESS != ret){
@ -264,7 +264,7 @@ mca_fcoll_two_phase_file_write_all (mca_io_ompio_file_t *fh,
}
}
ret = fh->f_generate_current_file_view ((struct mca_io_ompio_file_t*)fh,
ret = fh->f_generate_current_file_view ((struct ompio_file_t*)fh,
max_data,
&iov,
&local_count);
@ -590,10 +590,10 @@ exit :
}
static int two_phase_exch_and_write(mca_io_ompio_file_t *fh,
static int two_phase_exch_and_write(ompio_file_t *fh,
const void *buf,
MPI_Datatype datatype,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
struct iovec *offset_len,
int contig_access_count,
OMPI_MPI_OFFSET_TYPE min_st_offset,
@ -842,8 +842,8 @@ static int two_phase_exch_and_write(mca_io_ompio_file_t *fh,
}
#endif
len = size * byte_size;
fh->f_io_array = (mca_io_ompio_io_array_t *)malloc
(sizeof(mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *)malloc
(sizeof(mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;
@ -928,7 +928,7 @@ exit:
return ret;
}
static int two_phase_exchage_data(mca_io_ompio_file_t *fh,
static int two_phase_exchage_data(ompio_file_t *fh,
const void *buf,
char *write_buf,
struct iovec *offset_length,
@ -943,7 +943,7 @@ static int two_phase_exchage_data(mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *fd_start,
OMPI_MPI_OFFSET_TYPE *fd_end,
Flatlist_node *flat_buf,
mca_io_ompio_access_array_t *others_req,
mca_common_ompio_access_array_t *others_req,
int *send_buf_idx, int *curr_to_proc,
int *done_to_proc, int iter,
size_t *buf_idx,MPI_Aint buftype_extent,
@ -1069,8 +1069,8 @@ static int two_phase_exchage_data(mca_io_ompio_file_t *fh,
if (nprocs_recv){
if (*hole){
if (off >= 0){
fh->f_io_array = (mca_io_ompio_io_array_t *)malloc
(sizeof(mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *)malloc
(sizeof(mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;
@ -1287,7 +1287,7 @@ exit:
static int two_phase_fill_send_buffer(mca_io_ompio_file_t *fh,
static int two_phase_fill_send_buffer(ompio_file_t *fh,
const void *buf,
Flatlist_node *flat_buf,
char **send_buf,
@ -1407,7 +1407,7 @@ static int two_phase_fill_send_buffer(mca_io_ompio_file_t *fh,
void two_phase_heap_merge( mca_io_ompio_access_array_t *others_req,
void two_phase_heap_merge( mca_common_ompio_access_array_t *others_req,
int *count,
OMPI_MPI_OFFSET_TYPE *srt_off,
int *srt_len,

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -53,7 +55,7 @@ mca_fcoll_two_phase_component_init_query(bool enable_progress_threads,
}
mca_fcoll_base_module_1_0_0_t *
mca_fcoll_two_phase_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fcoll_two_phase_component_file_query (ompio_file_t *fh, int *priority)
{
*priority = mca_fcoll_two_phase_priority;
if (0 >= mca_fcoll_two_phase_priority) {
@ -69,7 +71,7 @@ mca_fcoll_two_phase_component_file_query (mca_io_ompio_file_t *fh, int *priority
return &two_phase;
}
int mca_fcoll_two_phase_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fcoll_two_phase_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -78,13 +80,13 @@ int mca_fcoll_two_phase_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fcoll_two_phase_module_init (mca_io_ompio_file_t *file)
int mca_fcoll_two_phase_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_fcoll_two_phase_module_finalize (mca_io_ompio_file_t *file)
int mca_fcoll_two_phase_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -41,7 +41,7 @@ Functions to support Domain partitioning and aggregator
selection for two_phase .
This is commom to both two_phase_read and write. */
int mca_fcoll_two_phase_domain_partition (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_domain_partition (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *start_offsets,
OMPI_MPI_OFFSET_TYPE *end_offsets,
OMPI_MPI_OFFSET_TYPE *min_st_offset_ptr,
@ -143,7 +143,7 @@ int mca_fcoll_two_phase_domain_partition (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_aggregator(mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_aggregator(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE off,
OMPI_MPI_OFFSET_TYPE min_off,
OMPI_MPI_OFFSET_TYPE *len,
@ -191,19 +191,19 @@ int mca_fcoll_two_phase_calc_aggregator(mca_io_ompio_file_t *fh,
return rank;
}
int mca_fcoll_two_phase_calc_others_requests(mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_others_requests(ompio_file_t *fh,
int count_my_req_procs,
int *count_my_req_per_proc,
mca_io_ompio_access_array_t *my_req,
mca_common_ompio_access_array_t *my_req,
int *count_others_req_procs_ptr,
mca_io_ompio_access_array_t **others_req_ptr)
mca_common_ompio_access_array_t **others_req_ptr)
{
int *count_others_req_per_proc=NULL, count_others_req_procs;
int i,j, ret=OMPI_SUCCESS;
MPI_Request *requests=NULL;
mca_io_ompio_access_array_t *others_req=NULL;
mca_common_ompio_access_array_t *others_req=NULL;
count_others_req_per_proc = (int *)malloc(fh->f_size*sizeof(int));
@ -232,8 +232,8 @@ int mca_fcoll_two_phase_calc_others_requests(mca_io_ompio_file_t *fh,
}
#endif
*others_req_ptr = (mca_io_ompio_access_array_t *) malloc
(fh->f_size*sizeof(mca_io_ompio_access_array_t));
*others_req_ptr = (mca_common_ompio_access_array_t *) malloc
(fh->f_size*sizeof(mca_common_ompio_access_array_t));
others_req = *others_req_ptr;
count_others_req_procs = 0;
@ -347,7 +347,7 @@ exit:
}
int mca_fcoll_two_phase_calc_my_requests (mca_io_ompio_file_t *fh,
int mca_fcoll_two_phase_calc_my_requests (ompio_file_t *fh,
struct iovec *offset_len,
int contig_access_count,
OMPI_MPI_OFFSET_TYPE min_st_offset,
@ -356,7 +356,7 @@ int mca_fcoll_two_phase_calc_my_requests (mca_io_ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE fd_size,
int *count_my_req_procs_ptr,
int **count_my_req_per_proc_ptr,
mca_io_ompio_access_array_t **my_req_ptr,
mca_common_ompio_access_array_t **my_req_ptr,
size_t **buf_indices,
int striping_unit,
int num_aggregators,
@ -367,7 +367,7 @@ int mca_fcoll_two_phase_calc_my_requests (mca_io_ompio_file_t *fh,
size_t *buf_idx = NULL;
int i, l, proc;
OMPI_MPI_OFFSET_TYPE fd_len, rem_len, curr_idx, off;
mca_io_ompio_access_array_t *my_req = NULL;
mca_common_ompio_access_array_t *my_req = NULL;
*count_my_req_per_proc_ptr = (int*)malloc(fh->f_size*sizeof(int));
@ -415,8 +415,8 @@ int mca_fcoll_two_phase_calc_my_requests (mca_io_ompio_file_t *fh,
}
/* printf("%d: fh->f_size : %d\n", fh->f_rank,fh->f_size);*/
*my_req_ptr = (mca_io_ompio_access_array_t *)
malloc (fh->f_size * sizeof(mca_io_ompio_access_array_t));
*my_req_ptr = (mca_common_ompio_access_array_t *)
malloc (fh->f_size * sizeof(mca_common_ompio_access_array_t));
if ( NULL == *my_req_ptr ) {
ret = OMPI_ERR_OUT_OF_RESOURCE;
goto err_exit;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -46,21 +46,21 @@ OMPI_MODULE_DECLSPEC extern mca_fcoll_base_component_2_0_0_t mca_fcoll_vulcan_co
int mca_fcoll_vulcan_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fcoll_base_module_1_0_0_t *
mca_fcoll_vulcan_component_file_query (mca_io_ompio_file_t *fh, int *priority);
mca_fcoll_vulcan_component_file_query (ompio_file_t *fh, int *priority);
int mca_fcoll_vulcan_component_file_unquery (mca_io_ompio_file_t *file);
int mca_fcoll_vulcan_component_file_unquery (ompio_file_t *file);
int mca_fcoll_vulcan_module_init (mca_io_ompio_file_t *file);
int mca_fcoll_vulcan_module_finalize (mca_io_ompio_file_t *file);
int mca_fcoll_vulcan_module_init (ompio_file_t *file);
int mca_fcoll_vulcan_module_finalize (ompio_file_t *file);
int mca_fcoll_vulcan_file_read_all (mca_io_ompio_file_t *fh,
int mca_fcoll_vulcan_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t * status);
int mca_fcoll_vulcan_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_vulcan_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -49,7 +49,7 @@ static int read_heap_sort (mca_io_ompio_local_io_array *io_array,
int
mca_fcoll_vulcan_file_read_all (mca_io_ompio_file_t *fh,
mca_fcoll_vulcan_file_read_all (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -124,7 +124,7 @@ mca_fcoll_vulcan_file_read_all (mca_io_ompio_file_t *fh,
if (! recvbuf_is_contiguous ) {
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *)fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *)fh,
datatype,
count,
buf,
@ -149,7 +149,7 @@ mca_fcoll_vulcan_file_read_all (mca_io_ompio_file_t *fh,
goto exit;
}
ret = mca_common_ompio_set_aggregator_props ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_set_aggregator_props ((struct ompio_file_t *) fh,
vulcan_num_io_procs,
max_data);
if (OMPI_SUCCESS != ret){
@ -199,7 +199,7 @@ mca_fcoll_vulcan_file_read_all (mca_io_ompio_file_t *fh,
/*********************************************************************
*** 3. Generate the File offsets/lengths corresponding to this write
********************************************************************/
ret = fh->f_generate_current_file_view ((struct mca_io_ompio_file_t *) fh,
ret = fh->f_generate_current_file_view ((struct ompio_file_t *) fh,
max_data,
&local_iov_array,
&local_count);
@ -662,8 +662,8 @@ mca_fcoll_vulcan_file_read_all (mca_io_ompio_file_t *fh,
/**********************************************************
*** 7e. Create the io array, and pass it to fbtl
*********************************************************/
fh->f_io_array = (mca_io_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_common_ompio_io_array_t));
if (NULL == fh->f_io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;

Просмотреть файл

@ -60,7 +60,7 @@ typedef struct mca_io_ompio_aggregator_data {
int bytes_sent, prev_bytes_sent;
struct iovec *decoded_iov;
int bytes_to_write, prev_bytes_to_write;
mca_io_ompio_io_array_t *io_array, *prev_io_array;
mca_common_ompio_io_array_t *io_array, *prev_io_array;
int num_io_entries, prev_num_io_entries;
} mca_io_ompio_aggregator_data;
@ -91,7 +91,7 @@ typedef struct mca_io_ompio_aggregator_data {
static int shuffle_init ( int index, int cycles, int aggregator, int rank,
mca_io_ompio_aggregator_data *data,
ompi_request_t **reqs );
static int write_init (mca_io_ompio_file_t *fh, int aggregator, mca_io_ompio_aggregator_data *aggr_data,
static int write_init (ompio_file_t *fh, int aggregator, mca_io_ompio_aggregator_data *aggr_data,
int write_chunksize, int write_synchType, ompi_request_t **request);
int mca_fcoll_vulcan_break_file_view ( struct iovec *decoded_iov, int iov_count,
struct iovec *local_iov_array, int local_count,
@ -101,7 +101,7 @@ int mca_fcoll_vulcan_break_file_view ( struct iovec *decoded_iov, int iov_count,
int stripe_count, size_t stripe_size);
int mca_fcoll_vulcan_get_configuration (mca_io_ompio_file_t *fh, int num_io_procs,
int mca_fcoll_vulcan_get_configuration (ompio_file_t *fh, int num_io_procs,
int num_groups, size_t max_data);
@ -109,16 +109,16 @@ static int local_heap_sort (mca_io_ompio_local_io_array *io_array,
int num_entries,
int *sorted);
int mca_fcoll_vulcan_split_iov_array ( mca_io_ompio_file_t *fh, mca_io_ompio_io_array_t *work_array,
int mca_fcoll_vulcan_split_iov_array ( ompio_file_t *fh, mca_common_ompio_io_array_t *work_array,
int num_entries, int *last_array_pos, int *last_pos_in_field,
int chunk_size );
static int mca_fcoll_vulcan_minmax ( mca_io_ompio_file_t *fh, struct iovec *iov, int iov_count, int num_aggregators,
static int mca_fcoll_vulcan_minmax ( ompio_file_t *fh, struct iovec *iov, int iov_count, int num_aggregators,
long *new_stripe_size);
int mca_fcoll_vulcan_file_write_all (mca_io_ompio_file_t *fh,
int mca_fcoll_vulcan_file_write_all (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -184,7 +184,7 @@ int mca_fcoll_vulcan_file_write_all (mca_io_ompio_file_t *fh,
bytes_per_cycle =bytes_per_cycle/2;
write_chunksize = bytes_per_cycle;
ret = mca_common_ompio_decode_datatype ((struct mca_io_ompio_file_t *) fh,
ret = mca_common_ompio_decode_datatype ((struct ompio_file_t *) fh,
datatype,
count,
buf,
@ -228,7 +228,7 @@ int mca_fcoll_vulcan_file_write_all (mca_io_ompio_file_t *fh,
*** 2. Generate the local offsets/lengths array corresponding to
*** this write operation
********************************************************************/
ret = fh->f_generate_current_file_view( (struct mca_io_ompio_file_t *) fh,
ret = fh->f_generate_current_file_view( (struct ompio_file_t *) fh,
max_data,
&local_iov_array,
&local_count);
@ -735,7 +735,7 @@ exit :
return OMPI_SUCCESS;
}
static int write_init (mca_io_ompio_file_t *fh,
static int write_init (ompio_file_t *fh,
int aggregator,
mca_io_ompio_aggregator_data *aggr_data,
int write_chunksize,
@ -1292,8 +1292,8 @@ static int shuffle_init ( int index, int cycles, int aggregator, int rank, mca_i
if (aggregator == rank && entries_per_aggregator>0) {
data->io_array = (mca_io_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_io_ompio_io_array_t));
data->io_array = (mca_common_ompio_io_array_t *) malloc
(entries_per_aggregator * sizeof (mca_common_ompio_io_array_t));
if (NULL == data->io_array) {
opal_output(1, "OUT OF MEMORY\n");
ret = OMPI_ERR_OUT_OF_RESOURCE;
@ -1353,7 +1353,7 @@ exit:
return OMPI_SUCCESS;
}
static int mca_fcoll_vulcan_minmax ( mca_io_ompio_file_t *fh, struct iovec *iov, int iov_count, int num_aggregators, long *new_stripe_size)
static int mca_fcoll_vulcan_minmax ( ompio_file_t *fh, struct iovec *iov, int iov_count, int num_aggregators, long *new_stripe_size)
{
long min, max, globalmin, globalmax;
long stripe_size;
@ -1616,7 +1616,7 @@ exit:
}
int mca_fcoll_vulcan_get_configuration (mca_io_ompio_file_t *fh, int num_io_procs, int num_groups,
int mca_fcoll_vulcan_get_configuration (ompio_file_t *fh, int num_io_procs, int num_groups,
size_t max_data)
{
int i, ret;
@ -1647,7 +1647,7 @@ int mca_fcoll_vulcan_get_configuration (mca_io_ompio_file_t *fh, int num_io_proc
}
int mca_fcoll_vulcan_split_iov_array ( mca_io_ompio_file_t *fh, mca_io_ompio_io_array_t *io_array, int num_entries,
int mca_fcoll_vulcan_split_iov_array ( ompio_file_t *fh, mca_common_ompio_io_array_t *io_array, int num_entries,
int *ret_array_pos, int *ret_pos, int chunk_size )
{
@ -1657,7 +1657,7 @@ int mca_fcoll_vulcan_split_iov_array ( mca_io_ompio_file_t *fh, mca_io_ompio_io_
size_t bytes_to_write = chunk_size;
if ( 0 == array_pos && 0 == pos ) {
fh->f_io_array = (mca_io_ompio_io_array_t *) malloc ( num_entries * sizeof(mca_io_ompio_io_array_t));
fh->f_io_array = (mca_common_ompio_io_array_t *) malloc ( num_entries * sizeof(mca_common_ompio_io_array_t));
if ( NULL == fh->f_io_array ){
opal_output (1,"Could not allocate memory\n");
return -1;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -53,7 +55,7 @@ mca_fcoll_vulcan_component_init_query(bool enable_progress_threads,
}
mca_fcoll_base_module_1_0_0_t *
mca_fcoll_vulcan_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fcoll_vulcan_component_file_query (ompio_file_t *fh, int *priority)
{
*priority = mca_fcoll_vulcan_priority;
if (0 >= mca_fcoll_vulcan_priority) {
@ -69,7 +71,7 @@ mca_fcoll_vulcan_component_file_query (mca_io_ompio_file_t *fh, int *priority)
return &vulcan;
}
int mca_fcoll_vulcan_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fcoll_vulcan_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -78,13 +80,13 @@ int mca_fcoll_vulcan_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fcoll_vulcan_module_init (mca_io_ompio_file_t *file)
int mca_fcoll_vulcan_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_fcoll_vulcan_module_finalize (mca_io_ompio_file_t *file)
int mca_fcoll_vulcan_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -11,6 +11,8 @@
* All rights reserved.
* Copyright (c) 2008 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -30,23 +32,24 @@
#include "ompi_config.h"
#include "mpi.h"
#include "ompi/mca/fs/fs.h"
#include "opal/mca/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
#include "ompi/mca/fs/fs.h"
BEGIN_C_DECLS
OMPI_DECLSPEC int mca_fs_base_file_select(struct mca_io_ompio_file_t *file,
OMPI_DECLSPEC int mca_fs_base_file_select(struct ompio_file_t *file,
mca_base_component_t *preferred);
OMPI_DECLSPEC int mca_fs_base_file_unselect(struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_fs_base_file_unselect(struct ompio_file_t *file);
OMPI_DECLSPEC int mca_fs_base_find_available(bool enable_progress_threads,
bool enable_mpi_threads);
OMPI_DECLSPEC int mca_fs_base_init_file (struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_fs_base_init_file (struct ompio_file_t *file);
OMPI_DECLSPEC int mca_fs_base_get_param (struct mca_io_ompio_file_t *file, int keyval);
OMPI_DECLSPEC int mca_fs_base_get_param (struct ompio_file_t *file, int keyval);
OMPI_DECLSPEC void mca_fs_base_get_parent_dir (char *filename, char **dirnamep);
OMPI_DECLSPEC int mca_fs_base_get_fstype(char *fname);
/*

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -62,7 +64,7 @@ static OBJ_CLASS_INSTANCE(queried_module_t, opal_list_item_t, NULL, NULL);
* their module but were unfortunate to not get selected
*/
int mca_fs_base_file_select (struct mca_io_ompio_file_t *file,
int mca_fs_base_file_select (struct ompio_file_t *file,
mca_base_component_t *preferred)
{
int priority;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -32,7 +34,7 @@
#include "ompi/mca/common/ompio/common_ompio.h"
int mca_fs_base_file_unselect(mca_io_ompio_file_t *file)
int mca_fs_base_file_unselect(ompio_file_t *file)
{
if (NULL != file->f_fs && NULL != file->f_fs->fs_module_finalize) {
return file->f_fs->fs_module_finalize(file);

Просмотреть файл

@ -13,7 +13,7 @@
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
* reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -34,7 +34,7 @@
BEGIN_C_DECLS
struct mca_io_ompio_file_t;
struct ompio_file_t;
/*
* Macro for use in components that are of type coll
@ -74,11 +74,11 @@ typedef int (*mca_fs_base_component_init_query_1_0_0_fn_t)
bool enable_mpi_threads);
typedef struct mca_fs_base_module_1_0_0_t *
(*mca_fs_base_component_file_query_1_0_0_fn_t) (struct mca_io_ompio_file_t *file,
(*mca_fs_base_component_file_query_1_0_0_fn_t) (struct ompio_file_t *file,
int *priority);
typedef int (*mca_fs_base_component_file_unquery_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
/*
* ****************** component struct ******************************
@ -105,23 +105,23 @@ typedef struct mca_fs_base_component_2_0_0_t mca_fs_base_component_t;
*/
typedef int (*mca_fs_base_module_init_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
typedef int (*mca_fs_base_module_finalize_1_0_0_fn_t)
(struct mca_io_ompio_file_t *file);
(struct ompio_file_t *file);
typedef int (*mca_fs_base_module_file_open_fn_t)(
struct ompi_communicator_t *comm, const char *filename, int amode,
struct opal_info_t *info, struct mca_io_ompio_file_t *fh);
typedef int (*mca_fs_base_module_file_close_fn_t)(struct mca_io_ompio_file_t *fh);
struct opal_info_t *info, struct ompio_file_t *fh);
typedef int (*mca_fs_base_module_file_close_fn_t)(struct ompio_file_t *fh);
typedef int (*mca_fs_base_module_file_delete_fn_t)(
char *filename, struct opal_info_t *info);
typedef int (*mca_fs_base_module_file_set_size_fn_t)
(struct mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE size);
(struct ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE size);
typedef int (*mca_fs_base_module_file_get_size_fn_t)
(struct mca_io_ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE *size);
(struct ompio_file_t *fh, OMPI_MPI_OFFSET_TYPE *size);
typedef int (*mca_fs_base_module_file_sync_fn_t)
(struct mca_io_ompio_file_t *fh);
(struct ompio_file_t *fh);
/*
* ***********************************************************************

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -74,7 +76,7 @@ int mca_fs_lustre_component_init_query(bool enable_progress_threads,
}
struct mca_fs_base_module_1_0_0_t *
mca_fs_lustre_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fs_lustre_component_file_query (ompio_file_t *fh, int *priority)
{
char *tmp;
@ -114,7 +116,7 @@ mca_fs_lustre_component_file_query (mca_io_ompio_file_t *fh, int *priority)
return NULL;
}
int mca_fs_lustre_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fs_lustre_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -123,7 +125,7 @@ int mca_fs_lustre_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fs_lustre_module_init (mca_io_ompio_file_t *file)
int mca_fs_lustre_module_init (ompio_file_t *file)
{
/* Make sure the file type is not overwritten by the last queried
* component */
@ -132,7 +134,7 @@ int mca_fs_lustre_module_init (mca_io_ompio_file_t *file)
}
int mca_fs_lustre_module_finalize (mca_io_ompio_file_t *file)
int mca_fs_lustre_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2017 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -45,11 +45,11 @@ BEGIN_C_DECLS
int mca_fs_lustre_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fs_base_module_1_0_0_t *
mca_fs_lustre_component_file_query (mca_io_ompio_file_t *fh, int *priority);
int mca_fs_lustre_component_file_unquery (mca_io_ompio_file_t *file);
mca_fs_lustre_component_file_query (ompio_file_t *fh, int *priority);
int mca_fs_lustre_component_file_unquery (ompio_file_t *file);
int mca_fs_lustre_module_init (mca_io_ompio_file_t *file);
int mca_fs_lustre_module_finalize (mca_io_ompio_file_t *file);
int mca_fs_lustre_module_init (ompio_file_t *file);
int mca_fs_lustre_module_finalize (ompio_file_t *file);
OMPI_MODULE_DECLSPEC extern mca_fs_base_component_2_0_0_t mca_fs_lustre_component;
/*
@ -62,22 +62,22 @@ int mca_fs_lustre_file_open (struct ompi_communicator_t *comm,
const char *filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh);
ompio_file_t *fh);
int mca_fs_lustre_file_close (mca_io_ompio_file_t *fh);
int mca_fs_lustre_file_close (ompio_file_t *fh);
int mca_fs_lustre_file_delete (char *filename,
struct opal_info_t *info);
int mca_fs_lustre_file_set_size (mca_io_ompio_file_t *fh,
int mca_fs_lustre_file_set_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE size);
int mca_fs_lustre_file_get_size (mca_io_ompio_file_t *fh,
int mca_fs_lustre_file_get_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size);
int mca_fs_lustre_file_sync (mca_io_ompio_file_t *fh);
int mca_fs_lustre_file_sync (ompio_file_t *fh);
int mca_fs_lustre_file_seek (mca_io_ompio_file_t *fh,
int mca_fs_lustre_file_seek (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
int whence);
/*

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -35,7 +37,7 @@
* Returns: - Success if file closed
*/
int
mca_fs_lustre_file_close (mca_io_ompio_file_t *fh)
mca_fs_lustre_file_close (ompio_file_t *fh)
{
fh->f_comm->c_coll->coll_barrier (fh->f_comm,
fh->f_comm->c_coll->coll_barrier_module);

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -33,7 +35,7 @@
* Returns: - Success if size is get
*/
int
mca_fs_lustre_file_get_size (mca_io_ompio_file_t *fh,
mca_fs_lustre_file_get_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size)
{
*size = lseek(fh->fd, 0, SEEK_END);

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2018 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -61,7 +61,7 @@ mca_fs_lustre_file_open (struct ompi_communicator_t *comm,
const char* filename,
int access_mode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh)
ompio_file_t *fh)
{
int amode, rank;
int old_mask, perm;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -33,7 +35,7 @@
* Returns: - Success if size is set
*/
int
mca_fs_lustre_file_set_size (mca_io_ompio_file_t *fh,
mca_fs_lustre_file_set_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE size)
{
int err = 0;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2009 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -34,7 +36,7 @@
* Returns: - Success if file closed
*/
int
mca_fs_lustre_file_sync (mca_io_ompio_file_t *fh)
mca_fs_lustre_file_sync (ompio_file_t *fh)
{
int err;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -73,7 +75,7 @@ int mca_fs_pvfs2_component_init_query(bool enable_progress_threads,
}
struct mca_fs_base_module_1_0_0_t *
mca_fs_pvfs2_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fs_pvfs2_component_file_query (ompio_file_t *fh, int *priority)
{
/* The code in this function is based on the ADIO FS selection in ROMIO
@ -119,7 +121,7 @@ mca_fs_pvfs2_component_file_query (mca_io_ompio_file_t *fh, int *priority)
return NULL;
}
int mca_fs_pvfs2_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fs_pvfs2_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -128,7 +130,7 @@ int mca_fs_pvfs2_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fs_pvfs2_module_init (mca_io_ompio_file_t *file)
int mca_fs_pvfs2_module_init (ompio_file_t *file)
{
/* Make sure the file type is not overwritten by the last queried
* component */
@ -137,7 +139,7 @@ int mca_fs_pvfs2_module_init (mca_io_ompio_file_t *file)
}
int mca_fs_pvfs2_module_finalize (mca_io_ompio_file_t *file)
int mca_fs_pvfs2_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -55,11 +55,11 @@ typedef struct mca_fs_pvfs2_s mca_fs_pvfs2;
int mca_fs_pvfs2_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fs_base_module_1_0_0_t *
mca_fs_pvfs2_component_file_query (mca_io_ompio_file_t *fh, int *priority);
int mca_fs_pvfs2_component_file_unquery (mca_io_ompio_file_t *file);
mca_fs_pvfs2_component_file_query (ompio_file_t *fh, int *priority);
int mca_fs_pvfs2_component_file_unquery (ompio_file_t *file);
int mca_fs_pvfs2_module_init (mca_io_ompio_file_t *file);
int mca_fs_pvfs2_module_finalize (mca_io_ompio_file_t *file);
int mca_fs_pvfs2_module_init (ompio_file_t *file);
int mca_fs_pvfs2_module_finalize (ompio_file_t *file);
OMPI_MODULE_DECLSPEC extern mca_fs_base_component_2_0_0_t mca_fs_pvfs2_component;
/*
@ -72,22 +72,22 @@ int mca_fs_pvfs2_file_open (struct ompi_communicator_t *comm,
const char *filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh);
ompio_file_t *fh);
int mca_fs_pvfs2_file_close (mca_io_ompio_file_t *fh);
int mca_fs_pvfs2_file_close (ompio_file_t *fh);
int mca_fs_pvfs2_file_delete (char *filename,
struct opal_info_t *info);
int mca_fs_pvfs2_file_set_size (mca_io_ompio_file_t *fh,
int mca_fs_pvfs2_file_set_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE size);
int mca_fs_pvfs2_file_get_size (mca_io_ompio_file_t *fh,
int mca_fs_pvfs2_file_get_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size);
int mca_fs_pvfs2_file_sync (mca_io_ompio_file_t *fh);
int mca_fs_pvfs2_file_sync (ompio_file_t *fh);
int mca_fs_pvfs2_file_seek (mca_io_ompio_file_t *fh,
int mca_fs_pvfs2_file_seek (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
int whence);
/*

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -39,7 +41,7 @@
* Returns: - Success if file closed
*/
int
mca_fs_pvfs2_file_close (mca_io_ompio_file_t *fh)
mca_fs_pvfs2_file_close (ompio_file_t *fh)
{
if (NULL != fh->f_fs_ptr) {
free (fh->f_fs_ptr);

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -37,7 +39,7 @@
* Returns: - Success if size is get
*/
int
mca_fs_pvfs2_file_get_size (mca_io_ompio_file_t *fh,
mca_fs_pvfs2_file_get_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size)
{
int ret;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -62,7 +62,7 @@ mca_fs_pvfs2_file_open (struct ompi_communicator_t *comm,
const char* filename,
int access_mode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh)
ompio_file_t *fh)
{
int ret;
mca_fs_pvfs2 *pvfs2_fs;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -37,7 +39,7 @@
* Returns: - Success if size is set
*/
int
mca_fs_pvfs2_file_set_size (mca_io_ompio_file_t *fh,
mca_fs_pvfs2_file_set_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE size)
{
int ret;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -37,7 +39,7 @@
* Returns: - Success if file closed
*/
int
mca_fs_pvfs2_file_sync (mca_io_ompio_file_t *fh)
mca_fs_pvfs2_file_sync (ompio_file_t *fh)
{
int ret;
mca_fs_pvfs2 *pvfs2_fs;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2014 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -59,7 +61,7 @@ int mca_fs_ufs_component_init_query(bool enable_progress_threads,
}
struct mca_fs_base_module_1_0_0_t *
mca_fs_ufs_component_file_query (mca_io_ompio_file_t *fh, int *priority)
mca_fs_ufs_component_file_query (ompio_file_t *fh, int *priority)
{
/* UFS can always be used, will however have a low priority */
@ -71,7 +73,7 @@ mca_fs_ufs_component_file_query (mca_io_ompio_file_t *fh, int *priority)
return &ufs;
}
int mca_fs_ufs_component_file_unquery (mca_io_ompio_file_t *file)
int mca_fs_ufs_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -80,7 +82,7 @@ int mca_fs_ufs_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_fs_ufs_module_init (mca_io_ompio_file_t *file)
int mca_fs_ufs_module_init (ompio_file_t *file)
{
/* Make sure the file type is not overwritten by the last queried
* component */
@ -89,7 +91,7 @@ int mca_fs_ufs_module_init (mca_io_ompio_file_t *file)
}
int mca_fs_ufs_module_finalize (mca_io_ompio_file_t *file)
int mca_fs_ufs_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -41,11 +41,11 @@ BEGIN_C_DECLS
int mca_fs_ufs_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_fs_base_module_1_0_0_t *
mca_fs_ufs_component_file_query (mca_io_ompio_file_t *fh, int *priority);
int mca_fs_ufs_component_file_unquery (mca_io_ompio_file_t *file);
mca_fs_ufs_component_file_query (ompio_file_t *fh, int *priority);
int mca_fs_ufs_component_file_unquery (ompio_file_t *file);
int mca_fs_ufs_module_init (mca_io_ompio_file_t *file);
int mca_fs_ufs_module_finalize (mca_io_ompio_file_t *file);
int mca_fs_ufs_module_init (ompio_file_t *file);
int mca_fs_ufs_module_finalize (ompio_file_t *file);
OMPI_MODULE_DECLSPEC extern mca_fs_base_component_2_0_0_t mca_fs_ufs_component;
/*
@ -58,22 +58,22 @@ int mca_fs_ufs_file_open (struct ompi_communicator_t *comm,
const char *filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh);
ompio_file_t *fh);
int mca_fs_ufs_file_close (mca_io_ompio_file_t *fh);
int mca_fs_ufs_file_close (ompio_file_t *fh);
int mca_fs_ufs_file_delete (char *filename,
struct opal_info_t *info);
int mca_fs_ufs_file_set_size (mca_io_ompio_file_t *fh,
int mca_fs_ufs_file_set_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE size);
int mca_fs_ufs_file_get_size (mca_io_ompio_file_t *fh,
int mca_fs_ufs_file_get_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size);
int mca_fs_ufs_file_sync (mca_io_ompio_file_t *fh);
int mca_fs_ufs_file_sync (ompio_file_t *fh);
int mca_fs_ufs_file_seek (mca_io_ompio_file_t *fh,
int mca_fs_ufs_file_seek (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
int whence);
/*

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -35,7 +37,7 @@
* Returns: - Success if file closed
*/
int
mca_fs_ufs_file_close (mca_io_ompio_file_t *fh)
mca_fs_ufs_file_close (ompio_file_t *fh)
{
fh->f_comm->c_coll->coll_barrier (fh->f_comm,
fh->f_comm->c_coll->coll_barrier_module);

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -35,7 +37,7 @@
* Returns: - Success if size is get
*/
int
mca_fs_ufs_file_get_size (mca_io_ompio_file_t *fh,
mca_fs_ufs_file_get_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size)
{
*size = lseek(fh->fd, 0, SEEK_END);

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2018 University of Houston. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -46,7 +46,7 @@ mca_fs_ufs_file_open (struct ompi_communicator_t *comm,
const char* filename,
int access_mode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh)
ompio_file_t *fh)
{
int amode;
int old_mask, perm;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -35,7 +37,7 @@
* Returns: - Success if size is set
*/
int
mca_fs_ufs_file_set_size (mca_io_ompio_file_t *fh,
mca_fs_ufs_file_set_size (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE size)
{
int err = 0;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -27,7 +29,7 @@
#include "ompi/mca/fs/fs.h"
int
mca_fs_ufs_file_sync (mca_io_ompio_file_t *fh)
mca_fs_ufs_file_sync (ompio_file_t *fh)
{
int err;

Просмотреть файл

@ -41,7 +41,7 @@
#include "io_ompio.h"
int ompi_io_ompio_generate_current_file_view (struct mca_io_ompio_file_t *fh,
int ompi_io_ompio_generate_current_file_view (struct ompio_file_t *fh,
size_t max_data,
struct iovec **f_iov,
int *iov_count)

Просмотреть файл

@ -116,12 +116,12 @@ OMPI_DECLSPEC int ompi_io_ompio_sort_offlen (mca_io_ompio_offlen_array_t *io_arr
int *sorted);
OMPI_DECLSPEC int ompi_io_ompio_generate_current_file_view (struct mca_io_ompio_file_t *fh,
OMPI_DECLSPEC int ompi_io_ompio_generate_current_file_view (struct ompio_file_t *fh,
size_t max_data,
struct iovec **f_iov,
int *iov_count);
OMPI_DECLSPEC int ompi_io_ompio_generate_groups (mca_io_ompio_file_t *fh,
OMPI_DECLSPEC int ompi_io_ompio_generate_groups (ompio_file_t *fh,
int num_aggregators,
int *root,
int *procs_per_group,

Просмотреть файл

@ -287,7 +287,7 @@ file_query(struct ompi_file_t *file,
struct mca_io_base_file_t **private_data,
int *priority)
{
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
char *tmp;
int rank;
int is_lustre=0; //false
@ -324,7 +324,7 @@ file_query(struct ompi_file_t *file,
/* Allocate a space for this module to hang private data (e.g.,
the OMPIO file handle) */
data = calloc(1, sizeof(mca_io_ompio_data_t));
data = calloc(1, sizeof(mca_common_ompio_data_t));
if (NULL == data) {
return NULL;
}

Просмотреть файл

@ -49,7 +49,7 @@ int mca_io_ompio_file_open (ompi_communicator_t *comm,
ompi_file_t *fh)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data=NULL;
mca_common_ompio_data_t *data=NULL;
bool use_sharedfp = true;
@ -57,7 +57,7 @@ int mca_io_ompio_file_open (ompi_communicator_t *comm,
There is virtually no way on how to reach this point from multiple
threads simultaniously
*/
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
if ( NULL == data ) {
return OMPI_ERR_OUT_OF_RESOURCE;
}
@ -83,9 +83,9 @@ int mca_io_ompio_file_open (ompi_communicator_t *comm,
int mca_io_ompio_file_close (ompi_file_t *fh)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
if ( NULL == data ) {
/* structure has already been freed, this is an erroneous call to file_close */
return ret;
@ -108,11 +108,11 @@ int mca_io_ompio_file_preallocate (ompi_file_t *fh,
{
int ret = OMPI_SUCCESS, cycles, i;
OMPI_MPI_OFFSET_TYPE tmp, current_size, size, written, len;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
char *buf = NULL;
ompi_status_public_t *status = NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
tmp = diskspace;
@ -227,9 +227,9 @@ int mca_io_ompio_file_set_size (ompi_file_t *fh,
{
int ret = OMPI_SUCCESS;
OMPI_MPI_OFFSET_TYPE tmp;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
tmp = size;
OPAL_THREAD_LOCK(&fh->f_lock);
@ -274,9 +274,9 @@ int mca_io_ompio_file_get_size (ompi_file_t *fh,
OMPI_MPI_OFFSET_TYPE *size)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_get_size(&data->ompio_fh,size);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -288,9 +288,9 @@ int mca_io_ompio_file_get_size (ompi_file_t *fh,
int mca_io_ompio_file_get_amode (ompi_file_t *fh,
int *amode)
{
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
/* No lock necessary in this case, amode is set in file_open, and
not modified later on*/
*amode = data->ompio_fh.f_amode;
@ -312,9 +312,9 @@ int mca_io_ompio_file_set_atomicity (ompi_file_t *fh,
int flag)
{
int tmp;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
if (flag) {
@ -344,9 +344,9 @@ int mca_io_ompio_file_set_atomicity (ompi_file_t *fh,
int mca_io_ompio_file_get_atomicity (ompi_file_t *fh,
int *flag)
{
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
*flag = data->ompio_fh.f_atomicity;
@ -358,9 +358,9 @@ int mca_io_ompio_file_get_atomicity (ompi_file_t *fh,
int mca_io_ompio_file_sync (ompi_file_t *fh)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
if ( !opal_list_is_empty (&mca_common_ompio_pending_requests) ) {
@ -384,10 +384,10 @@ int mca_io_ompio_file_seek (ompi_file_t *fh,
int whence)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
OMPI_MPI_OFFSET_TYPE offset, temp_offset;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
offset = off * data->ompio_fh.f_etype_size;
@ -432,10 +432,10 @@ int mca_io_ompio_file_get_position (ompi_file_t *fd,
OMPI_MPI_OFFSET_TYPE *offset)
{
int ret=OMPI_SUCCESS;
mca_io_ompio_data_t *data=NULL;
mca_io_ompio_file_t *fh=NULL;
mca_common_ompio_data_t *data=NULL;
ompio_file_t *fh=NULL;
data = (mca_io_ompio_data_t *) fd->f_io_selected_data;
data = (mca_common_ompio_data_t *) fd->f_io_selected_data;
fh = &data->ompio_fh;
OPAL_THREAD_LOCK(&fd->f_lock);
@ -450,11 +450,11 @@ int mca_io_ompio_file_get_byte_offset (ompi_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset,
OMPI_MPI_OFFSET_TYPE *disp)
{
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
int i, k, index;
long temp_offset;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
temp_offset = (long) data->ompio_fh.f_view_extent *
@ -496,11 +496,11 @@ int mca_io_ompio_file_seek_shared (ompi_file_t *fp,
int whence)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -522,11 +522,11 @@ int mca_io_ompio_file_get_position_shared (ompi_file_t *fp,
OMPI_MPI_OFFSET_TYPE * offset)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2018 University of Houston. All rights reserved.
* Copyright (c) 2017 Research Organization for Information Science
* Copyright (c) 2017-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -48,7 +48,7 @@
** routesin are used e.g. from the shared file pointer modules.
** The main difference is, that the first one takes an ompi_file_t
** as a file pointer argument, while the second uses the ompio internal
** mca_io_ompio_file_t structure.
** ompio_file_t structure.
*/
int mca_io_ompio_file_read (ompi_file_t *fp,
@ -58,9 +58,9 @@ int mca_io_ompio_file_read (ompi_file_t *fp,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
OPAL_THREAD_LOCK(&fp->f_lock);
ret = mca_common_ompio_file_read(&data->ompio_fh,buf,count,datatype,status);
OPAL_THREAD_UNLOCK(&fp->f_lock);
@ -76,9 +76,9 @@ int mca_io_ompio_file_read_at (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_read_at(&data->ompio_fh, offset,buf,count,datatype,status);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -93,9 +93,9 @@ int mca_io_ompio_file_iread (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_iread(&data->ompio_fh,buf,count,datatype,request);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -112,9 +112,9 @@ int mca_io_ompio_file_iread_at (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_iread_at(&data->ompio_fh,offset,buf,count,datatype,request);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -132,9 +132,9 @@ int mca_io_ompio_file_read_all (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = data->ompio_fh.
@ -161,10 +161,10 @@ int mca_io_ompio_file_iread_all (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data=NULL;
mca_io_ompio_file_t *fp=NULL;
mca_common_ompio_data_t *data=NULL;
ompio_file_t *fp=NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
OPAL_THREAD_LOCK(&fh->f_lock);
@ -195,9 +195,9 @@ int mca_io_ompio_file_read_at_all (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_read_at_all(&data->ompio_fh,offset,buf,count,datatype,status);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -213,8 +213,8 @@ int mca_io_ompio_file_iread_at_all (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
mca_common_ompio_data_t *data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_iread_at_all ( &data->ompio_fh, offset, buf, count, datatype, request );
@ -233,11 +233,11 @@ int mca_io_ompio_file_read_shared (ompi_file_t *fp,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -260,11 +260,11 @@ int mca_io_ompio_file_iread_shared (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *ompio_fh;
mca_common_ompio_data_t *data;
ompio_file_t *ompio_fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
ompio_fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -287,11 +287,11 @@ int mca_io_ompio_file_read_ordered (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *ompio_fh;
mca_common_ompio_data_t *data;
ompio_file_t *ompio_fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
ompio_fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -312,11 +312,11 @@ int mca_io_ompio_file_read_ordered_begin (ompi_file_t *fh,
struct ompi_datatype_t *datatype)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *ompio_fh;
mca_common_ompio_data_t *data;
ompio_file_t *ompio_fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
ompio_fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -337,11 +337,11 @@ int mca_io_ompio_file_read_ordered_end (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *ompio_fh;
mca_common_ompio_data_t *data;
ompio_file_t *ompio_fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
ompio_fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -366,10 +366,10 @@ int mca_io_ompio_file_read_all_begin (ompi_file_t *fh,
struct ompi_datatype_t *datatype)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_file_t *fp;
mca_io_ompio_data_t *data;
ompio_file_t *fp;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
if ( true == fp->f_split_coll_in_use ) {
printf("Only one split collective I/O operation allowed per file handle at any given point in time!\n");
@ -387,10 +387,10 @@ int mca_io_ompio_file_read_all_end (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_file_t *fp;
mca_io_ompio_data_t *data;
ompio_file_t *fp;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
ret = ompi_request_wait ( &fp->f_split_coll_req, status );
@ -406,9 +406,9 @@ int mca_io_ompio_file_read_at_all_begin (ompi_file_t *fh,
struct ompi_datatype_t *datatype)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fp=NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
mca_common_ompio_data_t *data;
ompio_file_t *fp=NULL;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
if ( true == fp->f_split_coll_in_use ) {
@ -427,10 +427,10 @@ int mca_io_ompio_file_read_at_all_end (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fp=NULL;
mca_common_ompio_data_t *data;
ompio_file_t *fp=NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
ret = ompi_request_wait ( &fp->f_split_coll_req, status );

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -63,11 +63,11 @@ int mca_io_ompio_file_set_view (ompi_file_t *fp,
opal_info_t *info)
{
int ret=OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_io_ompio_file_t *sh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
ompio_file_t *sh;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
/* we need to call the internal file set view twice: once for the individual
file pointer, once for the shared file pointer (if it is existent)
@ -92,10 +92,10 @@ int mca_io_ompio_file_get_view (struct ompi_file_t *fp,
struct ompi_datatype_t **filetype,
char *datarep)
{
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
OPAL_THREAD_LOCK(&fp->f_lock);

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2018 University of Houston. All rights reserved.
* Copyright (c) 2015-2017 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -50,7 +50,7 @@
** routesin are used e.g. from the shared file pointer modules.
** The main difference is, that the first one takes an ompi_file_t
** as a file pointer argument, while the second uses the ompio internal
** mca_io_ompio_file_t structure.
** ompio_file_t structure.
*/
@ -61,10 +61,10 @@ int mca_io_ompio_file_write (ompi_file_t *fp,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
OPAL_THREAD_LOCK(&fp->f_lock);
ret = mca_common_ompio_file_write(fh,buf,count,datatype,status);
@ -81,9 +81,9 @@ int mca_io_ompio_file_write_at (ompi_file_t *fh,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_write_at (&data->ompio_fh, offset,buf,count,datatype,status);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -98,9 +98,9 @@ int mca_io_ompio_file_iwrite (ompi_file_t *fp,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
OPAL_THREAD_LOCK(&fp->f_lock);
ret = mca_common_ompio_file_iwrite(&data->ompio_fh,buf,count,datatype,request);
OPAL_THREAD_UNLOCK(&fp->f_lock);
@ -117,9 +117,9 @@ int mca_io_ompio_file_iwrite_at (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_iwrite_at(&data->ompio_fh,offset,buf,count,datatype,request);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -138,9 +138,9 @@ int mca_io_ompio_file_write_all (ompi_file_t *fh,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = data->ompio_fh.
@ -168,9 +168,9 @@ int mca_io_ompio_file_write_at_all (ompi_file_t *fh,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_write_at_all(&data->ompio_fh,offset,buf,count,datatype,status);
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -185,10 +185,10 @@ int mca_io_ompio_file_iwrite_all (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data=NULL;
mca_io_ompio_file_t *fp=NULL;
mca_common_ompio_data_t *data=NULL;
ompio_file_t *fp=NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
OPAL_THREAD_LOCK(&fh->f_lock);
@ -219,9 +219,9 @@ int mca_io_ompio_file_iwrite_at_all (ompi_file_t *fh,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
OPAL_THREAD_LOCK(&fh->f_lock);
ret = mca_common_ompio_file_iwrite_at_all ( &data->ompio_fh, offset, buf, count, datatype, request );
OPAL_THREAD_UNLOCK(&fh->f_lock);
@ -240,11 +240,11 @@ int mca_io_ompio_file_write_shared (ompi_file_t *fp,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -267,11 +267,11 @@ int mca_io_ompio_file_iwrite_shared (ompi_file_t *fp,
ompi_request_t **request)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -294,11 +294,11 @@ int mca_io_ompio_file_write_ordered (ompi_file_t *fp,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -320,11 +320,11 @@ int mca_io_ompio_file_write_ordered_begin (ompi_file_t *fp,
struct ompi_datatype_t *datatype)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -345,11 +345,11 @@ int mca_io_ompio_file_write_ordered_end (ompi_file_t *fp,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fh;
mca_common_ompio_data_t *data;
ompio_file_t *fh;
mca_sharedfp_base_module_t * shared_fp_base_module;
data = (mca_io_ompio_data_t *) fp->f_io_selected_data;
data = (mca_common_ompio_data_t *) fp->f_io_selected_data;
fh = &data->ompio_fh;
/*get the shared fp module associated with this file*/
@ -374,10 +374,10 @@ int mca_io_ompio_file_write_all_begin (ompi_file_t *fh,
struct ompi_datatype_t *datatype)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_file_t *fp;
mca_io_ompio_data_t *data;
ompio_file_t *fp;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
if ( true == fp->f_split_coll_in_use ) {
printf("Only one split collective I/O operation allowed per file handle at any given point in time!\n");
@ -395,10 +395,10 @@ int mca_io_ompio_file_write_all_end (ompi_file_t *fh,
ompi_status_public_t *status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_file_t *fp;
mca_io_ompio_data_t *data;
ompio_file_t *fp;
mca_common_ompio_data_t *data;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
ret = ompi_request_wait ( &fp->f_split_coll_req, status );
@ -415,10 +415,10 @@ int mca_io_ompio_file_write_at_all_begin (ompi_file_t *fh,
struct ompi_datatype_t *datatype)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data=NULL;
mca_io_ompio_file_t *fp=NULL;
mca_common_ompio_data_t *data=NULL;
ompio_file_t *fp=NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
if ( true == fp->f_split_coll_in_use ) {
@ -439,10 +439,10 @@ int mca_io_ompio_file_write_at_all_end (ompi_file_t *fh,
ompi_status_public_t * status)
{
int ret = OMPI_SUCCESS;
mca_io_ompio_data_t *data;
mca_io_ompio_file_t *fp=NULL;
mca_common_ompio_data_t *data;
ompio_file_t *fp=NULL;
data = (mca_io_ompio_data_t *) fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_io_selected_data;
fp = &data->ompio_fh;
ret = ompi_request_wait ( &fp->f_split_coll_req, status );

Просмотреть файл

@ -12,6 +12,8 @@
* Copyright (c) 2008 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
* Copyright (c) 2012-2013 Los Alamos National Security, Inc. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -32,8 +34,9 @@
#include "mpi.h"
#include "opal/class/opal_list.h"
#include "ompi/mca/sharedfp/sharedfp.h"
#include "ompi/mca/mca.h"
#include "ompi/mca/common/ompio/common_ompio.h"
#include "ompi/mca/sharedfp/sharedfp.h"
BEGIN_C_DECLS
@ -43,17 +46,17 @@ BEGIN_C_DECLS
*/
OMPI_DECLSPEC extern mca_base_framework_t ompi_sharedfp_base_framework;
/* select a component */
OMPI_DECLSPEC int mca_sharedfp_base_file_select(struct mca_io_ompio_file_t *file,
OMPI_DECLSPEC int mca_sharedfp_base_file_select(struct ompio_file_t *file,
mca_base_component_t *preferred);
OMPI_DECLSPEC int mca_sharedfp_base_file_unselect(struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_sharedfp_base_file_unselect(struct ompio_file_t *file);
OMPI_DECLSPEC int mca_sharedfp_base_find_available(bool enable_progress_threads,
bool enable_mpi_threads);
OMPI_DECLSPEC int mca_sharedfp_base_init_file (struct mca_io_ompio_file_t *file);
OMPI_DECLSPEC int mca_sharedfp_base_init_file (struct ompio_file_t *file);
OMPI_DECLSPEC int mca_sharedfp_base_get_param (struct mca_io_ompio_file_t *file, int keyval);
OMPI_DECLSPEC int mca_sharedfp_base_get_param (struct ompio_file_t *file, int keyval);
/*
* Globals
*/

Просмотреть файл

@ -11,6 +11,8 @@
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2012-2013 Los Alamos National Security, Inc. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -63,7 +65,7 @@ static OBJ_CLASS_INSTANCE(queried_module_t, opal_list_item_t, NULL, NULL);
* their module but were unfortunate to not get selected
*/
int mca_sharedfp_base_file_select (struct mca_io_ompio_file_t *file,
int mca_sharedfp_base_file_select (struct ompio_file_t *file,
mca_base_component_t *preferred)
{
int priority;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2016 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -32,7 +34,7 @@
#include "ompi/mca/common/ompio/common_ompio.h"
int mca_sharedfp_base_file_unselect(mca_io_ompio_file_t *file)
int mca_sharedfp_base_file_unselect(ompio_file_t *file)
{
if (NULL != file->f_sharedfp && NULL != file->f_sharedfp->sharedfp_module_finalize) {
return file->f_sharedfp->sharedfp_module_finalize(file);

Просмотреть файл

@ -11,6 +11,8 @@
* All rights reserved.
* Copyright (c) 2013-2015 University of Houston. All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -68,7 +70,7 @@ int mca_sharedfp_individual_component_init_query(bool enable_progress_threads,
return OMPI_SUCCESS;
}
struct mca_sharedfp_base_module_1_0_0_t * mca_sharedfp_individual_component_file_query (mca_io_ompio_file_t *fh, int *priority) {
struct mca_sharedfp_base_module_1_0_0_t * mca_sharedfp_individual_component_file_query (ompio_file_t *fh, int *priority) {
int amode;
bool wronly_flag=false;
@ -152,7 +154,7 @@ struct mca_sharedfp_base_module_1_0_0_t * mca_sharedfp_individual_component_file
return NULL;
}
int mca_sharedfp_individual_component_file_unquery (mca_io_ompio_file_t *file)
int mca_sharedfp_individual_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -161,13 +163,13 @@ int mca_sharedfp_individual_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_sharedfp_individual_module_init (mca_io_ompio_file_t *file)
int mca_sharedfp_individual_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_sharedfp_individual_module_finalize (mca_io_ompio_file_t *file)
int mca_sharedfp_individual_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -34,11 +34,11 @@ BEGIN_C_DECLS
int mca_sharedfp_individual_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_sharedfp_base_module_1_0_0_t *
mca_sharedfp_individual_component_file_query (mca_io_ompio_file_t *file, int *priority);
int mca_sharedfp_individual_component_file_unquery (mca_io_ompio_file_t *file);
mca_sharedfp_individual_component_file_query (ompio_file_t *file, int *priority);
int mca_sharedfp_individual_component_file_unquery (ompio_file_t *file);
int mca_sharedfp_individual_module_init (mca_io_ompio_file_t *file);
int mca_sharedfp_individual_module_finalize (mca_io_ompio_file_t *file);
int mca_sharedfp_individual_module_init (ompio_file_t *file);
int mca_sharedfp_individual_module_finalize (ompio_file_t *file);
extern int mca_sharedfp_individual_priority;
extern int mca_sharedfp_individual_verbose;
@ -51,51 +51,51 @@ OMPI_MODULE_DECLSPEC extern mca_sharedfp_base_component_2_0_0_t mca_sharedfp_ind
*/
/*IMPORANT: Update here when implementing functions from sharedfp API*/
int mca_sharedfp_individual_get_position(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_get_position(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE * offset);
int mca_sharedfp_individual_seek (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_seek (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset, int whence);
int mca_sharedfp_individual_file_open (struct ompi_communicator_t *comm,
const char* filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh);
int mca_sharedfp_individual_file_close (mca_io_ompio_file_t *fh);
int mca_sharedfp_individual_read (mca_io_ompio_file_t *fh,
ompio_file_t *fh);
int mca_sharedfp_individual_file_close (ompio_file_t *fh);
int mca_sharedfp_individual_read (ompio_file_t *fh,
void *buf, int count, MPI_Datatype datatype, MPI_Status *status);
int mca_sharedfp_individual_read_ordered (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read_ordered (ompio_file_t *fh,
void *buf, int count, struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
int mca_sharedfp_individual_read_ordered_begin (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read_ordered_begin (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype);
int mca_sharedfp_individual_read_ordered_end (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read_ordered_end (ompio_file_t *fh,
void *buf,
ompi_status_public_t *status);
int mca_sharedfp_individual_iread (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_iread (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_request_t **request);
int mca_sharedfp_individual_write (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
int mca_sharedfp_individual_write_ordered (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write_ordered (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
int mca_sharedfp_individual_write_ordered_begin (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write_ordered_begin (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype);
int mca_sharedfp_individual_write_ordered_end (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write_ordered_end (ompio_file_t *fh,
const void *buf,
ompi_status_public_t *status);
int mca_sharedfp_individual_iwrite (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_iwrite (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -127,8 +127,8 @@ typedef struct mca_sharedfp_individual_header_record_s{
int numofrecordsonfile; /* Number of records in the metadatafile*/
MPI_Offset datafile_offset;
MPI_Offset metadatafile_offset;
mca_io_ompio_file_t * datafilehandle;
mca_io_ompio_file_t * metadatafilehandle;
ompio_file_t * datafilehandle;
ompio_file_t * metadatafilehandle;
char * datafilename; /*for now need to delete this on file close*/
char * metadatafilename; /*for now need to delete this on file close*/
MPI_Offset metafile_start_offset;

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -35,23 +35,23 @@ int mca_sharedfp_individual_file_open (struct ompi_communicator_t *comm,
const char* filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh)
ompio_file_t *fh)
{
int err = 0;
int rank;
char * datafilename; /*The array size would change as it is based on the current path*/
char * metadatafilename; /*The array size would change as it is based on the current path*/
mca_io_ompio_file_t * datafilehandle;
mca_io_ompio_file_t * metadatafilehandle;
ompio_file_t * datafilehandle;
ompio_file_t * metadatafilehandle;
mca_sharedfp_individual_header_record* headnode = NULL;
struct mca_sharedfp_base_data_t* sh;
mca_io_ompio_file_t * shfileHandle;
ompio_file_t * shfileHandle;
size_t len=0;
/*-------------------------------------------------*/
/*Open the same file again without shared file pointer*/
/*-------------------------------------------------*/
shfileHandle = (mca_io_ompio_file_t *) malloc ( sizeof(mca_io_ompio_file_t));
shfileHandle = (ompio_file_t *) malloc ( sizeof(ompio_file_t));
if ( NULL == shfileHandle ) {
opal_output(0, "mca_sharedfp_individual_file_open: unable to allocate memory\n");
return OMPI_ERR_OUT_OF_RESOURCE;
@ -104,7 +104,7 @@ int mca_sharedfp_individual_file_open (struct ompi_communicator_t *comm,
snprintf(datafilename, len, "%s%s%d",filename,".data.",rank);
datafilehandle = (mca_io_ompio_file_t *)malloc(sizeof(mca_io_ompio_file_t));
datafilehandle = (ompio_file_t *)malloc(sizeof(ompio_file_t));
if ( NULL == datafilehandle ) {
opal_output(0, "mca_sharedfp_individual_file_open: unable to allocate memory\n");
free ( shfileHandle );
@ -145,7 +145,7 @@ int mca_sharedfp_individual_file_open (struct ompi_communicator_t *comm,
}
snprintf ( metadatafilename, len, "%s%s%d", filename, ".metadata.",rank);
metadatafilehandle = (mca_io_ompio_file_t *)malloc(sizeof(mca_io_ompio_file_t));
metadatafilehandle = (ompio_file_t *)malloc(sizeof(ompio_file_t));
if ( NULL == metadatafilehandle ) {
free (shfileHandle );
free (sh);
@ -184,7 +184,7 @@ int mca_sharedfp_individual_file_open (struct ompi_communicator_t *comm,
return err;
}
int mca_sharedfp_individual_file_close (mca_io_ompio_file_t *fh)
int mca_sharedfp_individual_file_close (ompio_file_t *fh)
{
mca_sharedfp_individual_header_record* headnode = NULL;
struct mca_sharedfp_base_data_t *sh;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -26,7 +28,7 @@
#include "ompi/mca/sharedfp/sharedfp.h"
int
mca_sharedfp_individual_get_position(mca_io_ompio_file_t *fh,
mca_sharedfp_individual_get_position(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE * offset)
{
opal_output(0,"mca_sharedfp_individual_get_position: NOT IMPLEMENTED\n");

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -28,7 +28,7 @@
#include "ompi/mca/sharedfp/sharedfp.h"
#include "ompi/mca/sharedfp/base/base.h"
int mca_sharedfp_individual_iwrite(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_iwrite(ompio_file_t *fh,
const void *buf,
int count,
ompi_datatype_t *datatype,
@ -89,7 +89,7 @@ int mca_sharedfp_individual_iwrite(mca_io_ompio_file_t *fh,
return ret;
}
int mca_sharedfp_individual_write_ordered_begin(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write_ordered_begin(ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype)
@ -213,7 +213,7 @@ exit:
return ret;
}
int mca_sharedfp_individual_write_ordered_end(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write_ordered_end(ompio_file_t *fh,
const void *buf,
ompi_status_public_t *status)
{

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -26,21 +28,21 @@
#include "ompi/mca/sharedfp/sharedfp.h"
#include "ompi/mca/sharedfp/base/base.h"
int mca_sharedfp_individual_read ( mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read ( ompio_file_t *fh,
void *buf, int count, MPI_Datatype datatype, MPI_Status *status)
{
opal_output(0,"mca_sharedfp_individual_read: NOT SUPPORTED by this component\n");
return OMPI_ERROR;
}
int mca_sharedfp_individual_read_ordered ( mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read_ordered ( ompio_file_t *fh,
void *buf, int count, MPI_Datatype datatype, MPI_Status *status)
{
opal_output(0,"mca_sharedfp_individual_read_ordered: NOT SUPPORTED by this component\n");
return OMPI_ERROR;
}
int mca_sharedfp_individual_iread(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_iread(ompio_file_t *fh,
void *buf,
int count,
ompi_datatype_t *datatype,
@ -50,7 +52,7 @@ int mca_sharedfp_individual_iread(mca_io_ompio_file_t *fh,
return OMPI_ERROR;
}
int mca_sharedfp_individual_read_ordered_begin(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read_ordered_begin(ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype)
@ -59,7 +61,7 @@ int mca_sharedfp_individual_read_ordered_begin(mca_io_ompio_file_t *fh,
return OMPI_ERROR;
}
int mca_sharedfp_individual_read_ordered_end(mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_read_ordered_end(ompio_file_t *fh,
void *buf,
ompi_status_public_t *status)
{

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -25,7 +27,7 @@
#include "ompi/constants.h"
#include "ompi/mca/sharedfp/sharedfp.h"
int mca_sharedfp_individual_seek (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_seek (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset, int whence)
{
opal_output(0,"mca_sharedfp_individual_seek: NOT IMPLEMENTED\n");

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
@ -28,7 +28,7 @@
#include "ompi/mca/sharedfp/sharedfp.h"
#include "ompi/mca/sharedfp/base/base.h"
int mca_sharedfp_individual_write (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
@ -86,7 +86,7 @@ int mca_sharedfp_individual_write (mca_io_ompio_file_t *fh,
return ret;
}
int mca_sharedfp_individual_write_ordered (mca_io_ompio_file_t *fh,
int mca_sharedfp_individual_write_ordered (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -72,7 +74,7 @@ int mca_sharedfp_lockedfile_component_init_query(bool enable_progress_threads,
return OMPI_SUCCESS;
}
struct mca_sharedfp_base_module_1_0_0_t * mca_sharedfp_lockedfile_component_file_query(mca_io_ompio_file_t *fh, int *priority) {
struct mca_sharedfp_base_module_1_0_0_t * mca_sharedfp_lockedfile_component_file_query(ompio_file_t *fh, int *priority) {
struct flock lock;
int fd, err;
/*char *filename;*/
@ -169,7 +171,7 @@ struct mca_sharedfp_base_module_1_0_0_t * mca_sharedfp_lockedfile_component_file
return NULL;
}
int mca_sharedfp_lockedfile_component_file_unquery (mca_io_ompio_file_t *file)
int mca_sharedfp_lockedfile_component_file_unquery (ompio_file_t *file)
{
/* This function might be needed for some purposes later. for now it
* does not have anything to do since there are no steps which need
@ -178,13 +180,13 @@ int mca_sharedfp_lockedfile_component_file_unquery (mca_io_ompio_file_t *file)
return OMPI_SUCCESS;
}
int mca_sharedfp_lockedfile_module_init (mca_io_ompio_file_t *file)
int mca_sharedfp_lockedfile_module_init (ompio_file_t *file)
{
return OMPI_SUCCESS;
}
int mca_sharedfp_lockedfile_module_finalize (mca_io_ompio_file_t *file)
int mca_sharedfp_lockedfile_module_finalize (ompio_file_t *file)
{
return OMPI_SUCCESS;
}

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2016 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -34,11 +34,11 @@ BEGIN_C_DECLS
int mca_sharedfp_lockedfile_component_init_query(bool enable_progress_threads,
bool enable_mpi_threads);
struct mca_sharedfp_base_module_1_0_0_t *
mca_sharedfp_lockedfile_component_file_query (mca_io_ompio_file_t *file, int *priority);
int mca_sharedfp_lockedfile_component_file_unquery (mca_io_ompio_file_t *file);
mca_sharedfp_lockedfile_component_file_query (ompio_file_t *file, int *priority);
int mca_sharedfp_lockedfile_component_file_unquery (ompio_file_t *file);
int mca_sharedfp_lockedfile_module_init (mca_io_ompio_file_t *file);
int mca_sharedfp_lockedfile_module_finalize (mca_io_ompio_file_t *file);
int mca_sharedfp_lockedfile_module_init (ompio_file_t *file);
int mca_sharedfp_lockedfile_module_finalize (ompio_file_t *file);
extern int mca_sharedfp_lockedfile_priority;
extern int mca_sharedfp_lockedfile_verbose;
@ -51,52 +51,52 @@ OMPI_MODULE_DECLSPEC extern mca_sharedfp_base_component_2_0_0_t mca_sharedfp_loc
*/
/*IMPORANT: Update here when implementing functions from sharedfp API*/
int mca_sharedfp_lockedfile_seek (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_seek (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE offset, int whence);
int mca_sharedfp_lockedfile_get_position (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_get_position (ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE * offset);
int mca_sharedfp_lockedfile_file_open (struct ompi_communicator_t *comm,
const char* filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh);
int mca_sharedfp_lockedfile_file_close (mca_io_ompio_file_t *fh);
int mca_sharedfp_lockedfile_read (mca_io_ompio_file_t *fh,
ompio_file_t *fh);
int mca_sharedfp_lockedfile_file_close (ompio_file_t *fh);
int mca_sharedfp_lockedfile_read (ompio_file_t *fh,
void *buf, int count, MPI_Datatype datatype, MPI_Status *status);
int mca_sharedfp_lockedfile_read_ordered (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_read_ordered (ompio_file_t *fh,
void *buf, int count, struct ompi_datatype_t *datatype,
ompi_status_public_t *status
);
int mca_sharedfp_lockedfile_read_ordered_begin (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_read_ordered_begin (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype);
int mca_sharedfp_lockedfile_read_ordered_end (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_read_ordered_end (ompio_file_t *fh,
void *buf,
ompi_status_public_t *status);
int mca_sharedfp_lockedfile_iread (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_iread (ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_request_t **request);
int mca_sharedfp_lockedfile_write (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_write (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
int mca_sharedfp_lockedfile_write_ordered (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_write_ordered (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,
ompi_status_public_t *status);
int mca_sharedfp_lockedfile_write_ordered_begin (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_write_ordered_begin (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype);
int mca_sharedfp_lockedfile_write_ordered_end (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_write_ordered_end (ompio_file_t *fh,
const void *buf,
ompi_status_public_t *status);
int mca_sharedfp_lockedfile_iwrite (mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_iwrite (ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype,

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2013-2017 University of Houston. All rights reserved.
* Copyright (c) 2015 Research Organization for Information Science
* Copyright (c) 2015-2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* Copyright (c) 2016-2017 IBM Corporation. All rights reserved.
* $COPYRIGHT$
@ -40,27 +40,27 @@ int mca_sharedfp_lockedfile_file_open (struct ompi_communicator_t *comm,
const char* filename,
int amode,
struct opal_info_t *info,
mca_io_ompio_file_t *fh)
ompio_file_t *fh)
{
int err = MPI_SUCCESS;
char * lockedfilename;
int handle, rank;
struct mca_sharedfp_lockedfile_data * module_data = NULL;
struct mca_sharedfp_base_data_t* sh;
mca_io_ompio_file_t * shfileHandle, *ompio_fh;
mca_io_ompio_data_t *data;
ompio_file_t * shfileHandle, *ompio_fh;
mca_common_ompio_data_t *data;
/*------------------------------------------------------------*/
/*Open the same file again without shared file pointer support*/
/*------------------------------------------------------------*/
shfileHandle = (mca_io_ompio_file_t *)malloc(sizeof(mca_io_ompio_file_t));
shfileHandle = (ompio_file_t *)malloc(sizeof(ompio_file_t));
err = mca_common_ompio_file_open(comm,filename,amode,info,shfileHandle,false);
if ( OMPI_SUCCESS != err) {
opal_output(0, "mca_sharedfp_lockedfile_file_open: Error during file open\n");
return err;
}
shfileHandle->f_fh = fh->f_fh;
data = (mca_io_ompio_data_t *) fh->f_fh->f_io_selected_data;
data = (mca_common_ompio_data_t *) fh->f_fh->f_io_selected_data;
ompio_fh = &data->ompio_fh;
err = mca_common_ompio_set_view (shfileHandle,
@ -156,7 +156,7 @@ int mca_sharedfp_lockedfile_file_open (struct ompi_communicator_t *comm,
return err;
}
int mca_sharedfp_lockedfile_file_close (mca_io_ompio_file_t *fh)
int mca_sharedfp_lockedfile_file_close (ompio_file_t *fh)
{
int err = OMPI_SUCCESS;
struct mca_sharedfp_lockedfile_data * module_data = NULL;

Просмотреть файл

@ -10,6 +10,8 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2008-2013 University of Houston. All rights reserved.
* Copyright (c) 2018 Research Organization for Information Science
* and Technology (RIST). All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
@ -27,7 +29,7 @@
#include "ompi/mca/sharedfp/base/base.h"
int
mca_sharedfp_lockedfile_get_position(mca_io_ompio_file_t *fh,
mca_sharedfp_lockedfile_get_position(ompio_file_t *fh,
OMPI_MPI_OFFSET_TYPE * offset)
{
int ret = OMPI_SUCCESS;

Просмотреть файл

@ -29,7 +29,7 @@
#include "ompi/mca/sharedfp/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
int mca_sharedfp_lockedfile_iread(mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_iread(ompio_file_t *fh,
void *buf,
int count,
ompi_datatype_t *datatype,
@ -90,7 +90,7 @@ int mca_sharedfp_lockedfile_iread(mca_io_ompio_file_t *fh,
return ret;
}
int mca_sharedfp_lockedfile_read_ordered_begin(mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_read_ordered_begin(ompio_file_t *fh,
void *buf,
int count,
struct ompi_datatype_t *datatype)
@ -219,7 +219,7 @@ exit:
}
int mca_sharedfp_lockedfile_read_ordered_end(mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_read_ordered_end(ompio_file_t *fh,
void *buf,
ompi_status_public_t *status)
{

Просмотреть файл

@ -29,7 +29,7 @@
#include "ompi/mca/sharedfp/base/base.h"
#include "ompi/mca/common/ompio/common_ompio.h"
int mca_sharedfp_lockedfile_iwrite(mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_iwrite(ompio_file_t *fh,
const void *buf,
int count,
ompi_datatype_t *datatype,
@ -88,7 +88,7 @@ int mca_sharedfp_lockedfile_iwrite(mca_io_ompio_file_t *fh,
return ret;
}
int mca_sharedfp_lockedfile_write_ordered_begin(mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_write_ordered_begin(ompio_file_t *fh,
const void *buf,
int count,
struct ompi_datatype_t *datatype)
@ -217,7 +217,7 @@ exit:
int mca_sharedfp_lockedfile_write_ordered_end(mca_io_ompio_file_t *fh,
int mca_sharedfp_lockedfile_write_ordered_end(ompio_file_t *fh,
const void *buf,
ompi_status_public_t *status)
{

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше