7163fc98a0
This commit adds a new class to opal: opal_interval_tree_t. This is a thread-safe impelementation of a 1-dimensional interval tree. The data structure is intended to provide a faster implementation of the registration cache VMA tree. The thread safety is provided by a relativistic red-black tree implementation. This structure provides support for multiple-reader, and single writer. There is one caveat, an item may appear in the tree twice while the tree is being updated. Care needs to be taken to avoid issues associated with this "feature". I don't anticipate a problem with the current VMA tree usage. Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
60 строки
2.0 KiB
Makefile
60 строки
2.0 KiB
Makefile
# -*- makefile -*-
|
|
#
|
|
# Copyright (c) 2004-2005 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) 2014 Cisco Systems, Inc. All rights reserved.
|
|
# Copyright (c) 2014-2018 Los Alamos National Security, LLC. All rights
|
|
# reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
# This makefile.am does not stand on its own - it is included from
|
|
# opal/Makefile.am
|
|
|
|
# Source code files
|
|
headers += \
|
|
class/opal_bitmap.h \
|
|
class/opal_free_list.h \
|
|
class/opal_hash_table.h \
|
|
class/opal_hotel.h \
|
|
class/opal_tree.h \
|
|
class/opal_list.h \
|
|
class/opal_object.h \
|
|
class/opal_graph.h\
|
|
class/opal_lifo.h \
|
|
class/opal_fifo.h \
|
|
class/opal_pointer_array.h \
|
|
class/opal_value_array.h \
|
|
class/opal_ring_buffer.h \
|
|
class/opal_rb_tree.h \
|
|
class/opal_interval_tree.h
|
|
|
|
lib@OPAL_LIB_PREFIX@open_pal_la_SOURCES += \
|
|
class/opal_bitmap.c \
|
|
class/opal_free_list.c \
|
|
class/opal_hash_table.c \
|
|
class/opal_hotel.c \
|
|
class/opal_tree.c \
|
|
class/opal_list.c \
|
|
class/opal_object.c \
|
|
class/opal_graph.c\
|
|
class/opal_lifo.c \
|
|
class/opal_fifo.c \
|
|
class/opal_pointer_array.c \
|
|
class/opal_value_array.c \
|
|
class/opal_ring_buffer.c \
|
|
class/opal_rb_tree.c \
|
|
class/opal_interval_tree.c
|