mem.h File Reference

heap building blocks -*- C++ -*- More...

#include "Galois/Runtime/SimpleLock.h"
#include "Galois/Runtime/PerCPU.h"
#include <boost/utility.hpp>
#include <memory.h>
#include <map>

Go to the source code of this file.

Classes

class  GaloisRuntime::MM::mmapWrapper
 Base mmap wrapper. More...
class  GaloisRuntime::MM::ThreadAwarePrivateHeap< LocalHeap >
 Per-thread heaps using Galois thread aware construct. More...
class  GaloisRuntime::MM::LockedHeap< RealHeap >
 Apply a lock to a heap. More...
class  GaloisRuntime::MM::ZeroOut< SourceHeap >
class  GaloisRuntime::MM::AddHeader< Header, SourceHeap >
 Add a header to objects. More...
class  GaloisRuntime::MM::OwnerTaggedHeap< SourceHeap >
 Allow looking up parent heap pointers. More...
class  GaloisRuntime::MM::FreeListHeap< SourceHeap >
 Maintain a freelist. More...
struct  GaloisRuntime::MM::FreeListHeap< SourceHeap >::FreeNode
class  GaloisRuntime::MM::SelfLockFreeListHeap< SourceHeap >
 Maintain a freelist using a lock which doesn't cover SourceHeap. More...
struct  GaloisRuntime::MM::SelfLockFreeListHeap< SourceHeap >::FreeNode
class  GaloisRuntime::MM::BlockAlloc< ElemSize, SourceHeap >
struct  GaloisRuntime::MM::BlockAlloc< ElemSize, SourceHeap >::TyEq
struct  GaloisRuntime::MM::BlockAlloc< ElemSize, SourceHeap >::Block_basic
struct  GaloisRuntime::MM::BlockAlloc< ElemSize, SourceHeap >::Block
class  GaloisRuntime::MM::SimpleBumpPtr< SourceHeap >
 This implements a bump pointer though chunks of memory. More...
struct  GaloisRuntime::MM::SimpleBumpPtr< SourceHeap >::Block
class  GaloisRuntime::MM::SystemBaseAlloc
 This is the base source of memory for all allocators. More...
class  GaloisRuntime::MM::MallocWrapper
class  GaloisRuntime::MM::SizedAllocatorFactory
class  GaloisRuntime::MM::FixedSizeAllocator
class  GaloisRuntime::MM::FSBGaloisAllocator< Ty >
struct  GaloisRuntime::MM::FSBGaloisAllocator< Ty >::rebind< Other >
class  GaloisRuntime::MM::ExternRefGaloisAllocator< Ty, AllocTy >
struct  GaloisRuntime::MM::ExternRefGaloisAllocator< Ty, AllocTy >::rebind< Other >

Namespaces

namespace  GaloisRuntime
namespace  GaloisRuntime::MM

Detailed Description

heap building blocks -*- C++ -*-

License

Galois, a framework to exploit amorphous data-parallelism in irregular programs.

Copyright (C) 2011, The University of Texas at Austin. All rights reserved. UNIVERSITY EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES CONCERNING THIS SOFTWARE AND DOCUMENTATION, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR ANY PARTICULAR PURPOSE, NON-INFRINGEMENT AND WARRANTIES OF PERFORMANCE, AND ANY WARRANTY THAT MIGHT OTHERWISE ARISE FROM COURSE OF DEALING OR USAGE OF TRADE. NO WARRANTY IS EITHER EXPRESS OR IMPLIED WITH RESPECT TO THE USE OF THE SOFTWARE OR DOCUMENTATION. Under no circumstances shall University be liable for incidental, special, indirect, direct or consequential damages or loss of profits, interruption of business, or related expenses which may arise from use of Software or Documentation, including but not limited to those resulting from defects in Software and/or Documentation, or loss or inaccuracy of data of any kind.

Description

Strongly inspired by heap layers: http://www.heaplayers.org/ FSB is modified from: http://warp.povusers.org/FSBAllocator/

Author:
Andrew Lenharth <andrewl@lenharth.org>
Generated on Tue Aug 2 11:51:26 2011 for Galois by  doxygen 1.6.3