aba398ce09
(http://www.open-mpi.org/community/lists/devel/2012/04/10905.php), set opal_cache_line_size via hwloc data, if we have it. opal_cache_line_size will be set to an hwloc-inspired value by the end of orte_init(), but will always have a safe value to use (i.e., a default value 128) -- even before opal_init() has completed. Default to the same value of 128 that Open MPI has used for several years if a) we have no hwloc data, or b) we weren't able to find L2 objects in the hwloc data. This commit was SVN r26322.
92 строки
2.5 KiB
C
92 строки
2.5 KiB
C
/*
|
|
* Copyright (c) 2004-2007 The Trustees of Indiana University and Indiana
|
|
* University Research and Technology
|
|
* Corporation. All rights reserved.
|
|
* Copyright (c) 2004-2007 The University of Tennessee and The University
|
|
* of Tennessee Research Foundation. All rights
|
|
* 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 (c) 2008 Sun Microsystems, Inc. All rights reserved.
|
|
* Copyright (c) 2010-2012 Cisco Systems, Inc. All rights reserved.
|
|
* $COPYRIGHT$
|
|
*
|
|
* Additional copyrights may follow
|
|
*
|
|
* $HEADER$
|
|
*/
|
|
|
|
/** @file **/
|
|
|
|
#ifndef OPAL_H
|
|
#define OPAL_H
|
|
|
|
#include "opal_config.h"
|
|
|
|
BEGIN_C_DECLS
|
|
|
|
/** version string of opal */
|
|
OPAL_DECLSPEC extern const char opal_version_string[];
|
|
|
|
/* Size of a cache line. Initialized to a fixed value (see
|
|
opal_init.c) until hwloc data is available, at which time it is
|
|
filled with the smallest size of the lowest cache line (e.g., the
|
|
smallest line size from all L1 caches found on the current
|
|
system). */
|
|
OPAL_DECLSPEC extern int opal_cache_line_size;
|
|
|
|
/**
|
|
* Initialize the OPAL layer, including the MCA system.
|
|
*
|
|
* @retval OPAL_SUCCESS Upon success.
|
|
* @retval OPAL_ERROR Upon failure.
|
|
*
|
|
* \note If this function is called, opal_init_util() should *not* be
|
|
* called.
|
|
*/
|
|
OPAL_DECLSPEC int opal_init(int* pargc, char*** pargv);
|
|
|
|
/**
|
|
* Finalize the OPAL layer, including the MCA system.
|
|
*
|
|
* @retval OPAL_SUCCESS Upon success.
|
|
* @retval OPAL_ERROR Upon failure.
|
|
*
|
|
* \note If this function is called, opal_finalize_util() should *not*
|
|
* be called.
|
|
*/
|
|
OPAL_DECLSPEC int opal_finalize(void);
|
|
|
|
/**
|
|
* Initialize the OPAL layer, excluding the MCA system.
|
|
*
|
|
* @retval OPAL_SUCCESS Upon success.
|
|
* @retval OPAL_ERROR Upon failure.
|
|
*
|
|
* \note If this function is called, opal_init() should *not*
|
|
* be called.
|
|
*/
|
|
OPAL_DECLSPEC int opal_init_util(int* pargc, char*** pargv);
|
|
|
|
/**
|
|
* Finalize the OPAL layer, excluding the MCA system.
|
|
*
|
|
* @retval OPAL_SUCCESS Upon success.
|
|
* @retval OPAL_ERROR Upon failure.
|
|
*
|
|
* \note If this function is called, opal_finalize() should *not*
|
|
* be called.
|
|
*/
|
|
OPAL_DECLSPEC int opal_finalize_util(void);
|
|
|
|
/**
|
|
* Internal function. Do not call.
|
|
*/
|
|
OPAL_DECLSPEC int opal_register_params(void);
|
|
|
|
END_C_DECLS
|
|
|
|
#endif
|