1
1

65 строки
1.6 KiB
C

/*
* Copyright (c) 2013 Mellanox Technologies, Inc.
* All rights reserved.
* $COPYRIGHT$
*
* Additional copyrights may follow
*
* $HEADER$
*/
#ifndef MCA_SCOLL_BASE_H
#define MCA_SCOLL_BASE_H
#include "oshmem_config.h"
#include "oshmem/mca/memheap/memheap.h"
#include "opal/class/opal_list.h"
/*
* Global functions for MCA overall collective open and close
*/
BEGIN_C_DECLS
/*
* Globals
*/
/**
* Special synchronization array to do barrier all.
*/
OSHMEM_DECLSPEC extern long* mca_scoll_sync_array;
OSHMEM_DECLSPEC int mca_scoll_base_find_available(bool enable_progress_threads,
bool enable_threads);
OSHMEM_DECLSPEC int mca_scoll_base_select(struct oshmem_group_t *group);
int mca_scoll_base_group_unselect(struct oshmem_group_t *group);
OSHMEM_DECLSPEC int mca_scoll_enable(void);
/*
* MCA framework
*/
OSHMEM_DECLSPEC extern mca_base_framework_t oshmem_scoll_base_framework;
/* ******************************************************************** */
#ifdef __BASE_FILE__
#define __SCOLL_FILE__ __BASE_FILE__
#else
#define __SCOLL_FILE__ __FILE__
#endif
#define SCOLL_VERBOSE(level, format, ...) \
opal_output_verbose(level, oshmem_scoll_base_framework.framework_output, "%s:%d - %s() " format, \
__SCOLL_FILE__, __LINE__, __FUNCTION__, ## __VA_ARGS__)
#define SCOLL_ERROR(format, ... ) \
opal_output_verbose(0, oshmem_scoll_base_framework.framework_output, "Error: %s:%d - %s() " format, \
__SCOLL_FILE__, __LINE__, __FUNCTION__, ## __VA_ARGS__)
END_C_DECLS
#endif /* MCA_SCOLL_BASE_H */