VulkanRaytracingCycles 0.0.0
Cycles Render Engine With VulkanRaytracingShaderModules. ( Experiment , in progress)
|
#include <AllocatorVk.h>
Public Types | |
typedef bool | futType |
typedef std::function<bool(bool)> desType; More... | |
typedef uint32_t | queueType |
typedef Lbd< bool(bool)> | desType |
Public Member Functions | |
void | Dispatch () |
bool | NipInTheBud () |
uint32_t | AllocFuture () |
bool | AllocKiller (ssize_t idx, ssize_t reserve) |
void | ClearBuds () |
void | Holocaust () |
template<class F > | |
ssize_t | ToDoList (F const &f, ssize_t reserve=100) |
bool | Alive (ssize_t ID) |
bool | Kill (ssize_t ID) |
bool | KillForce (ssize_t idx) |
~DeallocatorVk () | |
Public Attributes | |
std::unordered_map< std::string, HANDLE > | beginThreads |
std::vector< std::future< futType > > | desfuture |
std::mutex | mtx_desfuture |
std::atomic_bool | nib_end |
bonqueue< uint32_t, 1000000 > | buds |
std::atomic_uint | budsNums = { 0 } |
uint32_t | _total = 0 |
desType | _ [LBSTA] |
std::vector<desType > _; More... | |
ssize_t | idx = 0 |
ssize_t | size = 0 |
Definition at line 1724 of file AllocatorVk.h.
typedef Lbd<bool(bool)> front::DeallocatorVk::desType |
Definition at line 1731 of file AllocatorVk.h.
typedef bool front::DeallocatorVk::futType |
typedef std::function<bool(bool)> desType;
Definition at line 1729 of file AllocatorVk.h.
typedef uint32_t front::DeallocatorVk::queueType |
Definition at line 1730 of file AllocatorVk.h.
front::DeallocatorVk::~DeallocatorVk | ( | ) |
|
inline |
if (InterlockedAdd64((LONG64*)&killer.size, 0) > idx) {
Definition at line 1805 of file AllocatorVk.h.
uint32_t front::DeallocatorVk::AllocFuture | ( | ) |
Definition at line 1898 of file AllocatorVk.cpp.
bool front::DeallocatorVk::AllocKiller | ( | ssize_t | idx, |
ssize_t | reserve | ||
) |
killer._.resize(size_t(killer.size));
Definition at line 1905 of file AllocatorVk.cpp.
void front::DeallocatorVk::ClearBuds | ( | ) |
Definition at line 1936 of file AllocatorVk.cpp.
void front::DeallocatorVk::Dispatch | ( | ) |
Definition at line 1843 of file AllocatorVk.cpp.
void front::DeallocatorVk::Holocaust | ( | ) |
log_allo("Call kill %zu \n", idx);
Definition at line 1970 of file AllocatorVk.cpp.
|
inline |
|
inline |
Definition at line 1826 of file AllocatorVk.h.
bool front::DeallocatorVk::NipInTheBud | ( | ) |
Definition at line 1868 of file AllocatorVk.cpp.
|
inline |
occupa = desType::Occupa();
Definition at line 1772 of file AllocatorVk.h.
std::vector<desType > _;
Definition at line 1742 of file AllocatorVk.h.
uint32_t front::DeallocatorVk::_total = 0 |
Definition at line 1759 of file AllocatorVk.h.
std::unordered_map<std::string, HANDLE> front::DeallocatorVk::beginThreads |
Definition at line 1751 of file AllocatorVk.h.
bonqueue<uint32_t, 1000000> front::DeallocatorVk::buds |
Definition at line 1756 of file AllocatorVk.h.
std::atomic_uint front::DeallocatorVk::budsNums = { 0 } |
Definition at line 1757 of file AllocatorVk.h.
std::vector<std::future<futType> > front::DeallocatorVk::desfuture |
Definition at line 1752 of file AllocatorVk.h.
ssize_t front::DeallocatorVk::idx = 0 |
Definition at line 1745 of file AllocatorVk.h.
std::mutex front::DeallocatorVk::mtx_desfuture |
Definition at line 1753 of file AllocatorVk.h.
std::atomic_bool front::DeallocatorVk::nib_end |
Definition at line 1755 of file AllocatorVk.h.
ssize_t front::DeallocatorVk::size = 0 |
Definition at line 1746 of file AllocatorVk.h.