3#ifndef TURBO_CONFIG_HPP
4#define TURBO_CONFIG_HPP
6#include "battery/allocator.hpp"
7#include "battery/string.hpp"
14#define SUBPROBLEMS_POWER 15
33template<
class Allocator>
74 #ifdef TURBO_IPC_ABSTRACT_DOMAIN
103 template<
class Alloc>
128 template <
class Alloc2>
154 printf(
"%s -t %" PRIu64
" %s-n %" PRIu64
" %s%s%s%s",
172 printf(
"-arch cpu -p %" PRIu64
" ",
or_nodes);
182 printf(
"-version %s ",
version.data());
185 printf(
"-hardware \'%s\' ",
hardware.data());
220 printf(
"%%%%%%mzn-stat: problem_path=\"%s\"\n",
problem_path.data());
221 printf(
"%%%%%%mzn-stat: solver=\"Turbo\"\n");
222 printf(
"%%%%%%mzn-stat: version=\"%s\"\n", (
version.size() == 0) ?
"1.2.8" :
version.data());
223 printf(
"%%%%%%mzn-stat: hardware=\"%s\"\n", (
hardware.size() == 0) ?
"unspecified" :
hardware.data());
227 printf(
"%%%%%%mzn-stat: wac1_threshold=%" PRIu64
"\n",
wac1_threshold);
229 printf(
"%%%%%%mzn-stat: free_search=\"%s\"\n",
free_search ?
"yes" :
"no");
230 printf(
"%%%%%%mzn-stat: or_nodes=%" PRIu64
"\n",
or_nodes);
231 printf(
"%%%%%%mzn-stat: timeout_ms=%" PRIu64
"\n",
timeout_ms);
233 printf(
"%%%%%%mzn-stat: threads_per_block=%d\n", CUDA_THREADS_PER_BLOCK);
234 printf(
"%%%%%%mzn-stat: stack_size=%" PRIu64
"\n",
stack_kb * 1000);
236 printf(
"%%%%%%mzn-stat: cuda_version=%d\n", CUDA_VERSION);
239 printf(
"%%%%%%mzn-stat: cuda_architecture=%d\n", __CUDA_ARCH__);
253 printf(
"ERROR: Unknown input format for the file %s [supported extension: .xml and .fzn].\n",
problem_path.data());
Arch
Definition config.hpp:16
Configuration< battery::standard_allocator > parse_args(int argc, char **argv)
FixpointKind
Definition config.hpp:23
#define SUBPROBLEMS_POWER
Definition config.hpp:14
InputFormat
Definition config.hpp:28
void usage_and_exit(const std::string &program_name)
size_t stop_after_n_nodes
Definition config.hpp:38
battery::string< allocator_type > problem_path
Definition config.hpp:54
CUDA InputFormat input_format() const
Definition config.hpp:245
bool print_intermediate_solutions
Definition config.hpp:36
bool disable_simplify
Definition config.hpp:45
bool print_ast
Definition config.hpp:42
CUDA void print_mzn_statistics() const
Definition config.hpp:219
Arch arch
Definition config.hpp:51
size_t timeout_ms
Definition config.hpp:47
size_t or_nodes
Definition config.hpp:48
CUDA Configuration< allocator_type > & operator=(const Configuration< Alloc2 > &other)
Definition config.hpp:129
size_t stop_after_n_solutions
Definition config.hpp:37
size_t stack_kb
Definition config.hpp:50
CUDA Configuration(const allocator_type &alloc=allocator_type{})
Definition config.hpp:58
CUDA Configuration(const Configuration< Alloc > &other, const allocator_type &alloc=allocator_type{})
Definition config.hpp:104
Configuration(const Configuration< allocator_type > &)=default
bool force_ternarize
Definition config.hpp:44
bool free_search
Definition config.hpp:39
bool only_global_memory
Definition config.hpp:43
CUDA void print_commandline(const char *program_name)
Definition config.hpp:153
battery::string< allocator_type > hardware
Definition config.hpp:56
bool network_analysis
Definition config.hpp:46
Allocator allocator_type
Definition config.hpp:35
CUDA const char * name_of_fixpoint(FixpointKind fixpoint) const
Definition config.hpp:191
bool print_statistics
Definition config.hpp:40
FixpointKind fixpoint
Definition config.hpp:52
int verbose_solving
Definition config.hpp:41
size_t wac1_threshold
Definition config.hpp:53
CUDA const char * name_of_arch(Arch arch) const
Definition config.hpp:203
Configuration(Configuration< allocator_type > &&)=default
battery::string< allocator_type > version
Definition config.hpp:55
size_t subproblems_power
Definition config.hpp:49