OmniSciDB
a5dc49c757
|
A container to store requested and minimum neccessary resource requests across all resource types currently supported by ExecutorResourceMgr
/ExecutorResourcePool
. It also includes a ChunkRequestInfo
struct to denote which DataMgr
chunks (with their sizes in bytes) are neccesary for the query.
More...
#include <ResourceRequest.h>
Public Member Functions | |
RequestInfo (const ExecutorDeviceType request_device_type, const size_t priority_level, const size_t cpu_slots, const size_t min_cpu_slots, const size_t gpu_slots, const size_t min_gpu_slots, const size_t cpu_result_mem, const size_t min_cpu_result_mem, const ChunkRequestInfo &chunk_request_info, const bool output_buffers_reusable_intra_thread) | |
RequestInfo (const ExecutorDeviceType request_device_type, const size_t num_kernels, const size_t cpu_result_mem) | |
Simple constructor assuming no difference between min and requested resources, and no intra-thread cpu mem sharing. More... | |
Public Attributes | |
ExecutorDeviceType | request_device_type |
size_t | priority_level {0} |
size_t | cpu_slots {0} |
size_t | min_cpu_slots {0} |
size_t | gpu_slots {0} |
size_t | min_gpu_slots {0} |
size_t | cpu_result_mem {0} |
size_t | min_cpu_result_mem {0} |
ChunkRequestInfo | chunk_request_info |
bool | output_buffers_reusable_intra_thread {false} |
bool | chunk_memory_scales_by_num_threads {false} |
bool | request_must_run_alone {false} |
bool | request_must_run_alone_for_device_type {false} |
A container to store requested and minimum neccessary resource requests across all resource types currently supported by ExecutorResourceMgr
/ExecutorResourcePool
. It also includes a ChunkRequestInfo
struct to denote which DataMgr
chunks (with their sizes in bytes) are neccesary for the query.
RequestInfo
is the principal data interface between Executor::launchKernelsViaResourceMgr
and ExecutorResourceMgr
.
Definition at line 70 of file ResourceRequest.h.
|
inline |
Definition at line 85 of file ResourceRequest.h.
|
inline |
Simple constructor assuming no difference between min and requested resources, and no intra-thread cpu mem sharing.
Definition at line 110 of file ResourceRequest.h.
References GPU.
bool ExecutorResourceMgr_Namespace::RequestInfo::chunk_memory_scales_by_num_threads {false} |
Definition at line 81 of file ResourceRequest.h.
ChunkRequestInfo ExecutorResourceMgr_Namespace::RequestInfo::chunk_request_info |
Definition at line 79 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
size_t ExecutorResourceMgr_Namespace::RequestInfo::cpu_result_mem {0} |
Definition at line 77 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
size_t ExecutorResourceMgr_Namespace::RequestInfo::cpu_slots {0} |
Definition at line 73 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
size_t ExecutorResourceMgr_Namespace::RequestInfo::gpu_slots {0} |
Definition at line 75 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
size_t ExecutorResourceMgr_Namespace::RequestInfo::min_cpu_result_mem {0} |
Definition at line 78 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
size_t ExecutorResourceMgr_Namespace::RequestInfo::min_cpu_slots {0} |
Definition at line 74 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
size_t ExecutorResourceMgr_Namespace::RequestInfo::min_gpu_slots {0} |
Definition at line 76 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourcePool::calc_min_max_resource_grants_for_request().
bool ExecutorResourceMgr_Namespace::RequestInfo::output_buffers_reusable_intra_thread {false} |
Definition at line 80 of file ResourceRequest.h.
size_t ExecutorResourceMgr_Namespace::RequestInfo::priority_level {0} |
Definition at line 72 of file ResourceRequest.h.
ExecutorDeviceType ExecutorResourceMgr_Namespace::RequestInfo::request_device_type |
Definition at line 71 of file ResourceRequest.h.
Referenced by ExecutorResourceMgr_Namespace::ExecutorResourceMgr::enqueue_request(), ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_dequed(), ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_finished(), and ExecutorResourceMgr_Namespace::ExecutorResourceMgr::mark_request_timed_out().
bool ExecutorResourceMgr_Namespace::RequestInfo::request_must_run_alone {false} |
Definition at line 82 of file ResourceRequest.h.
bool ExecutorResourceMgr_Namespace::RequestInfo::request_must_run_alone_for_device_type {false} |
Definition at line 83 of file ResourceRequest.h.