//Hold the runtime statistics. E.g. how long was spent in simplification.
//The times don't add up to the runtime, because we allow multiple times to
//be counted simultaneously. For example, the current Transform()s call
-//Simplify_TopLevel, so inside simplify time will be couunted towards both
+//Simplify_TopLevel, so inside simplify time will be counted towards both
//Simplify_TopLevel & Transform.
-// This is intended as a low overhead profiling class. So it can be always run.
+// This is intended as a low overhead profiling class. So runtimes can
+// always be tracked.
#include "RunTimes.h"
#include <cassert>
#include <iostream>
#include <utility>
-
-std::string RunTimes::CategoryNames[] = { "Transforming", "Simplify Top Level", "Parsing","Transforming" , "CNF Conversion", "Bit Blasting", "Solving"};
+// BE VERY CAREFUL> Update the Category Names to match.
+std::string RunTimes::CategoryNames[] = { "Transforming", "Simplifying", "Parsing", "CNF Conversion", "Bit Blasting", "Solving"};
namespace BEEV
{
{
public:
enum Category
- { // BE VERY CAREFUL> Update the Category Names to match.
- Transforming = 0, SimplifyTopLevel, Parsing, TransformFormulaTopLevel, CNFConversion, BitBlasting, Solving
+ {
+ Transforming = 0, SimplifyTopLevel, Parsing, CNFConversion, BitBlasting, Solving
};
+
static std::string CategoryNames[];
typedef std::pair<Category, long> Element;
MTL = ../mtl
CHDRS = $(wildcard *.h) $(wildcard $(MTL)/*.h)
EXEC = minisat
-CFLAGS = -I$(MTL) -Wall -DEXT_HASH_MAP -ffloat-store
+CFLAGS = -I$(MTL) -Wall -DEXT_HASH_MAP -ffloat-store -m32
LFLAGS = -lz
all:
ranlib libminisat.a
cp *.or ../
- cp libminisat.a ../
\ No newline at end of file
+ cp libminisat.a ../
//ChangeActivityLevels_Of_SATVars(newS);
//PrintActivityLevels_Of_SATVars("Before SAT and after initial bias:",newS);
//newS.solve();
+
+ runTimes.start(RunTimes::Solving);
newS.solve();
+ runTimes.stop(RunTimes::Solving);
+
//PrintActivityLevels_Of_SATVars("After SAT",newS);
PrintStats(newS);