1
1

Try to get the Portals PML going again, just to get some data for the Cray

paper.  This is just the shell, for checkpoint.  Changes:

* Fix copyrights
* remove cancel code and ptl references
* add dump command 

This commit was SVN r9779.
Этот коммит содержится в:
Brian Barrett 2006-04-29 22:05:20 +00:00
родитель 0aa7587dd7
Коммит 315a889247
14 изменённых файлов: 152 добавлений и 231 удалений

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

@ -1,5 +1,5 @@
# #
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana # Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
# University Research and Technology # University Research and Technology
# Corporation. All rights reserved. # Corporation. All rights reserved.
# Copyright (c) 2004-2005 The University of Tennessee and The University # Copyright (c) 2004-2005 The University of Tennessee and The University
@ -7,6 +7,8 @@
# reserved. # reserved.
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, # Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved. # University of Stuttgart. All rights reserved.
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
# $COPYRIGHT$ # $COPYRIGHT$
# #
# Additional copyrights may follow # Additional copyrights may follow
@ -31,13 +33,10 @@ endif
local_sources = \ local_sources = \
pml_portals.c \ pml_portals.c \
pml_portals.h \ pml_portals.h \
pml_portals_cancel.c \
pml_portals_component.c \ pml_portals_component.c \
pml_portals_iprobe.c \ pml_portals_iprobe.c \
pml_portals_irecv.c \ pml_portals_irecv.c \
pml_portals_isend.c \ pml_portals_isend.c \
pml_portals_ptl.c \
pml_portals_ptl.h \
pml_portals_progress.c \ pml_portals_progress.c \
pml_portals_start.c pml_portals_start.c

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

@ -1,6 +1,6 @@
# -*- shell-script -*- # -*- shell-script -*-
# #
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana # Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
# University Research and Technology # University Research and Technology
# Corporation. All rights reserved. # Corporation. All rights reserved.
# Copyright (c) 2004-2005 The University of Tennessee and The University # Copyright (c) 2004-2005 The University of Tennessee and The University
@ -18,79 +18,6 @@
# #
# _MCA_pml_portals_config_val(config_name, define_name,
# default_val, descrtiption)
# -----------------------------------------------------
AC_DEFUN([MCA_pml_portals_CONFIG_VAL], [
AC_ARG_WITH([portals-$1], AC_HELP_STRING([--with-portals-$1],
[$4 (default: $3)]))
case "[$with_]m4_bpatsubst([portals-$1], -, _)" in
"")
$2=$3
;;
"no")
AC_MSG_ERROR([--without-portals-$1 is invalid argument])
;;
*)
$2="[$with_]m4_bpatsubst([portals-$1], -, _)"
;;
esac
AC_DEFINE_UNQUOTED([$2], [[$]$2], [$4])
])
# _MCA_pml_portals_CONFIG_VALS()
# ------------------------------
AC_DEFUN([MCA_pml_portals_CONFIG_VALS], [
# User configuration options
MCA_pml_portals_CONFIG_VAL([debug-level],
[OMPI_PML_PORTALS_DEFAULT_DEBUG_LEVEL], [0],
[debugging level for portals pml])
MCA_pml_portals_CONFIG_VAL([eager-limit],
[OMPI_PML_PORTALS_DEFAULT_EAGER_LIMIT], [32768],
[max size for eager sends])
MCA_pml_portals_CONFIG_VAL([min-send-size],
[OMPI_PML_PORTALS_DEFAULT_MIN_SEND_SIZE], [32768],
[min size for send fragments])
MCA_pml_portals_CONFIG_VAL([max-send-size],
[OMPI_PML_PORTALS_DEFAULT_MAX_SEND_SIZE], [65536],
[max size for send fragments])
MCA_pml_portals_CONFIG_VAL([md-size],
[OMPI_PML_PORTALS_DEFAULT_RECV_MD_SIZE], [1048576],
[Size of receive memory descriptors])
MCA_pml_portals_CONFIG_VAL([md-size],
[OMPI_PML_PORTALS_DEFAULT_RECV_MD_NUM], [3],
[Number of receive memory descriptors])
MCA_pml_portals_CONFIG_VAL([min-rdma-size],
[OMPI_PML_PORTALS_DEFAULT_MIN_RDMA_SIZE], [65536],
[min size for rdma fragments])
MCA_pml_portals_CONFIG_VAL([max-rdma-size],
[OMPI_PML_PORTALS_DEFAULT_MAX_RDMA_SIZE], [2147483647],
[max size for rdma fragments])
MCA_pml_portals_CONFIG_VAL([max-sends-pending],
[OMPI_PML_PORTALS_MAX_SENDS_PENDING], [128],
[max number of sends pending at any time])
MCA_pml_portals_CONFIG_VAL([recv-queue-size],
[OMPI_PML_PORTALS_DEFAULT_RECV_QUEUE_SIZE], [512],
[size of event queue for receiving frags])
MCA_pml_portals_CONFIG_VAL([free-list-init-num],
[OMPI_PML_PORTALS_DEFAULT_FREE_LIST_INIT_NUM], [8],
[starting size of free lists])
MCA_pml_portals_CONFIG_VAL([free-list-max-num],
[OMPI_PML_PORTALS_DEFAULT_FREE_LIST_MAX_NUM], [1024],
[maximum size of free lists])
MCA_pml_portals_CONFIG_VAL([free-list-inc-num],
[OMPI_PML_PORTALS_DEFAULT_FREE_LIST_INC_NUM], [32],
[grow size for freelists])
])
# _MCA_pml_portals_CONFIG_PLATFORM() # _MCA_pml_portals_CONFIG_PLATFORM()
# ---------------------------------- # ----------------------------------
AC_DEFUN([MCA_pml_portals_CONFIG_PLATFORM], [ AC_DEFUN([MCA_pml_portals_CONFIG_PLATFORM], [
@ -114,7 +41,7 @@ AC_DEFUN([MCA_pml_portals_CONFIG_PLATFORM], [
"utcp") "utcp")
PML_PORTALS_UTCP=1 PML_PORTALS_UTCP=1
PML_PORTALS_HAVE_EVENT_UNLINK=1 PML_PORTALS_HAVE_EVENT_UNLINK=1
pml_portals_LIBS="-lutcpapi -lutcplib -lp3api -lp3lib -lp3rt" pml_portals_LIBS="-lp3utcp -lp3api -lp3lib -lp3rt -lp3utcp"
pml_portals_compat="utcp" pml_portals_compat="utcp"
pml_portals_header_prefix= pml_portals_header_prefix=
pml_portals_starting_table_id=0 pml_portals_starting_table_id=0
@ -126,7 +53,7 @@ AC_DEFUN([MCA_pml_portals_CONFIG_PLATFORM], [
pml_portals_LIBS= pml_portals_LIBS=
pml_portals_compat="redstorm" pml_portals_compat="redstorm"
pml_portals_header_prefix="portals/" pml_portals_header_prefix="portals/"
pml_portals_starting_table_id=30 pml_portals_starting_table_id=32
AC_MSG_RESULT([red storm]) AC_MSG_RESULT([red storm])
;; ;;
*) *)
@ -199,7 +126,6 @@ AC_DEFUN([MCA_pml_portals_CONFIG],[
AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <${pml_portals_header_prefix}portals3.h>], AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <${pml_portals_header_prefix}portals3.h>],
[int i; PtlInit(&i);])], [int i; PtlInit(&i);])],
[AC_MSG_RESULT([yes]) [AC_MSG_RESULT([yes])
MCA_pml_portals_CONFIG_VALS()
pml_portals_WRAPPER_EXTRA_LDFLAGS="$pml_portals_LDFLAGS" pml_portals_WRAPPER_EXTRA_LDFLAGS="$pml_portals_LDFLAGS"
pml_portals_WRAPPER_EXTRA_LIBS="$pml_portals_LIBS" pml_portals_WRAPPER_EXTRA_LIBS="$pml_portals_LIBS"
$1], $1],

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

@ -1,6 +1,6 @@
# -*- shell-script -*- # -*- shell-script -*-
# #
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana # Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
# University Research and Technology # University Research and Technology
# Corporation. All rights reserved. # Corporation. All rights reserved.
# Copyright (c) 2004-2005 The University of Tennessee and The University # Copyright (c) 2004-2005 The University of Tennessee and The University
@ -8,6 +8,8 @@
# reserved. # reserved.
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, # Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
# University of Stuttgart. All rights reserved. # University of Stuttgart. All rights reserved.
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
# $COPYRIGHT$ # $COPYRIGHT$
# #
# Additional copyrights may follow # Additional copyrights may follow

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow
@ -32,11 +39,17 @@ mca_pml_portals_t mca_pml_portals = {
mca_pml_portals_iprobe, mca_pml_portals_iprobe,
mca_pml_portals_probe, mca_pml_portals_probe,
mca_pml_portals_start, mca_pml_portals_start,
mca_pml_portals_dump,
32768, /* max tag value */ 32768, /* max tag value */
100 /* max cid - BWB - fix me */ 100 /* max cid - BWB - fix me */
} }
}; };
int mca_pml_portals_enable(bool enable)
{
return OMPI_SUCCESS;
}
int mca_pml_portals_add_comm(ompi_communicator_t* comm) int mca_pml_portals_add_comm(ompi_communicator_t* comm)
{ {
return OMPI_SUCCESS; return OMPI_SUCCESS;
@ -47,11 +60,6 @@ int mca_pml_portals_del_comm(ompi_communicator_t* comm)
return OMPI_SUCCESS; return OMPI_SUCCESS;
} }
int mca_pml_portals_add_ptls(opal_list_t *ptls)
{
return OMPI_SUCCESS;
}
int mca_pml_portals_add_procs(struct ompi_proc_t** procs, size_t nprocs) int mca_pml_portals_add_procs(struct ompi_proc_t** procs, size_t nprocs)
{ {
return OMPI_SUCCESS; return OMPI_SUCCESS;
@ -62,3 +70,8 @@ int mca_pml_portals_del_procs(struct ompi_proc_t** procs, size_t nprocs)
return OMPI_SUCCESS; return OMPI_SUCCESS;
} }
/* print any available useful information from this communicator */
int mca_pml_portals_dump(struct ompi_communicator_t* comm, int verbose)
{
return OMPI_SUCCESS;
}

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow
@ -9,8 +16,8 @@
* $HEADER$ * $HEADER$
*/ */
#ifndef PML_EXAMPLE_H_HAS_BEEN_INCLUDED #ifndef PML_PORTALS_H_HAS_BEEN_INCLUDED
#define PML_EXAMPLE_H_HAS_BEEN_INCLUDED #define PML_PORTALS_H_HAS_BEEN_INCLUDED
#include "opal/threads/threads.h" #include "opal/threads/threads.h"
#include "opal/threads/condition.h" #include "opal/threads/condition.h"
@ -18,7 +25,6 @@
#include "opal/util/cmd_line.h" #include "opal/util/cmd_line.h"
#include "ompi/request/request.h" #include "ompi/request/request.h"
#include "ompi/mca/pml/pml.h" #include "ompi/mca/pml/pml.h"
#include "ompi/mca/ptl/ptl.h"
#include "ompi/datatype/datatype.h" #include "ompi/datatype/datatype.h"
#if defined(c_plusplus) || defined(__cplusplus) #if defined(c_plusplus) || defined(__cplusplus)
@ -28,15 +34,6 @@ extern "C" {
struct mca_pml_portals_t { struct mca_pml_portals_t {
mca_pml_base_module_t super; mca_pml_base_module_t super;
mca_ptl_base_component_t **portals_ptl_components;
size_t portals_num_ptl_components;
mca_ptl_base_module_t** portals_ptl_modules;
size_t portals_num_ptl_modules;
opal_list_t portals_procs;
opal_mutex_t portals_lock;
/* free list of requests */ /* free list of requests */
ompi_free_list_t portals_send_requests; ompi_free_list_t portals_send_requests;
ompi_free_list_t portals_recv_requests; ompi_free_list_t portals_recv_requests;
@ -45,36 +42,46 @@ struct mca_pml_portals_t {
opal_list_t portals_send_pending; opal_list_t portals_send_pending;
}; };
typedef struct mca_pml_portals_t mca_pml_portals_t; typedef struct mca_pml_portals_t mca_pml_portals_t;
extern mca_pml_portals_t mca_pml_portals; extern mca_pml_portals_t mca_pml_portals;
/* /*
* PML interface functions. * PML interface functions.
*/ */
extern int mca_pml_portals_add_comm( struct ompi_communicator_t* comm );
extern int mca_pml_portals_del_comm( struct ompi_communicator_t* comm );
extern int mca_pml_portals_add_procs(struct ompi_proc_t **procs, size_t nprocs); extern int mca_pml_portals_add_procs(struct ompi_proc_t **procs, size_t nprocs);
extern int mca_pml_portals_del_procs(struct ompi_proc_t **procs, size_t nprocs); extern int mca_pml_portals_del_procs(struct ompi_proc_t **procs, size_t nprocs);
extern int mca_pml_portals_add_ptls( opal_list_t *ptls );
extern int mca_pml_portals_enable(bool enable); extern int mca_pml_portals_enable(bool enable);
extern int mca_pml_portals_progress(void);
extern int mca_pml_portals_iprobe( int dst, extern int mca_pml_portals_add_comm(struct ompi_communicator_t* comm);
extern int mca_pml_portals_del_comm(struct ompi_communicator_t* comm);
extern int mca_pml_portals_irecv_init(void *buf,
size_t count,
ompi_datatype_t *datatype,
int src,
int tag, int tag,
struct ompi_communicator_t* comm, struct ompi_communicator_t* comm,
int *matched, struct ompi_request_t **request);
ompi_status_public_t* status );
extern int mca_pml_portals_probe( int dst, extern int mca_pml_portals_irecv(void *buf,
size_t count,
ompi_datatype_t *datatype,
int src,
int tag,
struct ompi_communicator_t* comm,
struct ompi_request_t **request);
extern int mca_pml_portals_recv(void *buf,
size_t count,
ompi_datatype_t *datatype,
int src,
int tag, int tag,
struct ompi_communicator_t* comm, struct ompi_communicator_t* comm,
ompi_status_public_t* status ); ompi_status_public_t* status );
extern int mca_pml_portals_cancel( ompi_request_t* request );
extern int mca_pml_portals_cancelled( ompi_request_t* request, int *flag );
extern int mca_pml_portals_isend_init(void *buf, extern int mca_pml_portals_isend_init(void *buf,
size_t count, size_t count,
ompi_datatype_t *datatype, ompi_datatype_t *datatype,
@ -101,36 +108,26 @@ extern int mca_pml_portals_send( void *buf,
mca_pml_base_send_mode_t mode, mca_pml_base_send_mode_t mode,
struct ompi_communicator_t* comm); struct ompi_communicator_t* comm);
extern int mca_pml_portals_irecv_init( void *buf, extern int mca_pml_portals_iprobe(int dst,
size_t count,
ompi_datatype_t *datatype,
int src,
int tag, int tag,
struct ompi_communicator_t* comm, struct ompi_communicator_t* comm,
struct ompi_request_t **request ); int *matched,
ompi_status_public_t* status);
extern int mca_pml_portals_irecv( void *buf, extern int mca_pml_portals_probe(int dst,
size_t count,
ompi_datatype_t *datatype,
int src,
int tag,
struct ompi_communicator_t* comm,
struct ompi_request_t **request );
extern int mca_pml_portals_recv( void *buf,
size_t count,
ompi_datatype_t *datatype,
int src,
int tag, int tag,
struct ompi_communicator_t* comm, struct ompi_communicator_t* comm,
ompi_status_public_t* status); ompi_status_public_t* status);
extern int mca_pml_portals_progress(void);
extern int mca_pml_portals_start(size_t count, ompi_request_t** requests); extern int mca_pml_portals_start(size_t count, ompi_request_t** requests);
extern int mca_pml_portals_dump(struct ompi_communicator_t* comm,
int verbose);
#if defined(c_plusplus) || defined(__cplusplus) #if defined(c_plusplus) || defined(__cplusplus)
} }
#endif #endif
#endif /* PML_EXAMPLE_H_HAS_BEEN_INCLUDED */ #endif /* PML_PORTALS_H_HAS_BEEN_INCLUDED */

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

@ -1,27 +0,0 @@
/*
* Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "ompi_config.h"
#include "pml_portals.h"
int mca_pml_portals_cancel(ompi_request_t* request)
{
return OMPI_SUCCESS;
}
int mca_pml_portals_cancelled(ompi_request_t* request, int* flag)
{
if(NULL != flag)
*flag = 0;
return OMPI_SUCCESS;
}

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow

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

@ -1,14 +0,0 @@
/*
* Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "ompi_config.h"
#include "pml_portals.h"

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

@ -1,17 +0,0 @@
/*
* Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights
* reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#ifndef PML_EXAMPLE_PTL_H_HAS_BEEN_INCLUDED
#define PML_EXAMPLE_PTL_H_HAS_BEEN_INCLUDED
#endif /* PML_EXAMPLE_PTL_H_HAS_BEEN_INCLUDED */

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

@ -1,7 +1,14 @@
/* /*
* Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
* University Research and Technology
* Corporation. All rights reserved.
* Copyright (c) 2004-2005 The University of Tennessee and The University * Copyright (c) 2004-2005 The University of Tennessee and The University
* of Tennessee Research Foundation. All rights * of Tennessee Research Foundation. All rights
* reserved. * reserved.
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
* University of Stuttgart. All rights reserved.
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* $COPYRIGHT$ * $COPYRIGHT$
* *
* Additional copyrights may follow * Additional copyrights may follow