OmniSciDB
a5dc49c757
|
#include <ExecutionKernel.h>
Public Member Functions | |
SharedKernelContext (const std::vector< InputTableInfo > &query_infos) | |
const std::vector< uint64_t > & | getFragOffsets () |
void | addDeviceResults (ResultSetPtr &&device_results, std::vector< size_t > outer_table_fragment_ids) |
std::vector< std::pair < ResultSetPtr, std::vector < size_t > > > & | getFragmentResults () |
const std::vector < InputTableInfo > & | getQueryInfos () const |
void | setNumAllocatedThreads (size_t num_threads) |
size_t | getNumAllocatedThreads () |
Public Attributes | |
std::atomic_flag | dynamic_watchdog_set = ATOMIC_FLAG_INIT |
Private Attributes | |
std::mutex | reduce_mutex_ |
std::vector< std::pair < ResultSetPtr, std::vector < size_t > > > | all_fragment_results_ |
std::vector< uint64_t > | all_frag_row_offsets_ |
std::mutex | all_frag_row_offsets_mutex_ |
const std::vector < InputTableInfo > & | query_infos_ |
const RegisteredQueryHint | query_hint_ |
size_t | num_allocated_threads_ {1} |
Definition at line 29 of file ExecutionKernel.h.
|
inline |
Definition at line 31 of file ExecutionKernel.h.
void SharedKernelContext::addDeviceResults | ( | ResultSetPtr && | device_results, |
std::vector< size_t > | outer_table_fragment_ids | ||
) |
Definition at line 115 of file ExecutionKernel.cpp.
References all_fragment_results_, anonymous_namespace{ExecutionKernel.cpp}::needs_skip_result(), and reduce_mutex_.
Referenced by Executor::launchKernelsImpl(), and ExecutionKernel::runImpl().
std::vector< std::pair< ResultSetPtr, std::vector< size_t > > > & SharedKernelContext::getFragmentResults | ( | ) |
Definition at line 125 of file ExecutionKernel.cpp.
References all_fragment_results_.
Referenced by Executor::collectAllDeviceResults(), Executor::collectAllDeviceShardedTopResults(), Executor::executeUpdate(), Executor::executeWorkUnitImpl(), Executor::executeWorkUnitPerFragment(), and Executor::resultsUnion().
const std::vector< uint64_t > & SharedKernelContext::getFragOffsets | ( | ) |
Definition at line 102 of file ExecutionKernel.cpp.
References all_frag_row_offsets_, all_frag_row_offsets_mutex_, and query_infos_.
Referenced by Executor::createKernels(), Executor::executeUpdate(), and ExecutionKernel::runImpl().
|
inline |
Definition at line 54 of file ExecutionKernel.h.
References num_allocated_threads_.
Referenced by anonymous_namespace{ExecutionKernel.cpp}::get_available_cpu_threads_per_task().
|
inline |
Definition at line 46 of file ExecutionKernel.h.
References query_infos_.
Referenced by Executor::launchKernelsViaResourceMgr(), and ExecutionKernel::runImpl().
|
inline |
Definition at line 50 of file ExecutionKernel.h.
References num_allocated_threads_.
Referenced by Executor::launchKernelsImpl().
|
private |
Definition at line 76 of file ExecutionKernel.h.
Referenced by getFragOffsets().
|
private |
Definition at line 77 of file ExecutionKernel.h.
Referenced by getFragOffsets().
|
private |
Definition at line 74 of file ExecutionKernel.h.
Referenced by addDeviceResults(), and getFragmentResults().
std::atomic_flag SharedKernelContext::dynamic_watchdog_set = ATOMIC_FLAG_INIT |
Definition at line 58 of file ExecutionKernel.h.
Referenced by ExecutionKernel::runImpl().
|
private |
Definition at line 83 of file ExecutionKernel.h.
Referenced by getNumAllocatedThreads(), and setNumAllocatedThreads().
|
private |
Definition at line 79 of file ExecutionKernel.h.
|
private |
Definition at line 78 of file ExecutionKernel.h.
Referenced by getFragOffsets(), and getQueryInfos().
|
private |
Definition at line 73 of file ExecutionKernel.h.
Referenced by addDeviceResults().