Update(DeviceProxy): Dynamically Determine Memory Allocation Size & Remove Compile-Time size Calculations (#48)
* Update(DeviceProxy): Dynamically Determine Memory Allocation Size & Remove Compile-Time size Calculations - Modified the Device proxy class to determine memory allocation size at runtime. - Updated all classes that include the Device proxy to use dynamic memory allocation. - Removed compile-time memory size calculations. - Ensured the allocated number of backend queue data structures matches the number of RO device contexts.
Tento commit je obsažen v:
@@ -111,9 +111,19 @@ class ABQLBlockMutex {
|
||||
|
||||
template <typename ALLOCATOR>
|
||||
class ABQLBlockMutexProxy {
|
||||
using ProxyT = DeviceProxy<ALLOCATOR, ABQLBlockMutex, 1>;
|
||||
using ProxyT = DeviceProxy<ALLOCATOR, ABQLBlockMutex>;
|
||||
|
||||
public:
|
||||
ABQLBlockMutexProxy(size_t num_elems = 1) : proxy_{num_elems} {}
|
||||
|
||||
ABQLBlockMutexProxy(const ABQLBlockMutexProxy& other) = delete;
|
||||
|
||||
ABQLBlockMutexProxy& operator=(const ABQLBlockMutexProxy& other) = delete;
|
||||
|
||||
ABQLBlockMutexProxy(ABQLBlockMutexProxy&& other) = default;
|
||||
|
||||
ABQLBlockMutexProxy& operator=(ABQLBlockMutexProxy&& other) = default;
|
||||
|
||||
__host__ __device__ ABQLBlockMutex* get() { return proxy_.get(); }
|
||||
|
||||
private:
|
||||
|
||||
Odkázat v novém úkolu
Zablokovat Uživatele