ABC: A System for Sequential Synthesis and Verification
Loading...
Searching...
No Matches
cadical_averages.cpp
Go to the documentation of this file.
1
#include "
global.h
"
2
3
#include "
internal.hpp
"
4
5
ABC_NAMESPACE_IMPL_START
6
7
namespace
CaDiCaL
{
8
9
void
Internal::init_averages
() {
10
11
LOG
(
"initializing averages"
);
12
13
INIT_EMA
(
averages
.current.jump,
opts
.emajump);
14
INIT_EMA
(
averages
.current.level,
opts
.emalevel);
15
INIT_EMA
(
averages
.current.size,
opts
.emasize);
16
17
INIT_EMA
(
averages
.current.glue.fast,
opts
.emagluefast);
18
INIT_EMA
(
averages
.current.glue.slow,
opts
.emaglueslow);
19
20
INIT_EMA
(
averages
.current.decisions,
opts
.emadecisions);
21
22
INIT_EMA
(
averages
.current.trail.fast,
opts
.ematrailfast);
23
INIT_EMA
(
averages
.current.trail.slow,
opts
.ematrailslow);
24
25
CADICAL_assert
(!
averages
.swapped);
26
}
27
28
void
Internal::swap_averages
() {
29
LOG
(
"saving current averages"
);
30
swap (
averages
.current,
averages
.saved);
31
if
(!
averages
.swapped)
32
init_averages
();
33
else
34
LOG
(
"swapping in previously saved averages"
);
35
averages
.swapped++;
36
}
37
38
}
// namespace CaDiCaL
39
40
ABC_NAMESPACE_IMPL_END
ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_START
Definition
abc_namespaces.h:54
ABC_NAMESPACE_IMPL_END
#define ABC_NAMESPACE_IMPL_END
Definition
abc_namespaces.h:55
global.h
CADICAL_assert
#define CADICAL_assert(ignore)
Definition
global.h:14
LOG
#define LOG(...)
Definition
cadical_kitten.c:368
INIT_EMA
#define INIT_EMA(E, WINDOW)
Definition
ema.hpp:61
internal.hpp
CaDiCaL
Definition
arena.hpp:8
CaDiCaL::Internal::swap_averages
void swap_averages()
Definition
cadical_averages.cpp:28
CaDiCaL::Internal::opts
Options opts
Definition
internal.hpp:301
CaDiCaL::Internal::averages
Averages averages
Definition
internal.hpp:284
CaDiCaL::Internal::init_averages
void init_averages()
Definition
cadical_averages.cpp:9
src
sat
cadical
cadical_averages.cpp
Generated by Doxygen 1.13.2 © 2025 EPTansuo. All rights reserved.
鲁ICP备2021046540号