OmniSciDB  dfae7c3b14
SystemParameters.h
Go to the documentation of this file.
1 /*
2  * Copyright 2020 OmniSci, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 /*
18  * File: parameters.h
19  * Author: michael
20  *
21  * Created on January 19, 2017, 4:31 PM
22  */
23 
24 #pragma once
25 
26 #include <string>
27 
29  size_t cuda_block_size = 0; // block size for the kernel execution
30  size_t cuda_grid_size = 0; // grid size for the kernel execution
31  size_t calcite_max_mem = 1024; // max memory for calcite jvm in MB
32  int omnisci_server_port = 6274; // default port omnisci_server runs on
33  int calcite_port = 6279; // default port for calcite server to run on
34  std::string ha_group_id; // name of the HA group this server is in
35  std::string ha_unique_server_id; // name of the HA unique id for this server
36  std::string ha_brokers; // name of the HA broker
37  std::string ha_shared_data; // name of shared data directory base
38  bool is_decr_start_epoch; // are we doing a start epoch decrement?
39  size_t cpu_buffer_mem_bytes = 0; // max size of memory reserved for CPU buffers [bytes]
40  size_t gpu_buffer_mem_bytes = 0; // max size of memory reserved for GPU buffers [bytes]
42  1L << 28; // min size of CPU buffer pool memory allocations [bytes], default=256MB
44  1L << 28; // min size of GPU buffer pool memory allocations [bytes], default=256MB
46  1L << 32; // max size of CPU buffer pool memory allocations [bytes], default=4GB
48  1L << 32; // max size of CPU buffer pool memory allocations [bytes], default=4GB
49  double gpu_input_mem_limit = 0.9; // Punt query to CPU if input mem exceeds % GPU mem
50  std::string config_file = "";
51  std::string ssl_cert_file = ""; // file path to server's certified PKI certificate
52  std::string ssl_key_file = ""; // file path to server's' private PKI key
53  std::string ssl_trust_store = ""; // file path to java jks version of ssl_key_fle
54  std::string ssl_trust_password = "";
55  std::string ssl_keystore = "";
56  std::string ssl_keystore_password = ""; // pass phrae for java jks trust store.
57  std::string ssl_trust_ca_file = "";
59  bool aggregator = false;
61  true; // allow calcite to optimize the relalgebra for a view query
62  size_t calcite_timeout =
63  5000; // calcite send/receive timeout (connect timeout hard coded to 2s)
64  size_t calcite_keepalive = false; // calcite keepalive connection
65  int num_executors = 1;
66 
67  SystemParameters() : cuda_block_size(0), cuda_grid_size(0), calcite_max_mem(1024) {}
68 };
std::string ha_shared_data
bool enable_calcite_view_optimize
std::string config_file
std::string ha_brokers
std::string ssl_trust_ca_file
std::string ssl_trust_store
std::string ha_unique_server_id
std::string ssl_key_file
std::string ssl_keystore_password
std::string ssl_trust_password
std::string ssl_keystore
std::string ha_group_id
std::string ssl_cert_file