f707ba2dd3
callbacks to be triggered when memory is about to leave the current process. The system is designed to allow a variety of interfaces, hopefully including whole-sale replacement of the memory manager, ld preload tricks, and hooks into the system memory manager. Since some of these may or may not be available at runtime and we won't know until runtime, there is a query funtion to look for availability of such a setup. * Added ptmalloc2 memory manager replacement code. Not turned on by default, can be enabled with --with-memory-manager=ptmalloc2. Only tested on Linux, not even compiled elsewhere. Do not use on OS X, or you will never see your process again. * Added AM_CONDITIONAL for threads test to support ptmalloc2's build system This commit was SVN r6790.
57 строки
1.3 KiB
C
57 строки
1.3 KiB
C
/*
|
|
* Copyright (c) 2004-2005 The Trustees of Indiana University.
|
|
* All rights reserved.
|
|
* Copyright (c) 2004-2005 The Trustees of the University of Tennessee.
|
|
* 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$
|
|
*
|
|
* Additional copyrights may follow
|
|
*
|
|
* $HEADER$
|
|
*/
|
|
|
|
/** @file **/
|
|
|
|
#include "orte_config.h"
|
|
|
|
#include "include/orte_constants.h"
|
|
#include "opal/class/opal_object.h"
|
|
#include "opal/util/output.h"
|
|
#include "opal/util/malloc.h"
|
|
#include "opal/memory/memory.h"
|
|
#include "mca/base/base.h"
|
|
#include "runtime/opal.h"
|
|
|
|
/**
|
|
* Finalize the OPAL utilities
|
|
*
|
|
* @retval ORTE_SUCCESS Upon success.
|
|
* @retval ORTE_ERROR Upon failure.
|
|
*
|
|
* This function performs
|
|
*/
|
|
int opal_finalize(void)
|
|
{
|
|
|
|
/* finalize the mca */
|
|
mca_base_close();
|
|
|
|
/* finalize the output system */
|
|
opal_output_finalize();
|
|
|
|
/* finalize the memory manager / tracker */
|
|
opal_mem_free_finalize();
|
|
|
|
/* finalize the class/object system */
|
|
opal_class_finalize();
|
|
|
|
/* finalize the memory allocator */
|
|
opal_malloc_finalize();
|
|
|
|
return ORTE_SUCCESS;
|
|
}
|