OmniSciDB  a987f07e93
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GpuInitGroups.h File Reference
#include <cstdint>
+ Include dependency graph for GpuInitGroups.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void init_group_by_buffer_on_device (int64_t *groups_buffer, const int64_t *init_vals, const uint32_t groups_buffer_entry_count, const uint32_t key_count, const uint32_t key_width, const uint32_t agg_col_count, const bool keyless, const int8_t warp_size, const size_t block_size_x, const size_t grid_size_x)
 
void init_columnar_group_by_buffer_on_device (int64_t *groups_buffer, const int64_t *init_vals, const uint32_t groups_buffer_entry_count, const uint32_t key_count, const uint32_t agg_col_count, const int8_t *col_sizes, const bool need_padding, const bool keyless, const int8_t key_size, const size_t block_size_x, const size_t grid_size_x)
 

Function Documentation

void init_columnar_group_by_buffer_on_device ( int64_t *  groups_buffer,
const int64_t *  init_vals,
const uint32_t  groups_buffer_entry_count,
const uint32_t  key_count,
const uint32_t  agg_col_count,
const int8_t *  col_sizes,
const bool  need_padding,
const bool  keyless,
const int8_t  key_size,
const size_t  block_size_x,
const size_t  grid_size_x 
)

Definition at line 218 of file GpuInitGroups.cu.

References checkCudaErrors, getQueryEngineCudaStream(), and init_columnar_group_by_buffer_gpu_wrapper().

Referenced by QueryMemoryInitializer::createAndInitializeGroupByBufferGpu().

228  {
229  auto qe_cuda_stream = getQueryEngineCudaStream();
231  block_size_x,
232  0,
233  qe_cuda_stream>>>(groups_buffer,
234  init_vals,
235  groups_buffer_entry_count,
236  key_count,
237  agg_col_count,
238  col_sizes,
239  need_padding,
240  keyless,
241  key_size);
242  checkCudaErrors(cudaStreamSynchronize(qe_cuda_stream));
243 }
__global__ void init_columnar_group_by_buffer_gpu_wrapper(int64_t *groups_buffer, const int64_t *init_vals, const uint32_t groups_buffer_entry_count, const uint32_t key_count, const uint32_t agg_col_count, const int8_t *col_sizes, const bool need_padding, const bool keyless, const int8_t key_size)
CUstream getQueryEngineCudaStream()
Definition: QueryEngine.cpp:3
#define checkCudaErrors(err)
Definition: GpuInitGroups.cu:9

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void init_group_by_buffer_on_device ( int64_t *  groups_buffer,
const int64_t *  init_vals,
const uint32_t  groups_buffer_entry_count,
const uint32_t  key_count,
const uint32_t  key_width,
const uint32_t  agg_col_count,
const bool  keyless,
const int8_t  warp_size,
const size_t  block_size_x,
const size_t  grid_size_x 
)

Definition at line 195 of file GpuInitGroups.cu.

References checkCudaErrors, and getQueryEngineCudaStream().

Referenced by QueryMemoryInitializer::createAndInitializeGroupByBufferGpu(), and QueryMemoryInitializer::prepareTopNHeapsDevBuffer().

204  {
205  auto qe_cuda_stream = getQueryEngineCudaStream();
206  init_group_by_buffer_gpu<<<grid_size_x, block_size_x, 0, qe_cuda_stream>>>(
207  groups_buffer,
208  init_vals,
209  groups_buffer_entry_count,
210  key_count,
211  key_width,
212  row_size_quad,
213  keyless,
214  warp_size);
215  checkCudaErrors(cudaStreamSynchronize(qe_cuda_stream));
216 }
CUstream getQueryEngineCudaStream()
Definition: QueryEngine.cpp:3
#define checkCudaErrors(err)
Definition: GpuInitGroups.cu:9

+ Here is the call graph for this function:

+ Here is the caller graph for this function: