
#include <CUDA/cudafreelist.H>
Collaboration diagram for rutz::cuda_free_list_base:

Definition at line 49 of file cudafreelist.H.
Public Member Functions | |
| cuda_free_list_base (std::size_t size_check) | |
| Construct an (empty) free list. | |
| void * | allocate (std::size_t bytes, int dev) |
| Allocate space for a new object. | |
| void | deallocate (void *space, int dev) |
| Return an object to the free list. | |
| void | release_free_nodes () |
| Release all nodes currently on the free list (e.g. to conserve memory). | |
| int | get_num_nodes (int dev) |
| std::map< int, int >::const_iterator | getDevicesBegin () |
| std::map< int, int >::const_iterator | getDevicesEnd () |
| std::size_t | alloc_size () const |
| Query the chunk size that this freelist is for. | |
| std::size_t | num_allocations (int dev) |
| Query how many allocations have been made. | |
Classes | |
| struct | node |
| Free-node class for free-list memory pools. | |
|
|
Construct an (empty) free list. All objects from this list must be of size size_check. Definition at line 42 of file cudafreelist.C. References MAX_CUDA_DEVICES. |
|
|
Query the chunk size that this freelist is for.
Definition at line 94 of file cudafreelist.H. |
|
||||||||||||
|
Allocate space for a new object. If there are chunks available in the free list, one of those is returned; otherwise new memory is allocated with malloc() or equivalent. Definition at line 52 of file cudafreelist.C. References ASSERT, Dlist::index(), CudaDevices::malloc(), and n. |
|
||||||||||||
|
Return an object to the free list.
Definition at line 73 of file cudafreelist.C. References Dlist::index(), and n. |
|
|
Query how many allocations have been made.
Definition at line 97 of file cudafreelist.H. References i. |
|
|
Release all nodes currently on the free list (e.g. to conserve memory).
Definition at line 119 of file cudafreelist.C. References CudaDevices::free(), and n. |
1.4.4