20 #ifndef _libint2_src_bin_libint_tforms_h_ 21 #define _libint2_src_bin_libint_tforms_h_ 44 void accumulate_targets(
bool at) { accumulate_targets_ = at; }
47 void return_targets(
bool rt) { return_targets_ = rt; }
50 void unroll_threshold(
unsigned int ut) { unroll_threshold_ = std::max(ut,1u); }
54 void uncontract(
bool uc) { uncontract_ = uc; }
57 void ignore_missing_prereqs(
bool imp) { ignore_missing_prereqs_ = imp; }
59 bool do_cse()
const {
return do_cse_; }
60 void do_cse(
bool dc) { do_cse_ = dc; }
62 const std::string&
stack_name()
const {
return stack_name_; }
63 void stack_name(
const std::string& stack_name) { stack_name_ = stack_name; }
69 void current_timer(
int ct) { current_timer_ = ct; }
72 bool accumulate_targets_;
74 unsigned int unroll_threshold_;
76 bool ignore_missing_prereqs_;
79 std::string stack_name_;
93 void accumulate_targets_directly(
bool atd) { accumulate_targets_directly_ = atd; }
96 void size_of_target_accum(
const MemoryManager::Size& sota) { size_of_target_accum_ = sota; }
99 bool accumulate_targets_directly_;
100 MemoryManager::Size size_of_target_accum_;
bool condense_expr(unsigned int unroll_threshold, bool vectorize)
need to condense expressions? Makes sense if vectorizing the code or the compiler somehow prefers lon...
Definition: default_params.cc:228
Defaults definitions for various parameters assumed by Libint.
Definition: algebra.cc:23
bool accumulate_targets_directly() const
Are targets computed, then accumulated, or accumulated directly? The latter possible only if all targ...
Definition: graph_registry.h:92
Definition: stdarray.h:18
bool return_targets() const
Return pointers to targets via Libint_t::targets? Default is true.
Definition: graph_registry.h:46
Internal registry of information.
Definition: graph_registry.h:86
bool ignore_missing_prereqs() const
Ignore missing prerequisites – generate the code as is, without generating code for the prerequisite...
Definition: graph_registry.h:56
bool condense_expr() const
Condense expressions? The default is false.
Definition: graph_registry.h:65
const std::string & stack_name() const
Names the primary scratch space for the intermediates. The default is "libint->stack".
Definition: graph_registry.h:62
unsigned int unroll_threshold() const
Will unroll the integral sets with size <= unroll_threshold. Default is 1 (no unrolling).
Definition: graph_registry.h:49
Externally accessible registry of information about a graph.
Definition: graph_registry.h:35
bool do_cse() const
Do Common Subexpression Elimination (CSE)? The default is false.
Definition: graph_registry.h:59
MemoryManager::Size size_of_target_accum() const
The size of the buffer at the beginning of stack allocated to hold accumulated targets.
Definition: graph_registry.h:95
bool uncontract() const
Minimum size when can unroll Will uncontract the integral sets if true.
Definition: graph_registry.h:53
int current_timer() const
if -1, no profiling, otherwise, indicates the current timer
Definition: graph_registry.h:68
bool accumulate_targets() const
Accumulate (true) or assign (false) target vertices? The default is to assign.
Definition: graph_registry.h:43