timemory 3.3.0
Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
ring_buffer_allocator.hpp File Reference
#include "timemory/environment/declaration.hpp"
#include "timemory/storage/ring_buffer.hpp"
#include "timemory/units.hpp"
#include "timemory/utility/utility.hpp"
#include <cstddef>
#include <functional>
#include <memory>
#include <type_traits>
#include <utility>
#include <vector>
+ Include dependency graph for ring_buffer_allocator.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  tim::data::ring_buffer_allocator< Tp, MMapV, BuffCntV >
 allocator that uses array of (ring) buffers to coalesce memory. Requires This allocator propagates on container swap and container move assignment. Use TIMEMORY_RING_BUFFER_ALLOCATOR_BUFFER_COUNT env variable to specify the default number of allocations or use the set_buffer_count / set_buffer_count_cb. When a reserve is requested and the request is greater than the free spaces in the buffer, the free spaces are stored in a "dangling" array of spaces which are used when single allocations are requested. More...
 
struct  tim::data::ring_buffer_allocator< Tp, MMapV, BuffCntV >::rebind< U >
 

Namespaces

namespace  tim
 
namespace  tim::data
 

Class Documentation

◆ tim::data::ring_buffer_allocator::rebind

struct tim::data::ring_buffer_allocator::rebind
template<typename Tp, bool MMapV, size_t BuffCntV>
template<typename U>
struct tim::data::ring_buffer_allocator< Tp, MMapV, BuffCntV >::rebind< U >

Definition at line 99 of file ring_buffer_allocator.hpp.

+ Collaboration diagram for tim::data::ring_buffer_allocator< Tp, MMapV, BuffCntV >::rebind< U >:
Class Members
typedef ring_buffer_allocator< U, MMapV, BuffCntV > other