Column-oriented GPU-accelerated Database Management System
CoGaDB
|
#include <gpu_column_cache.hpp>
Public Types | |
typedef std::map< ColumnPtr, gpu::GPU_Base_ColumnPtr > | Map |
Public Member Functions | |
const gpu::GPU_Base_ColumnPtr | getGPUColumn (ColumnPtr) |
void | printStatus () const throw () |
bool | removeGPUColumn (gpu::GPU_Base_ColumnPtr) |
Static Public Member Functions | |
static GPU_Column_Cache & | instance () |
Private Member Functions | |
GPU_Column_Cache (unsigned int max_gpu_buffer_size_in_byte) | |
GPU_Column_Cache (const GPU_Column_Cache &) | |
GPU_Column_Cache & | operator= (const GPU_Column_Cache &) |
Private Attributes | |
Map | map_ |
unsigned int | max_gpu_buffer_size_in_byte_ |
bool | caching_enabled_ |
typedef std::map<ColumnPtr,gpu::GPU_Base_ColumnPtr> CoGaDB::GPU_Column_Cache::Map |
CoGaDB::GPU_Column_Cache::GPU_Column_Cache | ( | unsigned int | max_gpu_buffer_size_in_byte | ) | [private] |
CoGaDB::GPU_Column_Cache::GPU_Column_Cache | ( | const GPU_Column_Cache & | ) | [private] |
const gpu::GPU_Base_ColumnPtr CoGaDB::GPU_Column_Cache::getGPUColumn | ( | ColumnPtr | column_ptr | ) |
References caching_enabled_, CoGaDB::gpu::copy_column_host_to_device(), CoGaDB::getFreeGPUMemorySizeInByte(), CoGaDB::getTotalGPUMemorySizeInByte(), map_, and max_gpu_buffer_size_in_byte_.
Referenced by CoGaDB::BaseTable::ColumnAlgebraOperation(), CoGaDB::BaseTable::ColumnConstantOperation(), CoGaDB::query_processing::physical_operator::GPU_column_constant_filter_operator::execute(), CoGaDB::BaseTable::groupby(), CoGaDB::BaseTable::join(), CoGaDB::BaseTable::selection(), and CoGaDB::BaseTable::sort().
GPU_Column_Cache & CoGaDB::GPU_Column_Cache::instance | ( | ) | [static] |
References CoGaDB::getTotalGPUMemorySizeInByte().
Referenced by CoGaDB::BaseTable::ColumnAlgebraOperation(), CoGaDB::BaseTable::ColumnConstantOperation(), CoGaDB::query_processing::physical_operator::GPU_column_constant_filter_operator::execute(), CoGaDB::BaseTable::groupby(), CoGaDB::BaseTable::join(), CoGaDB::BaseTable::selection(), and CoGaDB::BaseTable::sort().
GPU_Column_Cache& CoGaDB::GPU_Column_Cache::operator= | ( | const GPU_Column_Cache & | ) | [private] |
void CoGaDB::GPU_Column_Cache::printStatus | ( | ) | const throw () |
References CoGaDB::getFreeGPUMemorySizeInByte(), CoGaDB::getTotalGPUMemorySizeInByte(), map_, and max_gpu_buffer_size_in_byte_.
bool CoGaDB::GPU_Column_Cache::removeGPUColumn | ( | gpu::GPU_Base_ColumnPtr | dev_col | ) |
References map_.
bool CoGaDB::GPU_Column_Cache::caching_enabled_ [private] |
Referenced by getGPUColumn().
Map CoGaDB::GPU_Column_Cache::map_ [private] |
Referenced by getGPUColumn(), printStatus(), and removeGPUColumn().
unsigned int CoGaDB::GPU_Column_Cache::max_gpu_buffer_size_in_byte_ [private] |
Referenced by getGPUColumn(), and printStatus().