GENIE
|
Classes | |
struct | _GPUGenie_Config |
Definitions about configurations that can be set by users. More... | |
Typedefs | |
typedef struct genie::original::_GPUGenie_Config | GPUGenie_Config |
struct _GPUGenie_Config More... | |
Functions | |
bool | preprocess_for_knn_csv (GPUGenie_Config &config, genie::table::inv_table *&_table) |
void | knn_search_after_preprocess (GPUGenie_Config &config, genie::table::inv_table *&_table, std::vector< int > &result, std::vector< int > &result_count) |
void | knn_search (std::vector< int > &result, std::vector< int > &result_count, GPUGenie_Config &config) |
void | knn_search (std::vector< int > &result, GPUGenie_Config &config) |
void | knn_search (genie::table::inv_table &table, std::vector< genie::query::Query > &queries, std::vector< int > &h_topk, std::vector< int > &h_topk_count, GPUGenie_Config &config) |
void | knn_search_MT (std::vector< genie::table::inv_table *> &table, std::vector< std::vector< genie::query::Query >> &queries, std::vector< std::vector< int > > &h_topk, std::vector< std::vector< int > > &h_topk_count, std::vector< GPUGenie_Config > &config) |
void | knn_search_for_csv_data (std::vector< int > &result, std::vector< int > &result_count, GPUGenie_Config &config) |
void | load_table (genie::table::inv_table &table, std::vector< std::vector< int > > &data_points, GPUGenie_Config &config) |
void | load_query (genie::table::inv_table &table, std::vector< genie::query::Query > &queries, GPUGenie_Config &config) |
void | load_query_singlerange (genie::table::inv_table &table, std::vector< genie::query::Query > &queries, GPUGenie_Config &config) |
void | load_query_multirange (genie::table::inv_table &table, std::vector< genie::query::Query > &queries, GPUGenie_Config &config) |
void | load_table_bijectMap (genie::table::inv_table &table, std::vector< std::vector< int > > &data_points, GPUGenie_Config &config) |
void | load_table (genie::table::inv_table &table, int *data, unsigned int item_num, unsigned int *index, unsigned int row_num, GPUGenie_Config &config) |
void | load_table_bijectMap (genie::table::inv_table &table, int *data, unsigned int item_num, unsigned int *index, unsigned int row_num, GPUGenie_Config &config) |
void | load_table_sequence (genie::table::inv_table &table, std::vector< std::vector< int > > &data_points, GPUGenie_Config &config) |
void | load_query_sequence (genie::table::inv_table &table, std::vector< genie::query::Query > &queries, GPUGenie_Config &config) |
void | sequence_to_gram (std::vector< std::vector< int > > &sequences, std::vector< std::vector< int > > &gram_data, int max_value, int gram_length) |
void | sequence_reduce_to_ground (std::vector< std::vector< int > > &data, std::vector< std::vector< int > > &converted_data, int &min_value, int &max_value) |
void | reset_device () |
clear gpu memory More... | |
void | get_rowID_offset (std::vector< int > &result, std::vector< int > &resultID, std::vector< int > &resultOffset, unsigned int shift_bits) |
void | init_genie (GPUGenie_Config &config) |
void genie::original::get_rowID_offset | ( | std::vector< int > & | result, |
std::vector< int > & | resultID, | ||
std::vector< int > & | resultOffset, | ||
unsigned int | shift_bits | ||
) |
void genie::original::init_genie | ( | GPUGenie_Config & | config | ) |
Definition at line 996 of file interface.cc.
void genie::original::knn_search | ( | std::vector< int > & | result, |
std::vector< int > & | result_count, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 779 of file interface.cc.
void genie::original::knn_search | ( | std::vector< int > & | result, |
GPUGenie_Config & | config | ||
) |
Definition at line 773 of file interface.cc.
void genie::original::knn_search | ( | genie::table::inv_table & | table, |
std::vector< genie::query::Query > & | queries, | ||
std::vector< int > & | h_topk, | ||
std::vector< int > & | h_topk_count, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 826 of file interface.cc.
void genie::original::knn_search_after_preprocess | ( | GPUGenie_Config & | config, |
genie::table::inv_table *& | _table, | ||
std::vector< int > & | result, | ||
std::vector< int > & | result_count | ||
) |
Definition at line 282 of file interface.cc.
void genie::original::knn_search_for_csv_data | ( | std::vector< int > & | result, |
std::vector< int > & | result_count, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 758 of file interface.cc.
void genie::original::knn_search_MT | ( | std::vector< genie::table::inv_table *> & | table, |
std::vector< std::vector< genie::query::Query >> & | queries, | ||
std::vector< std::vector< int > > & | h_topk, | ||
std::vector< std::vector< int > > & | h_topk_count, | ||
std::vector< GPUGenie_Config > & | config | ||
) |
void genie::original::load_query | ( | genie::table::inv_table & | table, |
std::vector< genie::query::Query > & | queries, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 403 of file interface.cc.
void genie::original::load_query_multirange | ( | genie::table::inv_table & | table, |
std::vector< genie::query::Query > & | queries, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 427 of file interface.cc.
void genie::original::load_query_sequence | ( | genie::table::inv_table & | table, |
std::vector< genie::query::Query > & | queries, | ||
GPUGenie_Config & | config | ||
) |
void genie::original::load_query_singlerange | ( | genie::table::inv_table & | table, |
std::vector< genie::query::Query > & | queries, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 473 of file interface.cc.
void genie::original::load_table | ( | genie::table::inv_table & | table, |
std::vector< std::vector< int > > & | data_points, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 316 of file interface.cc.
void genie::original::load_table | ( | genie::table::inv_table & | table, |
int * | data, | ||
unsigned int | item_num, | ||
unsigned int * | index, | ||
unsigned int | row_num, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 355 of file interface.cc.
void genie::original::load_table_bijectMap | ( | genie::table::inv_table & | table, |
std::vector< std::vector< int > > & | data_points, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 621 of file interface.cc.
void genie::original::load_table_bijectMap | ( | genie::table::inv_table & | table, |
int * | data, | ||
unsigned int | item_num, | ||
unsigned int * | index, | ||
unsigned int | row_num, | ||
GPUGenie_Config & | config | ||
) |
Definition at line 649 of file interface.cc.
void genie::original::load_table_sequence | ( | genie::table::inv_table & | table, |
std::vector< std::vector< int > > & | data_points, | ||
GPUGenie_Config & | config | ||
) |
bool genie::original::preprocess_for_knn_csv | ( | GPUGenie_Config & | config, |
genie::table::inv_table *& | _table | ||
) |
Definition at line 150 of file interface.cc.
void genie::original::reset_device | ( | ) |
clear gpu memory
Every time a kernel finishes, there would be some information remained on GPU. It can cause the same problem as memory leakage. So we have to clear GPU, if we want to launch multiple queries in one host process
Definition at line 912 of file interface.cc.
void genie::original::sequence_reduce_to_ground | ( | std::vector< std::vector< int > > & | data, |
std::vector< std::vector< int > > & | converted_data, | ||
int & | min_value, | ||
int & | max_value | ||
) |
void genie::original::sequence_to_gram | ( | std::vector< std::vector< int > > & | sequences, |
std::vector< std::vector< int > > & | gram_data, | ||
int | max_value, | ||
int | gram_length | ||
) |