* Moved cofs oob module to use its own configure and all that jaz
This commit was SVN r275.
Этот коммит содержится в:
родитель
4d46b4bc5c
Коммит
2c33a0be9d
@ -403,9 +403,6 @@ AC_CONFIG_FILES([
|
||||
src/mca/mpi/topo/Makefile
|
||||
src/mca/mpi/topo/base/Makefile
|
||||
|
||||
src/mca/lam/oob/cofs/Makefile
|
||||
src/mca/lam/oob/cofs/src/Makefile
|
||||
|
||||
src/tools/Makefile
|
||||
src/tools/wrappers/Makefile
|
||||
|
||||
|
@ -9,7 +9,7 @@ include $(top_srcdir)/config/Makefile.options
|
||||
# the base first). common_lam must be second, however, because
|
||||
# modules under there may be statically linked to other modules.
|
||||
|
||||
SUBDIRS = base common_lam pcm registry
|
||||
SUBDIRS = base common_lam oob pcm registry
|
||||
|
||||
# Source code files
|
||||
|
||||
|
@ -1,2 +1,3 @@
|
||||
Makefile.in
|
||||
Makefile
|
||||
static-modules.h
|
||||
|
@ -1,4 +1,14 @@
|
||||
.libs
|
||||
libmca_lam_oob_cofs.la
|
||||
Makefile
|
||||
Makefile.in
|
||||
acinclude.m4
|
||||
aclocal.m4
|
||||
configure
|
||||
configure.ac
|
||||
config.log
|
||||
config.status
|
||||
libtool
|
||||
autom4te.cache
|
||||
.libs
|
||||
.deps
|
||||
*.la
|
||||
.lam*
|
||||
|
@ -3,15 +3,36 @@
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
include $(top_srcdir)/config/Makefile.options
|
||||
# Use the top-level LAM Makefile.options
|
||||
|
||||
SUBDIRS = src
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
include $(top_lam_srcdir)/config/Makefile.options
|
||||
|
||||
module_noinst = libmca_lam_oob_cofs.la
|
||||
module_install =
|
||||
SUBDIRS = src
|
||||
DIST_SUBDIRS = config $(SUBDIRS)
|
||||
|
||||
EXTRA_DIST = VERSION
|
||||
|
||||
# According to the MCA spec, we have to make the output library here
|
||||
# in the top-level directory, and it has to be named
|
||||
# liblam_ssi_coll_lam_basic.la
|
||||
|
||||
if LAM_BUILD_LOADABLE_MODULE
|
||||
module_noinst =
|
||||
module_install = mca_oob_cofs.la
|
||||
else
|
||||
module_noinst = libmca_lam_oob_cofs.la
|
||||
module_install =
|
||||
endif
|
||||
|
||||
lamssiexecdir = $(libdir)/lam
|
||||
lamssiexec_LTLIBRARIES = $(module_install)
|
||||
mca_oob_cofs_la_SOURCES =
|
||||
mca_oob_cofs_la_LIBADD = \
|
||||
src/libmca_oob_cofs.la \
|
||||
$(top_lam_builddir)/src/lam/liblam.la
|
||||
mca_oob_cofs_la_LDFLAGS = -module -avoid-version
|
||||
|
||||
noinst_LTLIBRARIES = $(module_noinst)
|
||||
|
||||
libmca_lam_oob_cofs_la_SOURCES=
|
||||
libmca_lam_oob_cofs_la_LIBADD = src/libcofs.la
|
||||
libmca_lam_oob_cofs_la_SOURCES =
|
||||
libmca_lam_oob_cofs_la_LIBADD = src/libmca_oob_cofs.la
|
||||
libmca_lam_oob_cofs_la_LDFLAGS = -module -avoid-version
|
||||
|
6
src/mca/lam/oob/cofs/VERSION
Обычный файл
6
src/mca/lam/oob/cofs/VERSION
Обычный файл
@ -0,0 +1,6 @@
|
||||
major=1
|
||||
minor=0
|
||||
release=0
|
||||
alpha=0
|
||||
beta=0
|
||||
cvs=1
|
9
src/mca/lam/oob/cofs/config/.cvsignore
Обычный файл
9
src/mca/lam/oob/cofs/config/.cvsignore
Обычный файл
@ -0,0 +1,9 @@
|
||||
config.guess
|
||||
config.sub
|
||||
depcomp
|
||||
install-sh
|
||||
ltmain.sh
|
||||
Makefile
|
||||
Makefile.in
|
||||
missing
|
||||
mkinstalldirs
|
15
src/mca/lam/oob/cofs/config/Makefile.am
Обычный файл
15
src/mca/lam/oob/cofs/config/Makefile.am
Обычный файл
@ -0,0 +1,15 @@
|
||||
# -*- makefile -*-
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
include $(top_lam_srcdir)/config/Makefile.options
|
||||
|
||||
# This file is only here so that "make dist" grabs all the extra
|
||||
# config-level files that are necessary to build a LAM distribution
|
||||
# tarball. Nothing gets built in this directory.
|
||||
|
||||
# Seems to be an automake bug -- depcomp is not automatically included
|
||||
# in distribution tarballs.
|
||||
|
||||
EXTRA_DIST = depcomp
|
9
src/mca/lam/oob/cofs/configure.params
Обычный файл
9
src/mca/lam/oob/cofs/configure.params
Обычный файл
@ -0,0 +1,9 @@
|
||||
# -*- shell-script -*-
|
||||
#
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
# Specific to this module
|
||||
|
||||
PARAM_INIT_FILE=src/oob_cofs.c
|
||||
PARAM_CONFIG_FILES="Makefile config/Makefile src/Makefile"
|
@ -1,7 +1,9 @@
|
||||
.deps
|
||||
.libs
|
||||
libcofs.la
|
||||
Makefile
|
||||
Makefile.in
|
||||
oob_cofs.lo
|
||||
oob_cofs_module.lo
|
||||
*.lo
|
||||
libmca_oob_cofs.la
|
||||
oob_cofs_config.h
|
||||
oob_cofs_config.h.in
|
||||
stamp-h1
|
||||
|
@ -2,17 +2,16 @@
|
||||
# $HEADER$
|
||||
#
|
||||
|
||||
include $(top_srcdir)/config/Makefile.options
|
||||
include $(top_lam_srcdir)/config/Makefile.options
|
||||
|
||||
noinst_LTLIBRARIES = libcofs.la
|
||||
AM_CPPFLAGS = \
|
||||
-I$(top_lam_builddir)/src/include \
|
||||
-I$(top_lam_srcdir)/src \
|
||||
-I$(top_lam_srcdir)/src/include
|
||||
|
||||
# Source code files
|
||||
|
||||
headers = \
|
||||
oob_cofs.h
|
||||
|
||||
libcofs_la_SOURCES = \
|
||||
$(headers) \
|
||||
noinst_LTLIBRARIES = libmca_oob_cofs.la
|
||||
libmca_oob_cofs_la_SOURCES = \
|
||||
oob_cofs.h \
|
||||
oob_cofs_module.c \
|
||||
oob_cofs.c
|
||||
|
||||
|
@ -95,7 +95,7 @@ mca_oob_cofs_recv_nb(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
|
||||
int
|
||||
mca_oob_cofs_recv_cb(lam_job_handle_t job_handle, int tag,
|
||||
mca_oob_recv_cb_t callback)
|
||||
mca_oob_base_recv_cb_t callback)
|
||||
{
|
||||
return LAM_ERR_NOT_SUPPORTED;
|
||||
}
|
||||
|
@ -19,7 +19,7 @@ int mca_oob_cofs_close(void);
|
||||
* Startup / Shutdown
|
||||
*/
|
||||
int mca_oob_cofs_query(int *priority);
|
||||
struct mca_oob_1_0_0* mca_oob_cofs_init(void);
|
||||
struct mca_oob_1_0_0_t* mca_oob_cofs_init(void);
|
||||
int mca_oob_cofs_finalize(void);
|
||||
|
||||
|
||||
@ -33,7 +33,7 @@ int mca_oob_cofs_recv(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
int mca_oob_cofs_recv_nb(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
void** data, size_t* data_len);
|
||||
int mca_oob_cofs_recv_cb(lam_job_handle_t job_handle, int tag,
|
||||
mca_oob_recv_cb_t callback);
|
||||
mca_oob_base_recv_cb_t callback);
|
||||
|
||||
|
||||
extern char mca_oob_cofs_comm_loc[LAM_PATH_MAX]; /* location for file drop-off */
|
||||
|
@ -19,22 +19,19 @@
|
||||
/*
|
||||
* Struct of function pointers and all that to let us be initialized
|
||||
*/
|
||||
mca_oob_module_1_0_0_t mca_oob_cofs_module_1_0_0_0 = {
|
||||
mca_oob_base_module_1_0_0_t mca_oob_cofs_module = {
|
||||
{
|
||||
1, /* MCA major version */
|
||||
0, /* MCA minor version */
|
||||
0, /* MCA release version */
|
||||
"OOB", /* MCA type name */
|
||||
1, /* MCA type major version */
|
||||
0, /* MCA type minor version */
|
||||
0, /* MCA type release version */
|
||||
"COFS", /* MCA module name */
|
||||
MCA_OOB_BASE_VERSION_1_0_0,
|
||||
|
||||
"cofs", /* MCA module name */
|
||||
1, /* MCA module major version */
|
||||
0, /* MCA module minor version */
|
||||
0, /* MCA module release version */
|
||||
mca_oob_cofs_open, /* module open */
|
||||
mca_oob_cofs_close, /* module close */
|
||||
false /* MCA module is not checkpointable */
|
||||
mca_oob_cofs_close /* module close */
|
||||
},
|
||||
{
|
||||
false /* checkpoint / restart */
|
||||
},
|
||||
mca_oob_cofs_query, /* module query */
|
||||
mca_oob_cofs_init, /* module init */
|
||||
@ -74,7 +71,7 @@ mca_oob_cofs_query(int *priority)
|
||||
}
|
||||
|
||||
|
||||
struct mca_oob_1_0_0*
|
||||
struct mca_oob_1_0_0_t*
|
||||
mca_oob_cofs_init(void)
|
||||
{
|
||||
char *tmp;
|
||||
|
@ -42,53 +42,64 @@
|
||||
*/
|
||||
|
||||
/* "Special" tags */
|
||||
#define MCA_OOB_ANY_TAG -1
|
||||
#define MCA_OOB_ANY_TAG -1
|
||||
#define MCA_OOB_REGISTRY_TAG -2
|
||||
|
||||
/* "Special" vpids */
|
||||
#define MCA_OOB_MPIRUN -1
|
||||
#define MCA_OOB_MPIRUN -1
|
||||
|
||||
typedef void (*mca_oob_recv_cb_t)(lam_job_handle_t job_handle, int tag,
|
||||
int vpid, void* data, size_t data_len, int status);
|
||||
typedef void (*mca_oob_base_recv_cb_t)(lam_job_handle_t job_handle, int tag,
|
||||
int vpid, void* data, size_t data_len, int status);
|
||||
|
||||
|
||||
/*
|
||||
* Functions every module instance will have to provide
|
||||
*/
|
||||
typedef int (*mca_oob_query_fn_t)(int *priority);
|
||||
typedef struct mca_oob_1_0_0* (*mca_oob_init_fn_t)(void);
|
||||
typedef int (*mca_oob_send_fn_t)(lam_job_handle_t job_handle, int vpid, int tag,
|
||||
void* data, size_t data_len);
|
||||
typedef int (*mca_oob_recv_fn_t)(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
void** data, size_t* data_len);
|
||||
typedef int (*mca_oob_recv_nb_fn_t)(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
void** data, size_t* data_len);
|
||||
typedef int (*mca_oob_recv_cb_fn_t)(lam_job_handle_t job_handle, int tag,
|
||||
mca_oob_recv_cb_t callback);
|
||||
typedef int (*mca_oob_finalize_fn_t)(void);
|
||||
typedef int (*mca_oob_base_query_fn_t)(int *priority);
|
||||
typedef struct mca_oob_1_0_0_t* (*mca_oob_base_init_fn_t)(void);
|
||||
typedef int (*mca_oob_base_send_fn_t)(lam_job_handle_t job_handle, int vpid, int tag,
|
||||
void* data, size_t data_len);
|
||||
typedef int (*mca_oob_base_recv_fn_t)(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
void** data, size_t* data_len);
|
||||
typedef int (*mca_oob_base_recv_nb_fn_t)(lam_job_handle_t job_handle, int* tag, int* vpid,
|
||||
void** data, size_t* data_len);
|
||||
typedef int (*mca_oob_base_recv_cb_fn_t)(lam_job_handle_t job_handle, int tag,
|
||||
mca_oob_base_recv_cb_t callback);
|
||||
typedef int (*mca_oob_base_finalize_fn_t)(void);
|
||||
|
||||
|
||||
/*
|
||||
* Ver 1.0.0
|
||||
*/
|
||||
struct mca_oob_module_1_0_0_t {
|
||||
mca_module_1_0_0_t super;
|
||||
struct mca_oob_base_module_1_0_0_t {
|
||||
mca_base_module_t oobm_version;
|
||||
mca_base_module_data_1_0_0_t oobm_data;
|
||||
|
||||
mca_oob_query_fn_t oobm_query;
|
||||
mca_oob_init_fn_t oobm_init;
|
||||
mca_oob_finalize_fn_t oob_finalize;
|
||||
mca_oob_base_query_fn_t oobm_query;
|
||||
mca_oob_base_init_fn_t oobm_init;
|
||||
mca_oob_base_finalize_fn_t oob_finalize;
|
||||
};
|
||||
typedef struct mca_oob_module_1_0_0_t mca_oob_module_1_0_0_t;
|
||||
typedef struct mca_oob_base_module_1_0_0_t mca_oob_base_module_1_0_0_t;
|
||||
|
||||
struct mca_oob_1_0_0_t {
|
||||
mca_oob_send_fn_t oob_send;
|
||||
mca_oob_recv_fn_t oob_recv;
|
||||
mca_oob_recv_nb_fn_t oob_recv_nb;
|
||||
mca_oob_recv_cb_fn_t oob_recv_cb;
|
||||
mca_oob_base_send_fn_t oob_send;
|
||||
mca_oob_base_recv_fn_t oob_recv;
|
||||
mca_oob_base_recv_nb_fn_t oob_recv_nb;
|
||||
mca_oob_base_recv_cb_fn_t oob_recv_cb;
|
||||
};
|
||||
typedef struct mca_oob_1_0_0_t mca_oob_1_0_0_t;
|
||||
|
||||
typedef mca_oob_module_1_0_0_t mca_oob_module_t;
|
||||
/*
|
||||
* Macro for use in modules that are of type coll v1.0.0
|
||||
*/
|
||||
#define MCA_OOB_BASE_VERSION_1_0_0 \
|
||||
/* oob v1.0 is chained to MCA v1.0 */ \
|
||||
MCA_BASE_VERSION_1_0_0, \
|
||||
/* oob v1.0 */ \
|
||||
"oob", 1, 0, 0
|
||||
|
||||
|
||||
typedef mca_oob_base_module_1_0_0_t mca_oob_base_module_t;
|
||||
typedef mca_oob_1_0_0_t mca_oob_t;
|
||||
|
||||
|
||||
|
@ -3,3 +3,4 @@ Makefile
|
||||
.deps
|
||||
.libs
|
||||
.gdb_history
|
||||
oob_cofs_test
|
||||
|
@ -49,9 +49,10 @@ main(int argc, char* argv[])
|
||||
exit(1);
|
||||
}
|
||||
|
||||
printf("#\n# Sending Messages\n#\n");
|
||||
printf("#\n# Sending Messages\n#\n\n");
|
||||
for (msg_count = 0 ; msg_count < 20 ; ++msg_count) {
|
||||
sprintf(buffer, "%s's message number %d\n", argv[1], msg_count);
|
||||
printf("%d %d: %s\n", target_vpid, 1, buffer);
|
||||
ret = mca_oob_cofs_send("foobar", target_vpid, 1, buffer, strlen(buffer) + 1);
|
||||
if (ret != LAM_SUCCESS) {
|
||||
printf("mca_oob_cofs_send failed on msg_count %d\n", msg_count);
|
||||
@ -59,7 +60,7 @@ main(int argc, char* argv[])
|
||||
}
|
||||
}
|
||||
|
||||
printf("#\n# Receiving Messages\n#\n");
|
||||
printf("#\n# Receiving Messages\n#\n\n");
|
||||
for (msg_count = 0 ; msg_count < 20 ; ++msg_count) {
|
||||
source_tag = 1;
|
||||
ret = mca_oob_cofs_recv("foobar", &source_tag, &source_vpid, (void**) &source_data, &source_len);
|
||||
@ -71,6 +72,6 @@ main(int argc, char* argv[])
|
||||
free(source_data);
|
||||
}
|
||||
|
||||
printf("#\n# Finished\n#\n");
|
||||
printf("#\n# Finished\n#\n\n");
|
||||
return 0;
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user