first part of the changes trequired to support non-blocking colelctive io operations
Этот коммит содержится в:
родитель
706884652f
Коммит
19cac73a9b
@ -9,7 +9,7 @@
|
|||||||
* University of Stuttgart. All rights reserved.
|
* University of Stuttgart. All rights reserved.
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
|
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
|
||||||
* $COPYRIGHT$
|
* $COPYRIGHT$
|
||||||
*
|
*
|
||||||
* Additional copyrights may follow
|
* Additional copyrights may follow
|
||||||
@ -36,11 +36,15 @@ static mca_fcoll_base_module_1_0_0_t dynamic = {
|
|||||||
mca_fcoll_dynamic_module_init,
|
mca_fcoll_dynamic_module_init,
|
||||||
mca_fcoll_dynamic_module_finalize,
|
mca_fcoll_dynamic_module_finalize,
|
||||||
mca_fcoll_dynamic_file_read_all,
|
mca_fcoll_dynamic_file_read_all,
|
||||||
|
NULL, /* iread_all */
|
||||||
mca_fcoll_dynamic_file_read_all_begin,
|
mca_fcoll_dynamic_file_read_all_begin,
|
||||||
mca_fcoll_dynamic_file_read_all_end,
|
mca_fcoll_dynamic_file_read_all_end,
|
||||||
mca_fcoll_dynamic_file_write_all,
|
mca_fcoll_dynamic_file_write_all,
|
||||||
|
NULL, /*iwrite_all */
|
||||||
mca_fcoll_dynamic_file_write_all_begin,
|
mca_fcoll_dynamic_file_write_all_begin,
|
||||||
mca_fcoll_dynamic_file_write_all_end
|
mca_fcoll_dynamic_file_write_all_end,
|
||||||
|
NULL, /* progress */
|
||||||
|
NULL /* request_free */
|
||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
* University of Stuttgart. All rights reserved.
|
* University of Stuttgart. All rights reserved.
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
|
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
|
||||||
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
|
||||||
* reserved.
|
* reserved.
|
||||||
* $COPYRIGHT$
|
* $COPYRIGHT$
|
||||||
@ -27,10 +27,12 @@
|
|||||||
#include "mpi.h"
|
#include "mpi.h"
|
||||||
#include "ompi/mca/mca.h"
|
#include "ompi/mca/mca.h"
|
||||||
#include "opal/mca/base/base.h"
|
#include "opal/mca/base/base.h"
|
||||||
|
#include "ompi/request/request.h"
|
||||||
|
|
||||||
BEGIN_C_DECLS
|
BEGIN_C_DECLS
|
||||||
|
|
||||||
struct mca_io_ompio_file_t;
|
struct mca_io_ompio_file_t;
|
||||||
|
struct mca_fcoll_request_t;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Macro for use in components that are of type coll
|
* Macro for use in components that are of type coll
|
||||||
@ -115,6 +117,13 @@ typedef int (*mca_fcoll_base_module_file_read_all_fn_t)
|
|||||||
struct ompi_datatype_t *datatype,
|
struct ompi_datatype_t *datatype,
|
||||||
ompi_status_public_t *status);
|
ompi_status_public_t *status);
|
||||||
|
|
||||||
|
typedef int (*mca_fcoll_base_module_file_iread_all_fn_t)
|
||||||
|
(struct mca_io_ompio_file_t *fh,
|
||||||
|
void *buf,
|
||||||
|
int count,
|
||||||
|
struct ompi_datatype_t *datatype,
|
||||||
|
ompi_request_t **request);
|
||||||
|
|
||||||
typedef int (*mca_fcoll_base_module_file_read_all_begin_fn_t)
|
typedef int (*mca_fcoll_base_module_file_read_all_begin_fn_t)
|
||||||
(struct mca_io_ompio_file_t *fh,
|
(struct mca_io_ompio_file_t *fh,
|
||||||
void *buf,
|
void *buf,
|
||||||
@ -133,6 +142,13 @@ typedef int (*mca_fcoll_base_module_file_write_all_fn_t)
|
|||||||
struct ompi_datatype_t *datatype,
|
struct ompi_datatype_t *datatype,
|
||||||
ompi_status_public_t *status);
|
ompi_status_public_t *status);
|
||||||
|
|
||||||
|
typedef int (*mca_fcoll_base_module_file_iwrite_all_fn_t)
|
||||||
|
(struct mca_io_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_begin_fn_t)
|
typedef int (*mca_fcoll_base_module_file_write_all_begin_fn_t)
|
||||||
(struct mca_io_ompio_file_t *fh,
|
(struct mca_io_ompio_file_t *fh,
|
||||||
void *buf,
|
void *buf,
|
||||||
@ -144,6 +160,13 @@ typedef int (*mca_fcoll_base_module_file_write_all_end_fn_t)
|
|||||||
void *buf,
|
void *buf,
|
||||||
ompi_status_public_t *status);
|
ompi_status_public_t *status);
|
||||||
|
|
||||||
|
typedef bool (*mca_fcoll_base_module_progress_fn_t)
|
||||||
|
( struct mca_fcoll_request_t *request);
|
||||||
|
|
||||||
|
typedef void (*mca_fcoll_base_module_request_free_fn_t)
|
||||||
|
( struct mca_fcoll_request_t *request);
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* ***********************************************************************
|
* ***********************************************************************
|
||||||
* *************************** module structure *************************
|
* *************************** module structure *************************
|
||||||
@ -160,11 +183,16 @@ struct mca_fcoll_base_module_1_0_0_t {
|
|||||||
|
|
||||||
/* FCOLL function pointers */
|
/* FCOLL function pointers */
|
||||||
mca_fcoll_base_module_file_read_all_fn_t fcoll_file_read_all;
|
mca_fcoll_base_module_file_read_all_fn_t fcoll_file_read_all;
|
||||||
|
mca_fcoll_base_module_file_iread_all_fn_t fcoll_file_iread_all;
|
||||||
mca_fcoll_base_module_file_read_all_begin_fn_t fcoll_file_read_all_begin;
|
mca_fcoll_base_module_file_read_all_begin_fn_t fcoll_file_read_all_begin;
|
||||||
mca_fcoll_base_module_file_read_all_end_fn_t fcoll_file_read_all_end;
|
mca_fcoll_base_module_file_read_all_end_fn_t fcoll_file_read_all_end;
|
||||||
mca_fcoll_base_module_file_write_all_fn_t fcoll_file_write_all;
|
mca_fcoll_base_module_file_write_all_fn_t fcoll_file_write_all;
|
||||||
|
mca_fcoll_base_module_file_iwrite_all_fn_t fcoll_file_iwrite_all;
|
||||||
mca_fcoll_base_module_file_write_all_begin_fn_t fcoll_file_write_all_begin;
|
mca_fcoll_base_module_file_write_all_begin_fn_t fcoll_file_write_all_begin;
|
||||||
mca_fcoll_base_module_file_write_all_end_fn_t fcoll_file_write_all_end;
|
mca_fcoll_base_module_file_write_all_end_fn_t fcoll_file_write_all_end;
|
||||||
|
mca_fcoll_base_module_progress_fn_t fcoll_progress;
|
||||||
|
mca_fcoll_base_module_request_free_fn_t fcoll_request_free;
|
||||||
|
|
||||||
};
|
};
|
||||||
typedef struct mca_fcoll_base_module_1_0_0_t mca_fcoll_base_module_1_0_0_t;
|
typedef struct mca_fcoll_base_module_1_0_0_t mca_fcoll_base_module_1_0_0_t;
|
||||||
typedef mca_fcoll_base_module_1_0_0_t mca_fcoll_base_module_t;
|
typedef mca_fcoll_base_module_1_0_0_t mca_fcoll_base_module_t;
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
* University of Stuttgart. All rights reserved.
|
* University of Stuttgart. All rights reserved.
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
|
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
|
||||||
* $COPYRIGHT$
|
* $COPYRIGHT$
|
||||||
*
|
*
|
||||||
* Additional copyrights may follow
|
* Additional copyrights may follow
|
||||||
@ -36,11 +36,15 @@ static mca_fcoll_base_module_1_0_0_t individual = {
|
|||||||
mca_fcoll_individual_module_init,
|
mca_fcoll_individual_module_init,
|
||||||
mca_fcoll_individual_module_finalize,
|
mca_fcoll_individual_module_finalize,
|
||||||
mca_fcoll_individual_file_read_all,
|
mca_fcoll_individual_file_read_all,
|
||||||
|
NULL, /* iread_all */
|
||||||
mca_fcoll_individual_file_read_all_begin,
|
mca_fcoll_individual_file_read_all_begin,
|
||||||
mca_fcoll_individual_file_read_all_end,
|
mca_fcoll_individual_file_read_all_end,
|
||||||
mca_fcoll_individual_file_write_all,
|
mca_fcoll_individual_file_write_all,
|
||||||
|
NULL, /* iwrite_all */
|
||||||
mca_fcoll_individual_file_write_all_begin,
|
mca_fcoll_individual_file_write_all_begin,
|
||||||
mca_fcoll_individual_file_write_all_end
|
mca_fcoll_individual_file_write_all_end,
|
||||||
|
NULL, /* progress */
|
||||||
|
NULL /* request_free */
|
||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
* University of Stuttgart. All rights reserved.
|
* University of Stuttgart. All rights reserved.
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
|
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
|
||||||
* $COPYRIGHT$
|
* $COPYRIGHT$
|
||||||
*
|
*
|
||||||
* Additional copyrights may follow
|
* Additional copyrights may follow
|
||||||
@ -36,11 +36,15 @@ static mca_fcoll_base_module_1_0_0_t static_t = {
|
|||||||
mca_fcoll_static_module_init,
|
mca_fcoll_static_module_init,
|
||||||
mca_fcoll_static_module_finalize,
|
mca_fcoll_static_module_finalize,
|
||||||
mca_fcoll_static_file_read_all,
|
mca_fcoll_static_file_read_all,
|
||||||
|
NULL, /* iread_all */
|
||||||
mca_fcoll_static_file_read_all_begin,
|
mca_fcoll_static_file_read_all_begin,
|
||||||
mca_fcoll_static_file_read_all_end,
|
mca_fcoll_static_file_read_all_end,
|
||||||
mca_fcoll_static_file_write_all,
|
mca_fcoll_static_file_write_all,
|
||||||
|
NULL, /* iwrite_all */
|
||||||
mca_fcoll_static_file_write_all_begin,
|
mca_fcoll_static_file_write_all_begin,
|
||||||
mca_fcoll_static_file_write_all_end
|
mca_fcoll_static_file_write_all_end,
|
||||||
|
NULL, /* progress */
|
||||||
|
NULL /* request_free */
|
||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
* University of Stuttgart. All rights reserved.
|
* University of Stuttgart. All rights reserved.
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
* Copyright (c) 2004-2005 The Regents of the University of California.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
* Copyright (c) 2008-2011 University of Houston. All rights reserved.
|
* Copyright (c) 2008-2015 University of Houston. All rights reserved.
|
||||||
* $COPYRIGHT$
|
* $COPYRIGHT$
|
||||||
*
|
*
|
||||||
* Additional copyrights may follow
|
* Additional copyrights may follow
|
||||||
@ -36,11 +36,15 @@ static mca_fcoll_base_module_1_0_0_t two_phase = {
|
|||||||
mca_fcoll_two_phase_module_init,
|
mca_fcoll_two_phase_module_init,
|
||||||
mca_fcoll_two_phase_module_finalize,
|
mca_fcoll_two_phase_module_finalize,
|
||||||
mca_fcoll_two_phase_file_read_all,
|
mca_fcoll_two_phase_file_read_all,
|
||||||
|
NULL,
|
||||||
mca_fcoll_two_phase_file_read_all_begin,
|
mca_fcoll_two_phase_file_read_all_begin,
|
||||||
mca_fcoll_two_phase_file_read_all_end,
|
mca_fcoll_two_phase_file_read_all_end,
|
||||||
mca_fcoll_two_phase_file_write_all,
|
mca_fcoll_two_phase_file_write_all,
|
||||||
|
NULL,
|
||||||
mca_fcoll_two_phase_file_write_all_begin,
|
mca_fcoll_two_phase_file_write_all_begin,
|
||||||
mca_fcoll_two_phase_file_write_all_end
|
mca_fcoll_two_phase_file_write_all_end,
|
||||||
|
NULL, /* progress */
|
||||||
|
NULL /* request_free */
|
||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user