1
1
openmpi/ompi/mca/bcol/iboffload/bcol_iboffload_collreq.c
Pavel Shamis b89f8fabc9 Adding Hierarchical Collectives project to the Open MPI trunk.
The project includes following components and frameworks: 
- ML Collective component
- NETPATTERNS and COMMPATTERNS common components
- BCOL framework
- SBGP framework

Note: By default the ML collective component is disabled. In order to enable
new collectives user should bump up the priority of ml component (coll_ml_priority)

=============================================

Primary Contributors (in alphabetical order):

Ishai Rabinovich (Mellanox)
Joshua S. Ladd (ORNL / Mellanox)
Manjunath Gorentla Venkata (ORNL)
Mike Dubman (Mellanox)
Noam Bloch (Mellanox)
Pavel (Pasha) Shamis (ORNL / Mellanox)
Richard Graham (ORNL / Mellanox)
Vasily Filipov (Mellanox)

This commit was SVN r27078.
2012-08-16 19:11:35 +00:00

51 строка
1.3 KiB
C

/*
* Copyright (c) 2009-2012 Oak Ridge National Laboratory. All rights reserved.
* Copyright (c) 2009-2012 Mellanox Technologies. All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#include "ompi_config.h"
#include "bcol_iboffload_collreq.h"
static void
collreq_construct(struct mca_bcol_iboffload_collreq_t *collreq)
{
int i;
collreq->n_fragments = 0;
collreq->n_frag_mpi_complete = 0;
collreq->n_frag_net_complete = 0;
collreq->user_handle_freed = false;
for (i = 0; i < BCOL_IBOFFLOAD_BUFFERS; i++) {
collreq->buffer_info[i].buf = NULL;
collreq->buffer_info[i].offset = 0;
collreq->buffer_info[i].iboffload_reg = NULL;
}
OBJ_CONSTRUCT(&collreq->work_requests, opal_list_t);
OBJ_CONSTRUCT(&collreq->first_collfrag, mca_bcol_iboffload_collfrag_t);
OBJ_CONSTRUCT(&collreq->send_convertor, opal_convertor_t);
OBJ_CONSTRUCT(&collreq->recv_convertor, opal_convertor_t);
}
static void
collreq_destruct(struct mca_bcol_iboffload_collreq_t *collreq)
{
OBJ_DESTRUCT(&collreq->work_requests);
OBJ_DESTRUCT(&collreq->first_collfrag);
OBJ_DESTRUCT(&collreq->send_convertor);
OBJ_DESTRUCT(&collreq->recv_convertor);
}
OBJ_CLASS_INSTANCE(mca_bcol_iboffload_collreq_t,
ompi_request_t,
collreq_construct,
collreq_destruct);