This commit is contained in:
ihan-o 2023-03-20 21:40:19 +08:00
parent 171baea664
commit b5e59ff1fe
86 changed files with 7245 additions and 1006 deletions

15
.vscode/settings.json vendored
View File

@ -61,6 +61,19 @@
"iomanip": "cpp",
"typeindex": "cpp",
"variant": "cpp",
"csignal": "cpp"
"csignal": "cpp",
"any": "cpp",
"cfenv": "cpp",
"charconv": "cpp",
"codecvt": "cpp",
"csetjmp": "cpp",
"cuchar": "cpp",
"forward_list": "cpp",
"unordered_set": "cpp",
"future": "cpp",
"regex": "cpp",
"scoped_allocator": "cpp",
"shared_mutex": "cpp",
"valarray": "cpp"
}
}

5
configure.txt Normal file
View File

@ -0,0 +1,5 @@
p PRS 4 1
kissat tier1=2 chrono=1
kissat target=0 tier1=3
kissat phase=1
kissat stable=1 target=2 phase=1

BIN
light Executable file

Binary file not shown.

BIN
light-v6-0 Executable file

Binary file not shown.

BIN
light-v6-1 Executable file

Binary file not shown.

BIN
light-v6-2 Executable file

Binary file not shown.

BIN
light-v6-3 Executable file

Binary file not shown.

View File

@ -2,6 +2,7 @@
#include "light.hpp"
#include <unistd.h>
#include <thread>
#include <iostream>
light::light():
finalResult (0),
@ -18,6 +19,50 @@ light::~light() {
workers.clear(true);
}
void light::configure_from_file(const char* file) {
if (!strcmp(file, "")) {
configure_name = new vec<char*>[OPT(threads)];
configure_val = new vec<double>[OPT(threads)];
return;
}
printf("c Get configure file: %s\n", file);
std::ifstream fin(file);
char buf[1000];
fin.getline(buf, 1000);
char *p = buf + 6;
int ws, ss, id = 0;
p = read_int(p, &ws);
p = read_int(p, &ss);
printf("%d %d\n", ws, ss);
opt->set_para("threads", ws);
configure_name = new vec<char*>[ws];
configure_val = new vec<double>[ws];
while (fin.getline(buf, 1000)) {
p = strtok(buf, " ");
printf("%s\n", p);
solver_type.push(0);
while (p) {
p = strtok(NULL, " ");
printf("%s\n", p);
if (!p) break;
int l = strlen(p), pos = 0;
for (int i = 1; i < l; i++)
if (p[i] == '=') pos = i;
char *name = new char[pos];
strncpy(name, p, pos);
printf("%s\n", name);
configure_name[id].push(name);
char *val = p + pos + 1;
double v = atof(val);
printf("%.2lf\n", v);
configure_val[id].push(v);
}
printf("out\n");
id++;
}
}
void light::arg_parse(int argc, char **argv) {
for (int i = 1; i < argc; i++) {
char *arg = argv[i];
@ -33,9 +78,14 @@ void light::arg_parse(int argc, char **argv) {
name[pos - 2] = '\0';
char* val = arg + pos + 1;
if (opt->map_int.count(name)) opt->set_para(name, atoi(val));
opt->set_para(name, atof(val));
else if (opt->map_double.count(name)) opt->set_para(name, atof(val));
else opt->set_para(name, val);
}
opt->sync_paras();
printf("%s\n", OPT(config).c_str());
configure_from_file(OPT(config).c_str());
printf("444\n");
opt->sync_paras();
opt->print_change();
printf("c filename: %s\n", filename);
}

View File

@ -2,6 +2,7 @@
#define _light_hpp_INCLUDED
#include "utils/paras.hpp"
#include "utils/parse.hpp"
#include "preprocess/preprocess.hpp"
#include <atomic>
#include <iostream>
@ -16,6 +17,8 @@ class sharer;
extern std::atomic<int> terminated;
extern std::mutex mtx;
enum Solver_Type {KISSAT};
struct thread_inf{
int id, inf;
bool operator < ( const thread_inf &other ) const
@ -33,8 +36,12 @@ public:
char *filename;
paras *opt;
preprocess *pre;
vec<int> solver_type;
vec<basesolver *> workers;
vec<sharer *> sharers;
vec<char*> *configure_name;
vec<double> *configure_val;
int finalResult;
int winner_period, winner_id;
@ -52,6 +59,7 @@ public:
return winner_period;
}
void arg_parse(int argc, char **argv);
void configure_from_file(const char* file);
void init_workers();
void diversity_workers();
void parse_input();

BIN
light.o Normal file

Binary file not shown.

BIN
main.o Normal file

Binary file not shown.

BIN
preprocess/binary.o Normal file

Binary file not shown.

BIN
preprocess/card.o Normal file

Binary file not shown.

BIN
preprocess/gauss.o Normal file

Binary file not shown.

View File

@ -1,4 +1,5 @@
#include "preprocess.hpp"
#include "../utils/parse.hpp"
preprocess::preprocess():
vars (0),
@ -162,7 +163,9 @@ void preprocess::get_complete_model() {
}
int preprocess::do_preprocess(char* filename) {
readfile(filename);
readfile(filename, &vars, &clauses, clause);
orivars = vars;
oriclauses = clauses;
preprocess_init();
int res = 1;

View File

@ -42,7 +42,7 @@ public:
int vars;
int clauses;
vec<vec<int>> clause, res_clause;
void readfile(const char *file);
// void readfile(const char *file);
void write_cnf();
void release();

BIN
preprocess/preprocess.o Normal file

Binary file not shown.

BIN
preprocess/propagation.o Normal file

Binary file not shown.

BIN
preprocess/resolution.o Normal file

Binary file not shown.

View File

@ -10,7 +10,7 @@ char* worker_sign = "";
std::atomic<int> terminated;
int result = 0;
int winner, winner_conf;
int winner_conf;
vec<int> model;
void * read_worker(void *arg) {
@ -26,13 +26,13 @@ void * solve_worker(void *arg) {
basesolver * sq = (basesolver *)arg;
while (!terminated) {
int res = sq->solve();
if (sq->controller->opt->DPS == 2) {
if (sq->controller->opt->DPS) {
printf("c %d solved, res is %d\n", sq->id, res);
if (res) {
terminated = 1;
result = res;
printf("c %d solved 1\n", sq->id);
sq->set_winner_period();
sq->internal_terminate();
printf("c %d solved 2\n", sq->id);
sq->controller->update_winner(sq->id, sq->period);
printf("c %d solved 3\n", sq->id);
@ -41,20 +41,15 @@ void * solve_worker(void *arg) {
printf("c %d really solved, period is %d\n", sq->id, sq->period);
}
else {
vec<int> seq_model;
if (res == 10) {
sq->get_model(seq_model);
}
if (res && !terminated) {
printf("c result: %d, winner is %d, winner run %d confs\n", res, sq->id, sq->get_conflicts());
terminated = 1;
sq->controller->terminate_workers();
result = res;
winner = sq->id;
sq->controller->update_winner(sq->id, 0);
winner_conf = sq->get_conflicts();
if (res == 10) seq_model.copyTo(model);
if (res == 10) sq->get_model(sq->model);
}
seq_model.clear();
printf("get result %d with res %d\n", sq->id, res);
}
}
@ -109,14 +104,17 @@ void light::diversity_workers() {
else
workers[i]->configure("phase", 1);
}
for (int j = 0; j < configure_name[i].size(); j++) {
workers[i]->configure(configure_name[i][j], configure_val[i][j]);
}
}
}
void light::terminate_workers() {
printf("c controller reach limit\n");
for (int i = 0; i < OPT(threads); i++) {
if (OPT(share) == 1 && OPT(DPS) == 2)
workers[i]->dps_terminate();
if (OPT(share) == 1 && OPT(DPS) == 1)
workers[i]->external_terminate();
else
workers[i]->terminate();
}
@ -155,23 +153,8 @@ int light::solve() {
terminated = 1;
terminate_workers();
}
// if (OPT(reset) && solve_time >= pre_time + intv_time) {
// pre_time = solve_time;
// intv_time += OPT(reset_time);
// sol_thd = 0;
// for (int i = 0; i < OPT(threads); i++) {
// unimprove[sol_thd++] = (thread_inf) {i, workers[i]->get_reset_data()};
// }
// std::sort(unimprove, unimprove + sol_thd);
// printf("Reset thread (%d): ", solve_time);
// for (int i = 0; i < sol_thd / 2; i++) {
// workers[i]->reset();
// printf("%d(%d) ", unimprove[i].id, unimprove[i].inf);
// }
// puts("\n");
// }
}
// printf("ending solve\n");
printf("ending solve\n");
// terminate_workers(); //important, need combine nps/dps !!!!!!!!!!!!!!!!
for (int i = 0; i < OPT(threads); i++) {

BIN
solve.o Normal file

Binary file not shown.

View File

@ -1,5 +1,5 @@
#define VERSION "1.0.3"
#define COMPILER "gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0 -W -Wall -O3 -DNEMBEDDED -DNDEBUG -DNMETRICS -DNSTATISTICS"
#define ID "79d8d8f20465e71fd2b0f193b468898cd803a59a"
#define BUILD "Mon Mar 13 18:39:10 CST 2023 Linux seed1 5.4.0-139-generic x86_64"
#define BUILD "Mon Mar 20 17:56:57 CST 2023 Linux seed1 5.4.0-139-generic x86_64"
#define DIR "/home/chenzh/solvers/Light/solvers/kissat-inc/build"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -53,6 +53,33 @@ rescale_scores (kissat * solver, heap * scores)
GET (rescaled), "rescaled by factor %g", factor);
}
void kissat_init_shuffle(kissat * solver, int maxvar) {
int seed = GET_OPTION(order_reset);
if (seed != -1)
{
// printf("c init shuffle %d\n", seed);
int *id;
id = (int *)malloc(sizeof(int) * (maxvar + 1));
for (int i = 1; i <= maxvar; i++)
id[i] = i;
for (int i = 1; i <= maxvar; i++)
{
int j = (rand_r(&seed) % maxvar) + 1;
int x = id[i];
id[i] = id[j];
id[j] = x;
}
for (int i = 1; i <= maxvar; i++)
kissat_activate_literal(solver, kissat_import_literal(solver, id[i]));
free(id);
}
else
{
for (int i = 1; i <= maxvar; i++)
kissat_import_literal(solver, i);
}
}
void kissat_shuffle_score(kissat * solver) {
heap *scores = &solver->scores;
heap *scores_chb = &solver->scores_chb;

View File

@ -5,6 +5,7 @@ struct kissat;
void kissat_bump_variables (struct kissat *);
void kissat_bump_chb (struct kissat *, unsigned idx, double multiplier);
void kissat_init_shuffle (struct kissat *, int maxvar);
void kissat_decay_chb (struct kissat *);
void kissat_shuffle_score(struct kissat *);
void kissat_update_conflicted_chb (struct kissat *);

View File

@ -18,17 +18,16 @@
#include <math.h>
static bool
really_eliminate (kissat * solver)
really_eliminate(kissat *solver)
{
if (!GET_OPTION (really))
if (!GET_OPTION(really))
return true;
const uint64_t limit = 2 * CLAUSES;
statistics *statistics = &solver->statistics;
return limit < statistics->search_ticks + GET_OPTION (eliminatemineff);
return limit < statistics->search_ticks + GET_OPTION(eliminatemineff);
}
bool
kissat_eliminating (kissat * solver)
bool kissat_eliminating(kissat *solver)
{
if (!solver->enabled.eliminate)
return false;
@ -40,7 +39,7 @@ kissat_eliminating (kissat * solver)
limits *limits = &solver->limits;
if (limits->eliminate.conflicts > statistics->conflicts)
return false;
if (!really_eliminate (solver))
if (!really_eliminate(solver))
return false;
if (limits->eliminate.variables.added < statistics->variables_added)
return true;
@ -50,565 +49,567 @@ kissat_eliminating (kissat * solver)
}
static inline void
update_after_adding_variable (kissat * solver, heap * schedule, unsigned idx)
update_after_adding_variable(kissat *solver, heap *schedule, unsigned idx)
{
assert (schedule->size);
kissat_update_variable_score (solver, schedule, idx);
assert(schedule->size);
kissat_update_variable_score(solver, schedule, idx);
}
static inline void
update_after_adding_stack (kissat * solver, unsigneds * stack)
update_after_adding_stack(kissat *solver, unsigneds *stack)
{
assert (!solver->probing);
assert(!solver->probing);
heap *schedule = &solver->schedule;
if (!schedule->size)
return;
for (all_stack (unsigned, lit, *stack))
update_after_adding_variable (solver, schedule, IDX (lit));
for (all_stack(unsigned, lit, *stack))
update_after_adding_variable(solver, schedule, IDX(lit));
}
static inline void
update_after_removing_variable (kissat * solver, unsigned idx)
update_after_removing_variable(kissat *solver, unsigned idx)
{
assert (!solver->probing);
assert(!solver->probing);
heap *schedule = &solver->schedule;
if (!schedule->size)
return;
kissat_update_variable_score (solver, schedule, idx);
if (!kissat_heap_contains (schedule, idx))
kissat_push_heap (solver, schedule, idx);
kissat_update_variable_score(solver, schedule, idx);
if (!kissat_heap_contains(schedule, idx))
kissat_push_heap(solver, schedule, idx);
}
void
kissat_update_after_removing_variable (kissat * solver, unsigned idx)
void kissat_update_after_removing_variable(kissat *solver, unsigned idx)
{
update_after_removing_variable (solver, idx);
update_after_removing_variable(solver, idx);
}
static inline void
update_after_removing_clause (kissat * solver, clause * c, unsigned except)
update_after_removing_clause(kissat *solver, clause *c, unsigned except)
{
assert (c->garbage);
for (all_literals_in_clause (lit, c))
assert(c->garbage);
for (all_literals_in_clause(lit, c))
if (lit != except)
update_after_removing_variable (solver, IDX (lit));
update_after_removing_variable(solver, IDX(lit));
}
void
kissat_update_after_removing_clause (kissat * solver,
clause * c, unsigned except)
void kissat_update_after_removing_clause(kissat *solver,
clause *c, unsigned except)
{
update_after_removing_clause (solver, c, except);
update_after_removing_clause(solver, c, except);
}
void
kissat_eliminate_binary (kissat * solver, unsigned lit, unsigned other)
void kissat_eliminate_binary(kissat *solver, unsigned lit, unsigned other)
{
kissat_disconnect_binary (solver, other, lit);
kissat_delete_binary (solver, false, false, lit, other);
update_after_removing_variable (solver, IDX (other));
kissat_disconnect_binary(solver, other, lit);
kissat_delete_binary(solver, false, false, lit, other);
update_after_removing_variable(solver, IDX(other));
}
void
kissat_eliminate_clause (kissat * solver, clause * c, unsigned lit)
void kissat_eliminate_clause(kissat *solver, clause *c, unsigned lit)
{
kissat_mark_clause_as_garbage (solver, c);
update_after_removing_clause (solver, c, lit);
kissat_mark_clause_as_garbage(solver, c);
update_after_removing_clause(solver, c, lit);
}
static size_t
schedule_variables (kissat * solver)
schedule_variables(kissat *solver)
{
LOG ("initializing variable schedule");
assert (!solver->schedule.size);
kissat_resize_heap (solver, &solver->schedule, solver->vars);
LOG("initializing variable schedule");
assert(!solver->schedule.size);
kissat_resize_heap(solver, &solver->schedule, solver->vars);
flags *all_flags = solver->flags;
for (all_variables (idx))
{
flags *flags = all_flags + idx;
if (!flags->active)
continue;
if (!flags->eliminate)
continue;
LOG ("scheduling variable %u", idx);
update_after_removing_variable (solver, idx);
}
size_t scheduled = kissat_size_heap (&solver->schedule);
for (all_variables(idx))
{
flags *flags = all_flags + idx;
if (!flags->active)
continue;
if (!flags->eliminate)
continue;
LOG("scheduling variable %u", idx);
update_after_removing_variable(solver, idx);
}
size_t scheduled = kissat_size_heap(&solver->schedule);
#ifndef QUIET
size_t active = solver->active;
kissat_phase (solver, "eliminate", GET (eliminations),
"scheduled %zu variables %.0f%%",
scheduled, kissat_percent (scheduled, active));
kissat_phase(solver, "eliminate", GET(eliminations),
"scheduled %zu variables %.0f%%",
scheduled, kissat_percent(scheduled, active));
#endif
return scheduled;
}
void
kissat_flush_units_while_connected (kissat * solver)
void kissat_flush_units_while_connected(kissat *solver)
{
unsigned propagated = solver->propagated;
size_t units = SIZE_STACK (solver->trail) - propagated;
size_t units = SIZE_STACK(solver->trail) - propagated;
if (!units)
return;
#ifdef LOGGING
LOG ("propagating and flushing %zu units", units);
LOG("propagating and flushing %zu units", units);
#endif
if (!kissat_dense_propagate (solver,
NO_DENSE_PROPAGATION_LIMIT, INVALID_IDX))
{
assert (!solver->inconsistent);
LOG ("inconsistent root propagation of resolved units");
CHECK_AND_ADD_EMPTY ();
ADD_EMPTY_TO_PROOF ();
solver->inconsistent = true;
return;
}
if (!kissat_dense_propagate(solver,
NO_DENSE_PROPAGATION_LIMIT, INVALID_IDX))
{
assert(!solver->inconsistent);
LOG("inconsistent root propagation of resolved units");
CHECK_AND_ADD_EMPTY();
ADD_EMPTY_TO_PROOF();
solver->inconsistent = true;
return;
}
LOG ("marking and flushing unit satisfied clauses");
LOG("marking and flushing unit satisfied clauses");
const value *values = solver->values;
while (propagated < solver->propagated)
{
const unsigned unit = PEEK_STACK(solver->trail, propagated);
propagated++;
assert(values[unit] > 0);
watches *unit_watches = &WATCHES(unit);
watch *begin = BEGIN_WATCHES(*unit_watches), *q = begin;
const watch *end = END_WATCHES(*unit_watches), *p = q;
if (begin == end)
continue;
LOG("marking %s satisfied clauses as garbage", LOGLIT(unit));
while (p != end)
{
const unsigned unit = PEEK_STACK (solver->trail, propagated);
propagated++;
assert (values[unit] > 0);
watches *unit_watches = &WATCHES (unit);
watch *begin = BEGIN_WATCHES (*unit_watches), *q = begin;
const watch *end = END_WATCHES (*unit_watches), *p = q;
if (begin == end)
continue;
LOG ("marking %s satisfied clauses as garbage", LOGLIT (unit));
while (p != end)
{
const watch watch = *q++ = *p++;
if (watch.type.binary)
{
const unsigned other = watch.binary.lit;
if (!values[other])
update_after_removing_variable (solver, IDX (other));
}
else
{
const reference ref = watch.large.ref;
clause *c = kissat_dereference_clause (solver, ref);
if (!c->garbage)
kissat_eliminate_clause (solver, c, unit);
assert (c->garbage);
q--;
}
}
assert (q <= end);
size_t flushed = end - q;
if (!flushed)
continue;
LOG ("flushing %zu references satisfied by %s", flushed, LOGLIT (unit));
SET_END_OF_WATCHES (*unit_watches, q);
const watch watch = *q++ = *p++;
if (watch.type.binary)
{
const unsigned other = watch.binary.lit;
if (!values[other])
update_after_removing_variable(solver, IDX(other));
}
else
{
const reference ref = watch.large.ref;
clause *c = kissat_dereference_clause(solver, ref);
if (!c->garbage)
kissat_eliminate_clause(solver, c, unit);
assert(c->garbage);
q--;
}
}
assert(q <= end);
size_t flushed = end - q;
if (!flushed)
continue;
LOG("flushing %zu references satisfied by %s", flushed, LOGLIT(unit));
SET_END_OF_WATCHES(*unit_watches, q);
}
}
static void
connect_resolvents (kissat * solver)
connect_resolvents(kissat *solver)
{
bool backward = GET_OPTION (backward);
bool backward = GET_OPTION(backward);
const value *values = solver->values;
assert (EMPTY_STACK (solver->clause.lits));
assert(EMPTY_STACK(solver->clause.lits));
uint64_t added = 0;
bool satisfied = false;
for (all_stack (unsigned, other, solver->resolvents))
for (all_stack(unsigned, other, solver->resolvents))
{
if (other == INVALID_LIT)
{
if (other == INVALID_LIT)
{
if (satisfied)
satisfied = false;
else if (kissat_forward_subsume_temporary (solver))
LOGTMP ("temporary forward subsumed");
else
{
size_t size = SIZE_STACK (solver->clause.lits);
if (!size)
{
assert (!solver->inconsistent);
LOG ("resolved empty clause");
CHECK_AND_ADD_EMPTY ();
ADD_EMPTY_TO_PROOF ();
solver->inconsistent = true;
break;
}
else if (size == 1)
{
const unsigned unit = PEEK_STACK (solver->clause.lits, 0);
LOG ("resolved unit clause %s", LOGLIT (unit));
kissat_assign_unit (solver, unit);
CHECK_AND_ADD_UNIT (unit);
ADD_UNIT_TO_PROOF (unit);
}
else
{
assert (size > 1);
reference ref = kissat_new_irredundant_clause (solver);
update_after_adding_stack (solver, &solver->clause.lits);
added++;
if (satisfied)
satisfied = false;
else if (kissat_forward_subsume_temporary(solver))
LOGTMP("temporary forward subsumed");
else
{
size_t size = SIZE_STACK(solver->clause.lits);
if (!size)
{
assert(!solver->inconsistent);
LOG("resolved empty clause");
CHECK_AND_ADD_EMPTY();
ADD_EMPTY_TO_PROOF();
solver->inconsistent = true;
break;
}
else if (size == 1)
{
const unsigned unit = PEEK_STACK(solver->clause.lits, 0);
LOG("resolved unit clause %s", LOGLIT(unit));
kissat_assign_unit(solver, unit);
CHECK_AND_ADD_UNIT(unit);
ADD_UNIT_TO_PROOF(unit);
}
else
{
assert(size > 1);
reference ref = kissat_new_irredundant_clause(solver);
update_after_adding_stack(solver, &solver->clause.lits);
added++;
if (backward)
backward =
kissat_backward_subsume_temporary (solver, ref);
}
}
CLEAR_STACK (solver->clause.lits);
}
else if (!satisfied)
{
const value value = values[other];
if (value > 0)
{
LOGTMP ("now %s satisfied resolvent", LOGLIT (other));
satisfied = true;
}
else if (value < 0)
LOG2 ("dropping now falsified literal %s", LOGLIT (other));
else
PUSH_STACK (solver->clause.lits, other);
}
if (backward)
backward =
kissat_backward_subsume_temporary(solver, ref);
}
}
CLEAR_STACK(solver->clause.lits);
}
LOG ("added %" PRIu64 " new clauses", added);
CLEAR_STACK (solver->resolvents);
else if (!satisfied)
{
const value value = values[other];
if (value > 0)
{
LOGTMP("now %s satisfied resolvent", LOGLIT(other));
satisfied = true;
}
else if (value < 0)
LOG2("dropping now falsified literal %s", LOGLIT(other));
else
PUSH_STACK(solver->clause.lits, other);
}
}
LOG("added %" PRIu64 " new clauses", added);
CLEAR_STACK(solver->resolvents);
}
static void
weaken_clauses (kissat * solver, unsigned lit)
weaken_clauses(kissat *solver, unsigned lit)
{
const unsigned not_lit = NOT (lit);
const unsigned not_lit = NOT(lit);
const value *values = solver->values;
assert (!values[lit]);
assert(!values[lit]);
watches *pos_watches = &WATCHES (lit);
watches *pos_watches = &WATCHES(lit);
for (all_binary_large_watches (watch, *pos_watches))
for (all_binary_large_watches(watch, *pos_watches))
{
if (watch.type.binary)
{
if (watch.type.binary)
{
const unsigned other = watch.binary.lit;
const value value = values[other];
if (value <= 0)
kissat_weaken_binary (solver, lit, other);
assert (!watch.binary.redundant);
kissat_eliminate_binary (solver, lit, other);
}
else
{
const reference ref = watch.large.ref;
clause *c = kissat_dereference_clause (solver, ref);
if (c->garbage)
continue;
bool satisfied = false;
for (all_literals_in_clause (other, c))
{
const value value = values[other];
if (value <= 0)
continue;
satisfied = true;
break;
}
if (!satisfied)
kissat_weaken_clause (solver, lit, c);
LOGCLS (c, "removing %s", LOGLIT (lit));
kissat_eliminate_clause (solver, c, lit);
solver->dps_ticks++;
}
const unsigned other = watch.binary.lit;
const value value = values[other];
if (value <= 0)
kissat_weaken_binary(solver, lit, other);
assert(!watch.binary.redundant);
kissat_eliminate_binary(solver, lit, other);
}
RELEASE_WATCHES (*pos_watches);
watches *neg_watches = &WATCHES (not_lit);
bool optimize = !GET_OPTION (incremental);
for (all_binary_large_watches (watch, *neg_watches))
else
{
if (watch.type.binary)
{
const unsigned other = watch.binary.lit;
assert (!watch.binary.redundant);
const value value = values[other];
if (!optimize && value <= 0)
kissat_weaken_binary (solver, not_lit, other);
kissat_eliminate_binary (solver, not_lit, other);
}
else
{
const reference ref = watch.large.ref;
clause *d = kissat_dereference_clause (solver, ref);
if (d->garbage)
continue;
bool satisfied = false;
for (all_literals_in_clause (other, d))
{
const value value = values[other];
if (value <= 0)
continue;
satisfied = true;
break;
}
if (!optimize && !satisfied)
kissat_weaken_clause (solver, not_lit, d);
LOGCLS (d, "removing %s", LOGLIT (not_lit));
kissat_eliminate_clause (solver, d, not_lit);
solver->dps_ticks++;
}
const reference ref = watch.large.ref;
clause *c = kissat_dereference_clause(solver, ref);
if (c->garbage)
continue;
bool satisfied = false;
for (all_literals_in_clause(other, c))
{
const value value = values[other];
if (value <= 0)
continue;
satisfied = true;
break;
}
if (!satisfied)
kissat_weaken_clause(solver, lit, c);
LOGCLS(c, "removing %s", LOGLIT(lit));
kissat_eliminate_clause(solver, c, lit);
solver->dps_ticks++;
}
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
RELEASE_WATCHES(*pos_watches);
watches *neg_watches = &WATCHES(not_lit);
bool optimize = !GET_OPTION(incremental);
for (all_binary_large_watches(watch, *neg_watches))
{
if (watch.type.binary)
{
const unsigned other = watch.binary.lit;
assert(!watch.binary.redundant);
const value value = values[other];
if (!optimize && value <= 0)
kissat_weaken_binary(solver, not_lit, other);
kissat_eliminate_binary(solver, not_lit, other);
}
else
{
const reference ref = watch.large.ref;
clause *d = kissat_dereference_clause(solver, ref);
if (d->garbage)
continue;
bool satisfied = false;
for (all_literals_in_clause(other, d))
{
const value value = values[other];
if (value <= 0)
continue;
satisfied = true;
break;
}
if (!optimize && !satisfied)
kissat_weaken_clause(solver, not_lit, d);
LOGCLS(d, "removing %s", LOGLIT(not_lit));
kissat_eliminate_clause(solver, d, not_lit);
solver->dps_ticks++;
}
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
if (optimize && neg_watches->size)
kissat_weaken_unit (solver, not_lit);
RELEASE_WATCHES (*neg_watches);
kissat_weaken_unit(solver, not_lit);
RELEASE_WATCHES(*neg_watches);
kissat_flush_units_while_connected (solver);
kissat_flush_units_while_connected(solver);
}
static void
try_to_eliminate_all_variables_again (kissat * solver)
try_to_eliminate_all_variables_again(kissat *solver)
{
LOG ("trying to elimination all variables again");
LOG("trying to elimination all variables again");
flags *all_flags = solver->flags;
for (all_variables (idx))
{
flags *flags = all_flags + idx;
flags->eliminate = true;
}
for (all_variables(idx))
{
flags *flags = all_flags + idx;
flags->eliminate = true;
}
solver->limits.eliminate.variables.removed = 0;
}
static void
set_next_elimination_bound (kissat * solver, bool complete)
set_next_elimination_bound(kissat *solver, bool complete)
{
const unsigned max_bound = GET_OPTION (eliminatebound);
const unsigned max_bound = GET_OPTION(eliminatebound);
const unsigned current_bound = solver->bounds.eliminate.additional_clauses;
assert (current_bound <= max_bound);
assert(current_bound <= max_bound);
if (complete)
{
if (current_bound == max_bound)
{
if (current_bound == max_bound)
{
kissat_phase (solver, "eliminate", GET (eliminations),
"completed maximum elimination bound %u",
current_bound);
limits *limits = &solver->limits;
statistics *statistics = &solver->statistics;
limits->eliminate.variables.added = statistics->variables_added;
limits->eliminate.variables.removed = statistics->variables_removed;
kissat_phase(solver, "eliminate", GET(eliminations),
"completed maximum elimination bound %u",
current_bound);
limits *limits = &solver->limits;
statistics *statistics = &solver->statistics;
limits->eliminate.variables.added = statistics->variables_added;
limits->eliminate.variables.removed = statistics->variables_removed;
#ifndef QUIET
bool first = !solver->bounds.eliminate.max_bound_completed++;
REPORT (!first, first ? '!' : ':');
bool first = !solver->bounds.eliminate.max_bound_completed++;
REPORT(!first, first ? '!' : ':');
#endif
}
else
{
const unsigned next_bound =
!current_bound ? 1 : MIN (2 * current_bound, max_bound);
kissat_phase (solver, "eliminate", GET (eliminations),
"completed elimination bound %u next %u",
current_bound, next_bound);
solver->bounds.eliminate.additional_clauses = next_bound;
try_to_eliminate_all_variables_again (solver);
REPORT (0, '^');
}
}
else
{
const unsigned next_bound =
!current_bound ? 1 : MIN(2 * current_bound, max_bound);
kissat_phase(solver, "eliminate", GET(eliminations),
"completed elimination bound %u next %u",
current_bound, next_bound);
solver->bounds.eliminate.additional_clauses = next_bound;
try_to_eliminate_all_variables_again(solver);
REPORT(0, '^');
}
}
else
kissat_phase (solver, "eliminate", GET (eliminations),
"incomplete elimination bound %u", current_bound);
kissat_phase(solver, "eliminate", GET(eliminations),
"incomplete elimination bound %u", current_bound);
}
static bool
can_eliminate_variable (kissat * solver, unsigned idx)
can_eliminate_variable(kissat *solver, unsigned idx)
{
flags *flags = FLAGS (idx);
flags *flags = FLAGS(idx);
if (!flags->active)
return false;
if (!flags->eliminate)
return false;
LOG ("next variable elimination candidate %u", idx);
LOG("next variable elimination candidate %u", idx);
LOG ("marking variable %u as not removed", idx);
LOG("marking variable %u as not removed", idx);
flags->eliminate = false;
return true;
}
static bool
eliminate_variable (kissat * solver, unsigned idx)
eliminate_variable(kissat *solver, unsigned idx)
{
assert (!solver->inconsistent);
if (!can_eliminate_variable (solver, idx))
assert(!solver->inconsistent);
if (!can_eliminate_variable(solver, idx))
return false;
unsigned lit;
if (!kissat_generate_resolvents (solver, idx, &lit))
if (!kissat_generate_resolvents(solver, idx, &lit))
return false;
connect_resolvents (solver);
connect_resolvents(solver);
if (!solver->inconsistent)
weaken_clauses (solver, lit);
INC (eliminated);
kissat_mark_eliminated_variable (solver, idx);
weaken_clauses(solver, lit);
INC(eliminated);
kissat_mark_eliminated_variable(solver, idx);
if (solver->gate_eliminated)
{
INC (gates);
{
INC(gates);
#ifndef NMETRICS
assert (*solver->gate_eliminated < UINT64_MAX);
*solver->gate_eliminated += 1;
assert(*solver->gate_eliminated < UINT64_MAX);
*solver->gate_eliminated += 1;
#endif
}
}
return true;
}
static void
eliminate_variables (kissat * solver)
eliminate_variables(kissat *solver)
{
kissat_very_verbose (solver,
"trying to eliminate variables with bound %u",
solver->bounds.eliminate.additional_clauses);
kissat_very_verbose(solver,
"trying to eliminate variables with bound %u",
solver->bounds.eliminate.additional_clauses);
unsigned eliminated = 0;
const unsigned active = solver->active;
SET_EFFICIENCY_BOUND (resolution_limit, eliminate,
resolutions, search_ticks,
2 * CLAUSES + kissat_nlogn (active));
SET_EFFICIENCY_BOUND(resolution_limit, eliminate,
resolutions, search_ticks,
2 * CLAUSES + kissat_nlogn(active));
bool complete = false;
int round = 0;
const bool forward = GET_OPTION (forward);
const bool forward = GET_OPTION(forward);
for (;;)
{
if (forward)
{
if (forward)
{
unsigned propagated = solver->propagated;
kissat_forward_subsume_during_elimination (solver);
if (solver->inconsistent)
break;
kissat_flush_large_connected (solver);
kissat_connect_irredundant_large_clauses (solver);
solver->propagated = propagated;
kissat_flush_units_while_connected (solver);
if (solver->inconsistent)
break;
}
else
kissat_connect_irredundant_large_clauses (solver);
if (!schedule_variables (solver))
{
kissat_release_heap (solver, &solver->schedule);
complete = true;
break;
}
round++;
#ifndef QUIET
LOG ("entering variable elimination round %d", round);
const unsigned before = eliminated;
#endif
while (!kissat_empty_heap (&solver->schedule))
{
if (solver->statistics.resolutions > resolution_limit)
break;
if (TERMINATED (5))
break;
unsigned idx = kissat_max_heap (&solver->schedule);
kissat_pop_heap (solver, &solver->schedule, idx);
if (eliminate_variable (solver, idx))
eliminated++;
if (solver->inconsistent)
break;
}
if (!solver->inconsistent)
{
kissat_flush_large_connected (solver);
kissat_dense_collect (solver);
}
REPORT (before == eliminated, 'e');
unsigned propagated = solver->propagated;
kissat_forward_subsume_during_elimination(solver);
if (solver->inconsistent)
break;
kissat_release_heap (solver, &solver->schedule);
if (round == GET_OPTION (eliminaterounds))
break;
if (solver->statistics.resolutions > resolution_limit)
break;
if (TERMINATED (6))
break;
break;
kissat_flush_large_connected(solver);
kissat_connect_irredundant_large_clauses(solver);
solver->propagated = propagated;
kissat_flush_units_while_connected(solver);
if (solver->inconsistent)
break;
}
kissat_phase (solver, "eliminate", GET (eliminations),
"eliminated %u variables %.0f%% out of %u in %zu rounds",
eliminated, kissat_percent (eliminated, active), active,
round);
else
kissat_connect_irredundant_large_clauses(solver);
if (!schedule_variables(solver))
{
kissat_release_heap(solver, &solver->schedule);
complete = true;
break;
}
round++;
#ifndef QUIET
LOG("entering variable elimination round %d", round);
const unsigned before = eliminated;
#endif
while (!kissat_empty_heap(&solver->schedule))
{
if (solver->statistics.resolutions > resolution_limit)
break;
if (TERMINATED(5))
break;
unsigned idx = kissat_max_heap(&solver->schedule);
kissat_pop_heap(solver, &solver->schedule, idx);
if (eliminate_variable(solver, idx))
eliminated++;
if (solver->inconsistent)
break;
}
if (!solver->inconsistent)
{
kissat_flush_large_connected(solver);
kissat_dense_collect(solver);
}
REPORT(before == eliminated, 'e');
if (solver->inconsistent)
break;
kissat_release_heap(solver, &solver->schedule);
if (round == GET_OPTION(eliminaterounds))
break;
if (solver->statistics.resolutions > resolution_limit)
break;
if (TERMINATED(6))
break;
}
kissat_phase(solver, "eliminate", GET(eliminations),
"eliminated %u variables %.0f%% out of %u in %zu rounds",
eliminated, kissat_percent(eliminated, active), active,
round);
if (!solver->inconsistent)
set_next_elimination_bound (solver, complete);
set_next_elimination_bound(solver, complete);
}
static void
setup_elim_bounds (kissat * solver)
setup_elim_bounds(kissat *solver)
{
solver->bounds.eliminate.clause_size =
SCALE_LIMIT (eliminations, eliminateclslim);
SCALE_LIMIT(eliminations, eliminateclslim);
solver->bounds.eliminate.occurrences =
SCALE_LIMIT (eliminations, eliminateocclim);
SCALE_LIMIT(eliminations, eliminateocclim);
kissat_phase (solver, "eliminate", GET (eliminations),
"occurrence limit %u and clause limit %u",
solver->bounds.eliminate.occurrences,
solver->bounds.eliminate.clause_size);
kissat_phase(solver, "eliminate", GET(eliminations),
"occurrence limit %u and clause limit %u",
solver->bounds.eliminate.occurrences,
solver->bounds.eliminate.clause_size);
solver->bounds.subsume.clause_size =
SCALE_LIMIT (eliminations, subsumeclslim);
SCALE_LIMIT(eliminations, subsumeclslim);
solver->bounds.subsume.occurrences =
SCALE_LIMIT (eliminations, subsumeocclim);
SCALE_LIMIT(eliminations, subsumeocclim);
kissat_phase (solver, "subsume", GET (eliminations),
"occurrence limit %u clause limit %u",
solver->bounds.subsume.occurrences,
solver->bounds.subsume.clause_size);
kissat_phase(solver, "subsume", GET(eliminations),
"occurrence limit %u clause limit %u",
solver->bounds.subsume.occurrences,
solver->bounds.subsume.clause_size);
solver->bounds.xork.clause_size =
log (MAX (solver->bounds.eliminate.occurrences, 1)) / log (2.0) + 0.5;
if (solver->bounds.xork.clause_size > (unsigned) GET_OPTION (xorsclslim))
solver->bounds.xork.clause_size = (unsigned) GET_OPTION (xorsclslim);
assert (solver->bounds.xork.clause_size < 32);
log(MAX(solver->bounds.eliminate.occurrences, 1)) / log(2.0) + 0.5;
if (solver->bounds.xork.clause_size > (unsigned)GET_OPTION(xorsclslim))
solver->bounds.xork.clause_size = (unsigned)GET_OPTION(xorsclslim);
assert(solver->bounds.xork.clause_size < 32);
LOG ("maximum XOR base clause size %u", solver->bounds.xork.clause_size);
LOG("maximum XOR base clause size %u", solver->bounds.xork.clause_size);
}
static void
eliminate (kissat * solver)
eliminate(kissat *solver)
{
RETURN_IF_DELAYED (eliminate);
kissat_backtrack_propagate_and_flush_trail (solver);
assert (!solver->inconsistent);
STOP_SEARCH_AND_START_SIMPLIFIER (eliminate);
kissat_phase (solver, "eliminate", GET (eliminations),
"elimination limit of %" PRIu64 " conflicts hit",
solver->limits.eliminate.conflicts);
const changes before = kissat_changes (solver);
setup_elim_bounds (solver);
RETURN_IF_DELAYED(eliminate);
kissat_backtrack_propagate_and_flush_trail(solver);
assert(!solver->inconsistent);
STOP_SEARCH_AND_START_SIMPLIFIER(eliminate);
kissat_phase(solver, "eliminate", GET(eliminations),
"elimination limit of %" PRIu64 " conflicts hit",
solver->limits.eliminate.conflicts);
const changes before = kissat_changes(solver);
setup_elim_bounds(solver);
litwatches saved;
INIT_STACK (saved);
kissat_enter_dense_mode (solver, 0, &saved);
eliminate_variables (solver);
kissat_resume_sparse_mode (solver, true, 0, &saved);
RELEASE_STACK (saved);
kissat_check_statistics (solver);
const changes after = kissat_changes (solver);
const bool changed = kissat_changed (before, after);
UPDATE_DELAY (changed, eliminate);
STOP_SIMPLIFIER_AND_RESUME_SEARCH (eliminate);
INIT_STACK(saved);
kissat_enter_dense_mode(solver, 0, &saved);
eliminate_variables(solver);
kissat_resume_sparse_mode(solver, true, 0, &saved);
RELEASE_STACK(saved);
kissat_check_statistics(solver);
const changes after = kissat_changes(solver);
const bool changed = kissat_changed(before, after);
UPDATE_DELAY(changed, eliminate);
STOP_SIMPLIFIER_AND_RESUME_SEARCH(eliminate);
}
int
kissat_eliminate (kissat * solver)
int kissat_eliminate(kissat *solver)
{
assert (!solver->inconsistent);
INC (eliminations);
eliminate (solver);
UPDATE_CONFLICT_LIMIT (eliminate, eliminations, NLOGNLOGN, true);
assert(!solver->inconsistent);
INC(eliminations);
eliminate(solver);
UPDATE_CONFLICT_LIMIT(eliminate, eliminations, NLOGNLOGN, true);
solver->waiting.eliminate.reduce = solver->statistics.reductions + 1;
return solver->inconsistent ? 20 : 0;
}

View File

@ -175,6 +175,10 @@ find_forward_subsumption_candidates (kissat * solver, references * candidates)
const unsigned ref = kissat_reference_clause (solver, c);
PUSH_STACK (*candidates, ref);
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
if (left_over_from_last_subsumption_round)
return;
@ -332,7 +336,10 @@ forward_literal (kissat * solver, unsigned lit, bool binaries,
}
}
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
while (p != end)
*q++ = *p++;
@ -621,6 +628,10 @@ forward_subsume_all_clauses (kissat * solver)
if (!c->garbage)
connect_subsuming (solver, occlim, c);
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
}
#ifndef QUIET
if (subsumed)
@ -669,6 +680,10 @@ forward_subsume_all_clauses (kissat * solver)
flags[idx].subsume = saved[idx].subsume;
}
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
#ifndef QUIET
if (remain)
kissat_phase (solver, "forward", GET (forward_subsumptions),

View File

@ -9,6 +9,7 @@
#include "require.h"
#include "resize.h"
#include "resources.h"
#include "bump.h"
#include <assert.h>
#include <inttypes.h>
@ -34,8 +35,8 @@ kissat_init (void)
kissat_init_queue (&solver->queue);
kissat_push_frame (solver, INVALID_LIT);
solver->nconflict = 0;
solver->share_dps = 0;
solver->share_dps_period = 10000;
solver->dps = 0;
solver->dps_period = 10000;
solver->watching = true;
solver->conflict.size = 2;
solver->conflict.keep = true;
@ -194,32 +195,7 @@ kissat_reserve (kissat * solver, int max_var)
kissat_require (max_var <= EXTERNAL_MAX_VAR,
"invalid maximum variable argument '%d'", max_var);
kissat_increase_size (solver, (unsigned) max_var);
int seed = GET_OPTION(order_reset);
if (seed != -1)
{
// srand(solver->order_reset);
int *id;
id = (int *)malloc(sizeof(int) * (max_var + 1));
for (int i = 1; i <= max_var; i++)
id[i] = i;
for (int i = 1; i <= max_var; i++)
{
int j = (rand_r(&seed) % max_var) + 1;
int x = id[i];
id[i] = id[j];
id[j] = x;
}
// printf("c mxavar is %d, first is %d, tenth is %d\n", max_var, id[1], id[10]);
for (int i = 1; i <= max_var; i++)
kissat_activate_literal(solver, kissat_import_literal(solver, id[i]));
free(id);
}
else
{
for (int i = 1; i <= max_var; i++)
kissat_import_literal(solver, i);
}
kissat_init_shuffle(solver, max_var);
}
int

View File

@ -77,10 +77,10 @@ struct kissat
int (* cbkImportUnit) (void *);
int (* cbkImportClause)(void *, int *, cvec *);
void (* cbkExportClause)(void *, int, cvec *);
int (* cbkWaitSharing) (void *);
void (* cbkFreeClause) (void *); // callback for clause learning
int share_dps;
int share_dps_period;
void (* cbk_start_new_period) (void *);
void (* cbk_free_clauses) (void *); // callback for clause learning
int dps;
int dps_period;
cvec *importedClause;
cvec *exportedClause;
void *issuer;

View File

@ -108,7 +108,10 @@ non_watching_propagate_literal (kissat * solver,
ADD (ticks, ticks);
ADD (dense_ticks, ticks);
solver->dps_ticks += ticks;
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
return true;
}

View File

@ -79,6 +79,10 @@ binary_propagate_literal (kissat * solver, unsigned lit)
const watch *p = begin;
int ticks = kissat_cache_lines (watches->size, sizeof (watch));
solver->dps_ticks +=ticks;
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
clause *res = 0;

View File

@ -244,6 +244,10 @@ PROPAGATE_LITERAL (kissat * solver,
}
solver->ticks += ticks;
solver->dps_ticks += ticks;
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
while (p != end_watches)
*q++ = *p++;

View File

@ -215,7 +215,10 @@ generate_resolvents (kissat * solver, unsigned lit,
PUSH_STACK (solver->resolvents, INVALID_LIT);
solver->dps_ticks++;
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
for (all_literals_in_clause (other, c))
{
if (other == lit)

View File

@ -172,15 +172,10 @@ int kissat_search(kissat *solver)
}
if (!solver->level) {
int should_free = 0;
if (solver->share_dps > 0 && solver->dps_ticks >= solver->share_dps_period) {
solver->dps_ticks -= solver->share_dps_period;
should_free = solver->cbkWaitSharing(solver->issuer);
if (should_free == -1) return 0;
}
if (!kissat_importUnitClauses(solver)) return 20;
if (!kissat_importClauses(solver)) return 20;
if (should_free == 1 && solver->share_dps == 2)
solver->cbkFreeClause(solver->issuer);
if (solver->dps == 1)
solver->cbk_free_clauses(solver->issuer);
}
clause *conflict = kissat_search_propagate(solver);
if (conflict)

View File

@ -117,6 +117,10 @@ determine_representatives (kissat * solver, unsigned *repr)
if (reach_other < reach_lit)
reach_lit = reach_other;
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
if (reach_lit != mark_lit)
{
LOG ("reach[%s] = %u", LOGLIT (lit), reach_lit);
@ -206,6 +210,7 @@ determine_representatives (kissat * solver, unsigned *repr)
unsigned ticks = kissat_cache_lines (watches->size, sizeof (watch));
solver->dps_ticks += 1 + ticks;
for (all_binary_blocking_watches (watch, *watches))
{
@ -218,6 +223,10 @@ determine_representatives (kissat * solver, unsigned *repr)
if (!mark[other])
PUSH_STACK (work, other);
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period) {
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
}
else
(void) POP_STACK (work);

View File

@ -12,280 +12,282 @@
#include <stddef.h>
static void
transitive_assign (kissat * solver, unsigned lit)
transitive_assign(kissat *solver, unsigned lit)
{
LOG ("transitive assign %s", LOGLIT (lit));
LOG("transitive assign %s", LOGLIT(lit));
value *values = solver->values;
const unsigned not_lit = NOT (lit);
assert (!values[lit]);
assert (!values[not_lit]);
const unsigned not_lit = NOT(lit);
assert(!values[lit]);
assert(!values[not_lit]);
values[lit] = 1;
values[not_lit] = -1;
PUSH_STACK (solver->trail, lit);
PUSH_STACK(solver->trail, lit);
}
static void
transitive_backtrack (kissat * solver, unsigned saved)
transitive_backtrack(kissat *solver, unsigned saved)
{
assert (saved <= SIZE_STACK (solver->trail));
assert(saved <= SIZE_STACK(solver->trail));
value *values = solver->values;
while (SIZE_STACK (solver->trail) > saved)
{
const unsigned lit = POP_STACK (solver->trail);
LOG ("transitive unassign %s", LOGLIT (lit));
const unsigned not_lit = NOT (lit);
assert (values[lit] > 0);
assert (values[not_lit] < 0);
values[lit] = values[not_lit] = 0;
}
while (SIZE_STACK(solver->trail) > saved)
{
const unsigned lit = POP_STACK(solver->trail);
LOG("transitive unassign %s", LOGLIT(lit));
const unsigned not_lit = NOT(lit);
assert(values[lit] > 0);
assert(values[not_lit] < 0);
values[lit] = values[not_lit] = 0;
}
solver->propagated = saved;
solver->level = 0;
}
static void
prioritize_binaries (kissat * solver)
prioritize_binaries(kissat *solver)
{
assert (solver->watching);
assert(solver->watching);
statches large;
INIT_STACK (large);
INIT_STACK(large);
watches *all_watches = solver->watches;
for (all_literals (lit))
for (all_literals(lit))
{
assert(EMPTY_STACK(large));
watches *watches = all_watches + lit;
watch *begin_watches = BEGIN_WATCHES(*watches), *q = begin_watches;
const watch *end_watches = END_WATCHES(*watches), *p = q;
while (p != end_watches)
{
assert (EMPTY_STACK (large));
watches *watches = all_watches + lit;
watch *begin_watches = BEGIN_WATCHES (*watches), *q = begin_watches;
const watch *end_watches = END_WATCHES (*watches), *p = q;
while (p != end_watches)
{
const watch head = *q++ = *p++;
if (head.type.binary)
continue;
const watch tail = *p++;
PUSH_STACK (large, head);
PUSH_STACK (large, tail);
q--;
}
const watch *end_large = END_STACK (large);
const watch *r = BEGIN_STACK (large);
while (r != end_large)
*q++ = *r++;
assert (q == end_watches);
CLEAR_STACK (large);
const watch head = *q++ = *p++;
if (head.type.binary)
continue;
const watch tail = *p++;
PUSH_STACK(large, head);
PUSH_STACK(large, tail);
q--;
}
RELEASE_STACK (large);
const watch *end_large = END_STACK(large);
const watch *r = BEGIN_STACK(large);
while (r != end_large)
*q++ = *r++;
assert(q == end_watches);
CLEAR_STACK(large);
}
RELEASE_STACK(large);
}
static bool
transitive_reduce (kissat * solver,
unsigned src, uint64_t limit,
uint64_t * reduced_ptr, unsigned *units)
transitive_reduce(kissat *solver,
unsigned src, uint64_t limit,
uint64_t *reduced_ptr, unsigned *units)
{
bool res = false;
assert (!VALUE (src));
LOG ("transitive reduce %s", LOGLIT (src));
assert(!VALUE(src));
LOG("transitive reduce %s", LOGLIT(src));
watches *all_watches = solver->watches;
watches *src_watches = all_watches + src;
watch *end_src = END_WATCHES (*src_watches);
watch *begin_src = BEGIN_WATCHES (*src_watches);
unsigned ticks = kissat_cache_lines (src_watches->size, sizeof (watch));
ADD (transitive_ticks, ticks + 1);
watch *end_src = END_WATCHES(*src_watches);
watch *begin_src = BEGIN_WATCHES(*src_watches);
unsigned ticks = kissat_cache_lines(src_watches->size, sizeof(watch));
ADD(transitive_ticks, ticks + 1);
solver->dps_ticks += 1 + ticks;
const unsigned not_src = NOT (src);
const unsigned not_src = NOT(src);
unsigned reduced = 0;
bool failed = false;
for (watch * p = begin_src; p != end_src; p++)
for (watch *p = begin_src; p != end_src; p++)
{
const watch src_watch = *p;
if (!src_watch.type.binary)
break;
const unsigned dst = src_watch.binary.lit;
if (dst < src)
continue;
if (VALUE(dst))
continue;
assert(solver->propagated == SIZE_STACK(solver->trail));
unsigned saved = solver->propagated;
assert(!solver->level);
solver->level = 1;
transitive_assign(solver, not_src);
const bool redundant = src_watch.binary.redundant;
bool transitive = false;
unsigned propagated = 0;
while (!transitive && !failed &&
solver->propagated < SIZE_STACK(solver->trail))
{
const watch src_watch = *p;
if (!src_watch.type.binary)
break;
const unsigned dst = src_watch.binary.lit;
if (dst < src)
continue;
if (VALUE (dst))
continue;
assert (solver->propagated == SIZE_STACK (solver->trail));
unsigned saved = solver->propagated;
assert (!solver->level);
solver->level = 1;
transitive_assign (solver, not_src);
const bool redundant = src_watch.binary.redundant;
bool transitive = false;
unsigned propagated = 0;
while (!transitive && !failed &&
solver->propagated < SIZE_STACK (solver->trail))
{
const unsigned lit = PEEK_STACK (solver->trail, solver->propagated);
solver->propagated++;
propagated++;
LOG ("transitive propagate %s", LOGLIT (lit));
assert (VALUE (lit) > 0);
const unsigned not_lit = NOT (lit);
watches *lit_watches = all_watches + not_lit;
const watch *end_lit = END_WATCHES (*lit_watches);
const watch *begin_lit = BEGIN_WATCHES (*lit_watches);
ticks = kissat_cache_lines (lit_watches->size, sizeof (watch));
ADD (transitive_ticks, ticks + 1);
for (const watch * q = begin_lit; q != end_lit; q++)
{
if (p == q)
continue;
const watch lit_watch = *q;
if (!lit_watch.type.binary)
break;
if (not_lit == src && lit_watch.binary.lit == ILLEGAL_LIT)
continue;
if (!redundant && lit_watch.binary.redundant)
continue;
const unsigned other = lit_watch.binary.lit;
if (other == dst)
{
transitive = true;
break;
}
const value value = VALUE (other);
if (value < 0)
{
LOG ("both %s and %s reachable from %s",
LOGLIT (NOT (other)), LOGLIT (other), LOGLIT (src));
failed = true;
break;
}
if (!value)
transitive_assign (solver, other);
}
}
assert (solver->probing);
ADD (propagations, propagated);
ADD (probing_propagations, propagated);
ADD (transitive_propagations, propagated);
const unsigned lit = PEEK_STACK(solver->trail, solver->propagated);
solver->propagated++;
propagated++;
LOG("transitive propagate %s", LOGLIT(lit));
assert(VALUE(lit) > 0);
const unsigned not_lit = NOT(lit);
watches *lit_watches = all_watches + not_lit;
const watch *end_lit = END_WATCHES(*lit_watches);
const watch *begin_lit = BEGIN_WATCHES(*lit_watches);
ticks = kissat_cache_lines(lit_watches->size, sizeof(watch));
ADD(transitive_ticks, ticks + 1);
solver->dps_ticks += ticks + 1;
transitive_backtrack (solver, saved);
if (transitive)
{
LOGBINARY (src, dst, "transitive reduce");
INC (transitive_reduced);
watches *dst_watches = all_watches + dst;
watch dst_watch = src_watch;
assert (dst_watch.binary.lit == dst);
assert (dst_watch.binary.redundant == redundant);
dst_watch.binary.lit = src;
REMOVE_WATCHES (*dst_watches, dst_watch);
kissat_delete_binary (solver,
src_watch.binary.redundant,
src_watch.binary.hyper, src, dst);
p->binary.lit = ILLEGAL_LIT;
reduced++;
res = true;
}
if (failed)
break;
if (solver->statistics.transitive_ticks > limit)
break;
if (TERMINATED (16))
break;
for (const watch *q = begin_lit; q != end_lit; q++)
{
if (p == q)
continue;
const watch lit_watch = *q;
if (!lit_watch.type.binary)
break;
if (not_lit == src && lit_watch.binary.lit == ILLEGAL_LIT)
continue;
if (!redundant && lit_watch.binary.redundant)
continue;
const unsigned other = lit_watch.binary.lit;
if (other == dst)
{
transitive = true;
break;
}
const value value = VALUE(other);
if (value < 0)
{
LOG("both %s and %s reachable from %s",
LOGLIT(NOT(other)), LOGLIT(other), LOGLIT(src));
failed = true;
break;
}
if (!value)
transitive_assign(solver, other);
}
}
if (reduced)
assert(solver->probing);
ADD(propagations, propagated);
ADD(probing_propagations, propagated);
ADD(transitive_propagations, propagated);
transitive_backtrack(solver, saved);
if (transitive)
{
*reduced_ptr += reduced;
assert (begin_src == BEGIN_WATCHES (WATCHES (src)));
assert (end_src == END_WATCHES (WATCHES (src)));
watch *q = begin_src;
for (const watch * p = begin_src; p != end_src; p++)
{
const watch src_watch = *q++ = *p;
if (!src_watch.type.binary)
{
*q++ = *++p;
continue;
}
if (src_watch.binary.lit == ILLEGAL_LIT)
q--;
}
assert (end_src - q == (ptrdiff_t) reduced);
SET_END_OF_WATCHES (*src_watches, q);
LOGBINARY(src, dst, "transitive reduce");
INC(transitive_reduced);
watches *dst_watches = all_watches + dst;
watch dst_watch = src_watch;
assert(dst_watch.binary.lit == dst);
assert(dst_watch.binary.redundant == redundant);
dst_watch.binary.lit = src;
REMOVE_WATCHES(*dst_watches, dst_watch);
kissat_delete_binary(solver,
src_watch.binary.redundant,
src_watch.binary.hyper, src, dst);
p->binary.lit = ILLEGAL_LIT;
reduced++;
res = true;
}
if (failed)
break;
if (solver->statistics.transitive_ticks > limit)
break;
if (TERMINATED(16))
break;
}
if (solver->dps == 1 && solver->dps_ticks >= solver->dps_period)
{
solver->dps_ticks -= solver->dps_period;
solver->cbk_start_new_period(solver->issuer);
}
if (reduced)
{
*reduced_ptr += reduced;
assert(begin_src == BEGIN_WATCHES(WATCHES(src)));
assert(end_src == END_WATCHES(WATCHES(src)));
watch *q = begin_src;
for (const watch *p = begin_src; p != end_src; p++)
{
const watch src_watch = *q++ = *p;
if (!src_watch.type.binary)
{
*q++ = *++p;
continue;
}
if (src_watch.binary.lit == ILLEGAL_LIT)
q--;
}
assert(end_src - q == (ptrdiff_t)reduced);
SET_END_OF_WATCHES(*src_watches, q);
}
if (failed)
{
LOG("transitive failed literal %s", LOGLIT(not_src));
INC(failed);
*units += 1;
res = true;
kissat_assign_unit(solver, src);
CHECK_AND_ADD_UNIT(src);
ADD_UNIT_TO_PROOF(src);
clause *conflict = kissat_probing_propagate(solver, 0);
if (conflict)
{
LOG ("transitive failed literal %s", LOGLIT (not_src));
INC (failed);
*units += 1;
res = true;
kissat_assign_unit (solver, src);
CHECK_AND_ADD_UNIT (src);
ADD_UNIT_TO_PROOF (src);
clause *conflict = kissat_probing_propagate (solver, 0);
if (conflict)
{
(void) kissat_analyze (solver, conflict);
assert (solver->inconsistent);
}
else
{
assert (solver->unflushed);
kissat_flush_trail (solver);
}
(void)kissat_analyze(solver, conflict);
assert(solver->inconsistent);
}
else
{
assert(solver->unflushed);
kissat_flush_trail(solver);
}
}
return res;
}
void
kissat_transitive_reduction (kissat * solver)
void kissat_transitive_reduction(kissat *solver)
{
if (solver->inconsistent)
return;
assert (solver->watching);
assert (solver->probing);
assert (!solver->level);
if (!GET_OPTION (transitive))
assert(solver->watching);
assert(solver->probing);
assert(!solver->level);
if (!GET_OPTION(transitive))
return;
if (TERMINATED (17))
if (TERMINATED(17))
return;
START (transitive);
prioritize_binaries (solver);
START(transitive);
prioritize_binaries(solver);
bool success = false;
uint64_t reduced = 0;
unsigned units = 0;
SET_EFFICIENCY_BOUND (limit, transitive, transitive_ticks, search_ticks, 0);
SET_EFFICIENCY_BOUND(limit, transitive, transitive_ticks, search_ticks, 0);
assert (solver->transitive < LITS);
assert(solver->transitive < LITS);
const unsigned end = solver->transitive;
#ifndef QUIET
const unsigned active = solver->active;
#endif
unsigned probed = 0;
do
{
const unsigned lit = solver->transitive++;
if (solver->transitive == LITS)
solver->transitive = 0;
if (!ACTIVE (IDX (lit)))
continue;
probed++;
if (transitive_reduce (solver, lit, limit, &reduced, &units))
success = true;
if (solver->inconsistent)
break;
if (solver->statistics.transitive_ticks > limit)
break;
if (TERMINATED (18))
break;
}
while (solver->transitive != end);
kissat_phase (solver, "transitive", GET (probings),
"probed %u (%.0f%%): reduced %" PRIu64 ", units %u",
probed, kissat_percent (probed, 2 * active), reduced, units);
STOP (transitive);
REPORT (!success, 't');
{
const unsigned lit = solver->transitive++;
if (solver->transitive == LITS)
solver->transitive = 0;
if (!ACTIVE(IDX(lit)))
continue;
probed++;
if (transitive_reduce(solver, lit, limit, &reduced, &units))
success = true;
if (solver->inconsistent)
break;
if (solver->statistics.transitive_ticks > limit)
break;
if (TERMINATED(18))
break;
} while (solver->transitive != end);
kissat_phase(solver, "transitive", GET(probings),
"probed %u (%.0f%%): reduced %" PRIu64 ", units %u",
probed, kissat_percent(probed, 2 * active), reduced, units);
STOP(transitive);
REPORT(!success, 't');
#ifdef QUIET
(void) success;
(void)success;
#endif
}

View File

@ -87,7 +87,7 @@ class solver(object):
# line += "{C}"
# elif(state.byLS):
# line += "{L}"
line += str()
# line += str()
return line.ljust(18)
return super().to_string(state)
@ -98,6 +98,8 @@ class solver_SAT_standard_gnomon(solver):
if(not ins_name in self.datas):
self.datas[ins_name] = states()
real_file_path = self.res_dir + "/" + ins_name
if (not os.path.isfile(real_file_path)):
return super().cal_soln(ins_name)
fstr = open(real_file_path, "r").read()
if(not len(re.findall(r"s\s+UNSATISFIABLE", fstr))==0):
@ -106,10 +108,13 @@ class solver_SAT_standard_gnomon(solver):
self.datas[ins_name].res = "sat"
if(not self.datas[ins_name].res == "unknown"):
timestr = re.findall(r"real.*m.*s", fstr)[0]
minute = int(timestr.split('m')[0].split()[-1])
second = float(timestr.split('m')[-1].split('s')[0])
self.datas[ins_name].time = minute * 60 + second
if (not self.print_name.find("kissat") == -1):
self.datas[ins_name].time = float(re.findall(r"c process-time:.*seconds", fstr)[0].split()[-2])
else:
timestr = re.findall(r"real.*m.*s", fstr)[0]
minute = int(timestr.split('m')[0].split()[-1])
second = float(timestr.split('m')[-1].split('s')[0])
self.datas[ins_name].time = minute * 60 + second
return super().cal_soln(ins_name)
def to_string(self, state):
@ -192,8 +197,11 @@ class calculater(object):
ins_name = ins_name.strip()
best_time = CUTOFF*PUNISH
solved_ct = 0
first_time = -1
for slv in self.solvers:
slv.cal_soln(ins_name)
if (first_time == -1):
first_time = slv.datas[ins_name].time
best_time = min(slv.datas[ins_name].time, best_time)
if not slv.datas[ins_name].res == "unknown":
solved_ct += 1
@ -214,7 +222,9 @@ class calculater(object):
have_diff_res = False
for slv in self.solvers:
stt = slv.datas[ins_name]
line += slv.to_string(stt)
ratio = first_time / slv.datas[ins_name].time
line += slv.to_string(stt) + "\t"
# line += str(round(ratio, 2)) + "\t"
if(not stt.res == "unknown"):
no_answer = False
if (not answer_this == "unknown"):
@ -228,10 +238,10 @@ class calculater(object):
have_diff_res = True
# if(True):
if(False):
# if(False):
# if(no_answer):
# if(all_can_solve):
# if(have_diff_res):
if(have_diff_res):
# if(have_diff_res and answer_this == "sat"):
# if(self.solvers[-2].datas[ins_name].res != self.solvers[-1].datas[ins_name].res):
print_line_ct += 1
@ -268,26 +278,26 @@ if __name__ == "__main__":
solvers = []
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-tc2","thread32"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/NPS","NPS"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/p-mcomsps","p-mcomsps"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/treengeling","treengeling"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/pakis","pakis"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/pakis22","pakis22"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/NPS","NPS"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-1-nps","sharing-nps"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-2-dps-r","4-2-dps"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-2-dps2-r","4-2-dps2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/treengeling","treengeling"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/pakis-mab","pakis"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps","4-3-sharing-nps"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-rp-tc2","4-3-sharing-nps-rp2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-p","4-3-sharing-nps-p"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-tc2","4-3-sharing-nps2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-tc2","4-3-sharing-nps2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-rp","4-3-sharing-nps-rp"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-p-tc2","4-3-sharing-nps-p2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nopre-sharing-r","4-3-nopre"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nosharing-r","4-3-nosharing"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nopre-sharing-r","4-3-nopre"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-20-2k","5-7-dps-20-2k"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v6-0-nps","6-0-nps"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/sota/kissat-inc","kissat-inc"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-4-nps-2","thread2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-4-nps-4","thread4"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-4-nps-8","thread8"))
@ -298,20 +308,32 @@ if __name__ == "__main__":
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-tc3","4-3-sharing-nps3"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-tc3","4-3-sharing-nps3"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v4-3-nps-tc4","4-3-sharing-nps4"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-5-dps-20","5-5-dps-20"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-6-dps-2","5-6-dps-2"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-5-dps-20","5-5-dps-20"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-6-dps-20","5-6-dps-20"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-6-dps-2","5-6-dps-2"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-20-1k","5-7-dps-20-1k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-20-2k","5-7-dps-20-2k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-20-4k","5-7-dps-20-4k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-10-1k","5-7-dps-10-1k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-10-2k","5-7-dps-10-2k"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-5-1k","5-7-dps-5-1k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v6-0-dps-15-1k","6-0-dps-15-1k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v6-0-dps-15-2k","6-0-dps-15-2k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v6-1-dps-15-2k","6-1-dps-15-2k"))
solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v6-2-dps-15-2k","6-2-dps-15-2k"))
# solvers.append(solver_SAT_standard_gnomon("/pub/data/chenzh/res/light/v5-7-dps-20-4k","5-7-dps-20-4k"))
# append_all_solvers_in_dir(solvers, "/pub/data/chenzh/res/light/")
samples = []
# samples.append(["/pub/data/chenzh/data/sat2020/vbs.txt", "vbs"])
# samples.append(["/pub/data/chenzh/data/sat2021/vbs.txt", "vbs"])
samples.append(["/pub/data/chenzh/data/sat2022/vbs.txt", "vbs"])
# samples.append(["/pub/data/chenzh/data/sat2022/all.txt", "all"])
# samples.append(["/pub/data/chenzh/data/sat2022/vbs.txt", "vbs"])
# samples.append(["/pub/data/chenzh/data/sat2022/satvbs.txt", "satvbs"])
# samples.append(["/pub/data/chenzh/data/sat2022/unsatvbs.txt", "unsatvbs"])
samples.append(["/pub/data/chenzh/data/sat2022/all.txt", "all"])
# samples.append(["/pub/data/chenzh/data/sat2022/unknown.txt", "unknown"])
clt = calculater(solvers, samples)
clt.cal_and_show()

File diff suppressed because it is too large Load Diff

View File

@ -23,6 +23,7 @@ res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v5-7-dps-10-2k"
res8="/pub/data/chenzh/res/light/v5-7-dps-20-2k-nopre"
res_no="/pub/data/chenzh/res/unused"
#####################################################
@ -31,7 +32,7 @@ for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
res_solver_ins=$res8
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
@ -43,7 +44,7 @@ do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=10 --DPS_period=20000000
time ./light-v5-7 $instance/$file --simplify=0 --share=1 --DPS=2 --margin=20 --DPS_period=20000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done

152
testLight/run18-1.sh Executable file
View File

@ -0,0 +1,152 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v6-0-nps"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res6
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-0 $instance/$file --share=1
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run18-2.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-0-dps-15-1k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-0 $instance/$file --share=1 --DPS=1 --margin=15 --DPS_period=10000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run18-3.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-0-dps-5-2k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-0 $instance/$file --share=1 --DPS=1 --margin=5 --DPS_period=20000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run18-4.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-0-dps-15-8h"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-0 $instance/$file --share=1 --DPS=1 --margin=15 --DPS_period=8000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run19-1.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-1-dps-15-2k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-1 $instance/$file --share=1 --DPS=1 --margin=15 --DPS_period=20000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run19-2.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-2-dps-15-2k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-2 $instance/$file --share=1 --DPS=1 --margin=15 --DPS_period=20000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run19-3.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-3-dps-15-2k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-3 $instance/$file --share=1 --DPS=1 --margin=15 --DPS_period=20000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run19-4.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-3-dps-15-1k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-3 $instance/$file --share=1 --DPS=1 --margin=15 --DPS_period=10000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run19-5.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-3-dps-10-1k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-3 $instance/$file --share=1 --DPS=1 --margin=10 --DPS_period=10000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

169
testLight/run19-6.sh Executable file
View File

@ -0,0 +1,169 @@
#!/bin/bash
SEND_THREAD_NUM=4
tmp_fifofile="/tmp/$$.fifo" # 脚本运行的当前进程ID号作为文件名
mkfifo "$tmp_fifofile" # 新建一个随机fifo管道文件
exec 6<>"$tmp_fifofile" # 定义文件描述符6指向这个fifo管道文件
rm $tmp_fifofile
for i in $(seq 1 $SEND_THREAD_NUM)
do
echo # for循环 往 fifo管道文件中写入 $SEND_THREAD_NUM 个空行
done >&6
# CUTOFF_TIME=3600
instance_20="/pub/data/chenzh/data/sat2020"
instance_21="/pub/data/chenzh/data/sat2021"
instance_22="/pub/data/chenzh/data/sat2022"
res1="/pub/data/chenzh/res/light/v1-origin"
res2="/pub/data/chenzh/res/light/v1-preprocess-2"
res3="/pub/data/chenzh/res/light/v1-1-origin"
res4="/pub/data/chenzh/res/light/v2-preprocess"
res5="/pub/data/chenzh/res/light/v3--1-preprocess"
res6="/pub/data/chenzh/res/light/v5-7-dps-20-2k"
res7="/pub/data/chenzh/res/light/v6-3-dps-10-2k"
res_no="/pub/data/chenzh/res/unused"
#####################################################
all_datas=($instance_22)
for((i=0;i<${#all_datas[*]};i++))
do
instance=${all_datas[$i]}
res_solver_ins=$res7
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for dir_file in `cat $instance/vbs.txt`
do
file=$dir_file
echo $file
touch $res_solver_ins/$file
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v6-3 $instance/$file --share=1 --DPS=1 --margin=10 --DPS_period=20000000
echo >&6
} >$res_solver_ins/$file 2>>$res_solver_ins/$file &
done
# res_solver_ins=$res6
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v5-7 $instance/$file --share=1 --DPS=2 --margin=20 --DPS_period=20000000
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res5
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v3--1 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res4
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v2 $instance/$file --share=1 --threads=31
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res3
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1-1 $instance/$file --simplify=0 --reset=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res2
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light $instance/$file --simplify=1
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
# res_solver_ins=$res1
# if [ ! -d "$res_solver_ins" ]; then
# mkdir -p $res_solver_ins
# fi
# for dir_file in `cat $instance/vbs.txt`
# do
# file=$dir_file
# echo $file
# touch $res_solver_ins/$file
# read -u 6
# {
# cd /home/chenzh/solvers/Light
# time ./light-v1 $instance/$file --simplify=0
# echo >&6
# } >$res_solver_ins/$file 2>>$res_solver_ins/$file &
# done
done
res_solver_ins=$res_no
if [ ! -d "$res_solver_ins" ]; then
mkdir -p $res_solver_ins
fi
for((i=0;i<4;i++))
do
read -u 6
{
cd /home/chenzh/solvers/Light
time ./light-v1 /home/chenzh/data/hard_cnfs/49.cnf
echo >&6
} >$res_solver_ins/$i 2>>$res_solver_ins/$i &
done
exit 0

BIN
testLight/speed Executable file

Binary file not shown.

32
testLight/speed.c Normal file
View File

@ -0,0 +1,32 @@
#include<bits/stdc++.h>
using namespace std;
const int solvers = 7;
const int instances = 400;
double st[solvers + 1][instances + 1];
double rat[solvers + 1][instances + 1];
char instance[instances + 1][200];
int main() {
freopen("speedunsat.txt", "r", stdin);
for (int i = 1; i <= instances; i++) {
for (int j = 1; j <= solvers; j++)
scanf("%lf%lf", &st[j][i], &rat[j][i]);
scanf("%s", instance[i]);
}
for (int j = 2; j <= 7; j++) {
int same = 0;
double sum = 0;
for (int i = 1; i <= instances; i++) {
// printf("%.2lf %.2lf\n", st[j][i], rat[j][i]);
if (st[j][i] > 5000 || st[1][i] > 5000) continue;
if (st[j][i] < 1.0 && st[1][i] < 1.0) continue;
if (st[j][i] < 0.1 || st[1][i] < 0.1) {
printf("\tpre %s\n", instance[i]); continue;
}
++same;
sum += rat[j][i];
// printf("%.2lf \t\t%.2lf %.2lf %s\n", rat[j][i], st[j][i], st[1][i], instance[i]);
}
printf("c speed is %.2lf, cal is %d\n", sum / same, same);
}
return 0;
}

BIN
testLight/speed.o Normal file

Binary file not shown.

401
testLight/speedall.txt Normal file
View File

@ -0,0 +1,401 @@
192.67 1.0 142.39 1.35 74.55 2.58 44.42 4.34 29.59 6.51 20.26 9.51 14.85 12.98 002a0330958a14deb23dcc84b5489e8a-traffic_f_unknown.cnf
28.21 1.0 217.72 0.13 48.39 0.58 67.41 0.42 28.68 0.98 64.68 0.44 45.11 0.63 004b0f451f7d96f6a572e9e76360f51a-spg_420_280.cnf
11.83 1.0 9.5 1.25 4.72 2.51 4.41 2.68 2.29 5.18 2.91 4.07 1.74 6.82 00a62eb89afbf27e1addf8f5c437da9b-ortholatin-7.cnf
60.19 1.0 67.71 0.89 53.14 1.13 38.52 1.56 23.07 2.61 21.69 2.77 19.71 3.05 00aefd1fc30c425075166ca051e57218-barman-pfile10-038.sas.ex.15.cnf
10000 1.0 2688.01 3.72 2875.53 3.48 513.23 19.48 163.59 61.13 199.03 50.24 49.21 203.2 0151bedac526ee195bc52e4134cd80e7-ssAES_4-4-8_round_8-10_faultAt_8_fault_injections_2_seed_1579630418.cnf
3157.25 1.0 2681.49 1.18 2925.91 1.08 1824.91 1.73 1266.6 2.49 1679.22 1.88 413.81 7.63 01813075a2ddb68ae1fc655ca003437e-sha256__zeroOut_12__freeIn_16__seed_1.cnf
16.85 1.0 0.0 5616.67 0.01 3370.0 0.04 455.41 0.03 674.0 0.0 5616.67 0.01 2808.33 01d142c43f3ce9a8c5ef7a1ecdbb6cba-urquhart3_25bis.shuffled.cnf
1546.8 1.0 1054.47 1.47 116.78 13.25 187.45 8.25 310.32 4.98 87.19 17.74 145.53 10.63 0205e0724a8a912dde9ad7dfba2aee0b-003-23-80.cnf
68.93 1.0 9.04 7.63 0.64 108.04 1.17 59.02 0.57 119.88 1.58 43.54 1.82 37.81 02223564bd2f5c20768e63cf28c785e3-mp1-squ_ali_s10x10_c39_abio_SAT.cnf
136.74 1.0 193.25 0.71 273.93 0.5 92.14 1.48 101.17 1.35 82.28 1.66 60.77 2.25 0240f5bddc39ad2f0a786c811fc434a8-SC21_Timetable_C_542_E_71_Cl_36_S_35.cnf
1069.49 1.0 1554.11 0.69 2812.64 0.38 533.38 2.01 1888.58 0.57 974.97 1.1 874.81 1.22 024af9416f8c1dad1b4f974757e38d51-8-5-6.cnf
21.26 1.0 27.31 0.78 69.2 0.31 40.01 0.53 29.25 0.73 64.48 0.33 43.37 0.49 02627689047d06fbb642eef14768d751-ps_200_300_70.cnf
1498.01 1.0 1063.03 1.41 1200.31 1.25 1023.43 1.46 953.46 1.57 768.91 1.95 837.22 1.79 0294158664d9ada36bd23fbb652cb823-smtlib-qfbv-aigs-countbits128-tseitin.cnf
2169.43 1.0 400.53 5.42 160.24 13.54 108.88 19.92 64.83 33.46 46.79 46.37 33.42 64.92 02c6fe8483e4f4474b7ac9731772535d-ncc_none_7047_6_3_3_0_0_420.cnf
178.34 1.0 331.86 0.54 302.48 0.59 239.42 0.74 241.76 0.74 173.83 1.03 150.71 1.18 02f2343e32f9070f149708d77556b4aa-Kakuro-easy-117-ext.xml.hg_5.cnf
235.03 1.0 181.71 1.29 159.03 1.48 141.7 1.66 127.55 1.84 84.25 2.79 73.86 3.18 0398e6b20de133ba8b49c74b67dad7b7-6s133-sc2014.cnf
83.8 1.0 63.36 1.32 86.44 0.97 32.63 2.57 25.98 3.23 13.5 6.21 9.43 8.88 03ba29d5cb38d345357a74a7b5ccd759-20-100-lambda100-49_sat.cnf
775.05 1.0 877.44 0.88 363.05 2.13 679.99 1.14 200.26 3.87 259.41 2.99 123.13 6.29 03bb7baaa45980753a0e7050ae44755d-atco_enc3_opt1_03_53.cnf
1585.07 1.0 966.5 1.64 609.75 2.6 346.38 4.58 208.74 7.59 111.04 14.28 70.02 22.64 03c44a93577c98119dc498053888937a-ctl_4291_567_1_unsat_pre.cnf
613.08 1.0 439.52 1.39 218.75 2.8 199.13 3.08 154.97 3.96 124.82 4.91 118.23 5.19 03fb9af7b390fe9e0739150ca3410cf0-4g_5color_166_100_02.cnf
10000 1.0 10000 1.0 3595.05 2.78 2301.44 4.35 1541.94 6.49 1043.92 9.58 729.65 13.71 04157f716c1e9606c6a530657bf8f957-Kakuro-easy-125-ext.xml.hg_4.cnf
477.13 1.0 498.92 0.96 275.68 1.73 172.97 2.76 96.35 4.95 58.03 8.22 42.65 11.19 0447371bb8a97e8fe5d3cee6de1db766-UTI-20-10p0-sc2009.cnf
3177.89 1.0 1933.18 1.64 1347.71 2.36 895.02 3.55 520.3 6.11 350.16 9.08 245.9 12.92 047c92e7c0a36a23d8107f4313517719-rubikcube701-sc2017.cnf
9.32 1.0 110.93 0.08 131.61 0.07 130.52 0.07 125.92 0.07 97.97 0.1 91.2 0.1 047fbe00ecc60835f1ee9d458bbd7ee8-SAT_H_instances_childsnack_p06.hddl_2.cnf
2968.38 1.0 576.18 5.15 2223.47 1.34 397.06 7.48 92.75 32.0 115.16 25.78 61.58 48.2 048142b6048cb6c10415e08f68a2c3a3-GP_81_430_13.cnf
10000 1.0 103.83 96.32 476.95 20.97 114.22 87.55 26.92 371.42 78.83 126.86 35.78 279.48 048a70da40ea4908c783b8314be2da97-aes_32_2_keyfind_1.cnf
26.71 1.0 1.15 23.31 0.79 33.98 0.83 32.06 0.78 34.07 0.86 31.13 1.59 16.83 0616ca6b1e0ae639d12e19ed310963a9-satcoin-genesis-SAT-4.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 3777.54 2.65 2528.6 3.95 1478.66 6.76 064fe286277f695f42b556ef991036ff-sin_depth_miter_2.cnf
0.54 1.0 2.0 0.27 0.44 1.24 0.29 1.83 0.28 1.94 0.28 1.96 0.29 1.88 072785fd927ff0fd180ce8b9cc00078f-20180321_140826713_p_cnf_320_1120.cnf
306.09 1.0 225.91 1.35 117.88 2.6 89.54 3.42 46.48 6.58 28.55 10.72 18.83 16.26 07b7859003d84402cbb1ebdc37655d55-6s186_Iter20.cnf
146.42 1.0 26.09 5.61 39.72 3.69 13.44 10.89 16.42 8.92 2.24 65.48 4.13 35.41 0810eb03d022334fdd1d5a6ad4969d47-gss-18-s100.cnf
144.4 1.0 156.14 0.92 318.17 0.45 382.88 0.38 438.25 0.33 397.12 0.36 292.82 0.49 0823bc5f954c6366702877556f0d3680-linked_list_swap_contents_safety_unwind66.cnf
10000 1.0 10000 1.0 10000 1.0 639.61 15.63 562.04 17.79 1185.96 8.43 1560.97 6.41 0842eb01dc00232edc0b26ccb2f19f25-6-4-6-sc2018.cnf
192.4 1.0 145.64 1.32 129.65 1.48 112.13 1.72 81.02 2.37 61.08 3.15 45.56 4.22 0855033e761d91ae367e867c5a569f9e-atco_enc1_opt2_10_15.cnf
67.65 1.0 78.93 0.86 31.77 2.13 52.93 1.28 11.96 5.66 22.97 2.94 12.47 5.42 085b8ebc423dcbd70eceaa04229cf5cd-summle_X111102_steps8_I1-2-2-4-4-8-25-100.cnf
288.09 1.0 295.22 0.98 620.49 0.46 68.32 4.22 48.08 5.99 11.3 25.49 44.27 6.51 089456508f74be2d96f4112cc495f80a-Eternity-10-06_c18.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 08991fb6c7c45205df7f2bc2f51fb1d9-bobsmdct_k500.cnf
1127.62 1.0 1620.17 0.7 1350.07 0.84 1992.97 0.57 1579.47 0.71 2124.61 0.53 1346.25 0.84 08e151e72fe10402a49463171aa557e8-abw-V-nos6.mtx-w220.cnf
1345.63 1.0 433.2 3.11 19.59 68.68 12.31 109.35 189.74 7.09 0.96 1400.24 6.61 203.61 090585dc32a79f2bf6fb61a2c7079682-mdp-28-16-sat.cnf
95.37 1.0 27.07 3.52 26.53 3.59 10.37 9.2 16.12 5.92 8.12 11.74 7.4 12.88 09d8544494e54bc756438e69567b4ba7-mp1-klieber2017s-0300-034-t12.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 3205.84 3.12 1819.39 5.5 1481.81 6.75 0a20cb72e5b005b8ed09d8a93184604a-j3037_9_gmto_bm1.cnf
400.32 1.0 394.05 1.02 358.37 1.12 341.19 1.17 309.36 1.29 324.6 1.23 291.94 1.37 0a3cb69074519646b0f2933ba7ad2d30-aws-encryption-sdk-c:aws_cryptosdk_hdr_write.cnf
627.19 1.0 741.22 0.85 412.3 1.52 458.78 1.37 459.41 1.37 316.1 1.98 151.86 4.13 0a514edbeace21927e52d75f2d4a8efd-ota-for-aws-iot-embedded-sdk:parseJSONbyModel.cnf
1322.71 1.0 4767.27 0.28 278.68 4.75 212.45 6.23 292.55 4.52 235.74 5.61 8.97 147.46 0b4421f6aac81e2dbc87c5b5ddae6511-52bits_12.dimacs.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 0b495cc867003b7ac112b7c47256228b-h31_large.cnf
428.29 1.0 50.75 8.44 71.37 6.0 41.93 10.21 29.98 14.29 8.9 48.12 9.7 44.14 0c0e6faa4abb622f5bea636ff04d341d-grid-color-12-14-2-cb.cnf
88.76 1.0 78.45 1.13 0.76 117.56 1.5 59.02 0.77 115.57 0.86 102.85 0.87 102.26 0c5d7e7aa3dd6024816078d2bdcfc4e3-Carry_Bits_Fast_8.cnf.cnf
345.87 1.0 228.96 1.51 192.22 1.8 43.05 8.03 91.25 3.79 64.99 5.32 20.08 17.23 0c75119940f87f2bc1dc3f53aeedc02b-20-100-lambda100-89_sat.cnf
642.6 1.0 392.83 1.64 643.51 1.0 249.88 2.57 127.23 5.05 65.7 9.78 109.28 5.88 0d209cb420326994f9c4898eb10228ab-008-80-8.cnf
32.7 1.0 1646.49 0.02 1930.03 0.02 1773.31 0.02 1541.28 0.02 1216.08 0.03 1192.28 0.03 0d4970edf84353e5a5798bca3f7f270e-SAT_H_instances_childsnack_p10.hddl_2.cnf
12.74 1.0 6.48 1.97 6.07 2.1 6.75 1.89 4.97 2.56 3.84 3.32 4.31 2.96 0dc468413b65339fad7e4f981bf2fb1e-reconf20_61_myciel4_2.cnf
736.71 1.0 1316.51 0.56 1266.56 0.58 369.31 1.99 183.17 4.02 39.76 18.53 182.34 4.04 0dcd0ec81c5e8dc13b72d43a4940279b-hantzsche_wendt_unit_147.cnf
206.99 1.0 231.97 0.89 93.59 2.21 197.66 1.05 53.31 3.88 43.24 4.79 30.55 6.77 0e775873f4c4bbc81ff92b87dd3e15e8-grid-strips-grid-y-3.045-NOTKNOWN.cnf
120.09 1.0 55.9 2.15 36.54 3.29 21.28 5.64 10.24 11.73 6.9 17.4 5.07 23.68 0e89b0f96c99f1a6aaaf66c3ae805919-SCPC-500-15.cnf
2828.77 1.0 1353.63 2.09 774.39 3.65 422.47 6.7 235.4 12.02 111.47 25.38 81.14 34.86 109aa0f5e177c1efb72f133a6f8c723b-hantzsche_wendt_unit_92.cnf
1962.16 1.0 2084.03 0.94 2669.15 0.74 1652.4 1.19 1378.17 1.42 665.52 2.95 490.75 4.0 114f1b2ffd86e8a176bcbab664415520-bobsmdct_k88.cnf
133.37 1.0 290.22 0.46 31.34 4.26 39.71 3.36 26.26 5.08 9.74 13.69 10.52 12.68 129162378e8ad29b5485a9c53feee4b7-hantzsche_wendt_unit_93.cnf
1437.44 1.0 1835.92 0.78 1716.08 0.84 764.61 1.88 1900.93 0.76 296.1 4.85 309.27 4.65 13b13b34fe88f093aca06d6d035ee797-Lab-Project-FreeRTOS-Cellular-Library:Cellular_ATRemovePrefix.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 14f35ebcab936f66fc9292ff62cf39a7-h31.cnf
61.12 1.0 74.97 0.82 21.43 2.85 6.91 8.85 4.68 13.05 1.74 35.09 1.26 48.35 157c7496c04d3fc63565cd7999dc45a5-Carry_Save_Fast_1.cnf.cnf
365.2 1.0 187.66 1.95 134.27 2.72 99.59 3.67 56.86 6.42 40.27 9.07 37.74 9.68 161a73825fb50badeedbf8d12e1e043a-cfi-rigid-z2-0088-03-or_2.cnf
1049.37 1.0 680.45 1.54 726.86 1.44 679.58 1.54 480.72 2.18 597.45 1.76 479.44 2.19 16a0949c23ac67c57c5773403daaca60-coreMQTT:MQTT_Connect.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 3097.09 3.23 1543.13 6.48 915.96 10.92 1b78438db7da55c2b4c4b8ec6b6cd6c6-soelberg_unit_158.cnf
87.01 1.0 25.1 3.47 21.96 3.96 31.61 2.75 12.88 6.76 11.35 7.67 5.23 16.63 1ebab99edff4c0470c8aa753bb9d3353-summle_X8637_steps8_I1-2-2-4-4-8-25-100.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 1fabadca67bfeada7086035761b88b33-sum_of_three_cubes_165_unknown_representation.cnf
1911.28 1.0 4770.58 0.4 3014.27 0.63 1509.46 1.27 592.46 3.23 787.03 2.43 736.65 2.59 1fee9f154615842029ec63d8520f4b4e-GP_300_250_15.cnf
773.68 1.0 471.68 1.64 263.28 2.94 122.35 6.32 73.32 10.55 39.48 19.59 30.07 25.73 20840b5020649385e3f8f4965de7a123-hantzsche_wendt_unit_83.cnf
570.0 1.0 550.77 1.03 675.86 0.84 568.49 1.0 597.64 0.95 561.0 1.02 402.43 1.42 23e61c50ee2ac5cad1d337572abdebcf-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_edks.cnf
10000 1.0 10000 1.0 10000 1.0 4291.23 2.33 2633.41 3.8 314.83 31.76 440.26 22.71 24af39156d1daa122e5928d9aba11847-GP_100_948_33.cnf
4.87 1.0 19.3 0.25 18.77 0.26 25.02 0.19 20.68 0.24 16.38 0.3 15.35 0.32 2551afad6b364a7225cdd1b9fa82f7c0-worker_500_500_500_0.35.cnf
1801.83 1.0 1350.42 1.33 1103.03 1.63 674.77 2.67 504.13 3.57 308.72 5.84 266.09 6.77 26342c62148962a09872831b7cef8aae-div-mitern165.cnf
3951.77 1.0 1967.06 2.01 1425.71 2.77 965.44 4.09 669.71 5.9 346.35 11.41 260.84 15.15 26f8332e50a4ba5c371852e3737a3002-mdp-28-11-unsat.cnf
67.91 1.0 13.28 5.11 8.28 8.2 8.01 8.48 7.07 9.61 7.06 9.62 7.52 9.03 2748e075d4b636ef260271a35302049b-cfi-rigid-t2-0048-01-or_3.cnf
322.78 1.0 380.21 0.85 358.91 0.9 309.31 1.04 328.63 0.98 497.95 0.65 429.96 0.75 27d9905476897885d29cea2744db9805-coreJSON:skipCollection.cnf
46.91 1.0 33.9 1.38 11.27 4.16 12.63 3.72 19.11 2.45 6.23 7.53 5.67 8.27 285cb2c9735ac73cad999fba3d669382-summle_X8634_steps8_I1-2-2-4-4-8-25-100.cnf
1794.26 1.0 1917.83 0.94 1731.59 1.04 1626.95 1.1 1266.99 1.42 1313.75 1.37 1273.87 1.41 28b715dd946dba71ddd58a73d9f82c39-pj2005_k80.cnf
222.9 1.0 138.1 1.61 96.16 2.32 29.95 7.44 20.89 10.67 18.04 12.35 9.21 24.2 294924aff67e879595e55f15b10a79ef-grid-color-12-14-6-cb.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2a43c3327fb817d82496449265d6630d-mdp-36-16-unsat.cnf
226.36 1.0 227.44 1.0 196.17 1.15 186.3 1.22 156.62 1.45 178.37 1.27 178.56 1.27 2c0379771c5313567ea9e230438f203f-reconf20_320_hc-square-2_1.cnf
556.46 1.0 486.35 1.14 395.05 1.41 275.05 2.02 197.71 2.81 107.13 5.19 74.24 7.5 2c7cb0ff324a42a0699c23317c97a29a-6s320rb1_Iter8.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2d01c7744a990469354a3c53cc2727fb-rphp_p95_r95.cnf
762.17 1.0 679.1 1.12 784.73 0.97 697.04 1.09 522.91 1.46 316.39 2.41 209.78 3.63 2f9cb22859718ab6c201726a91cfefe1-aws-encryption-sdk-c:aws_cryptosdk_priv_try_gen_key.cnf
3234.84 1.0 3573.63 0.91 3110.66 1.04 3036.23 1.07 1811.77 1.79 1495.56 2.16 1036.83 3.12 30ca21da9753263cc8cda020802b58ce-GP_500_200_20.cnf
107.31 1.0 44.01 2.44 23.95 4.48 15.28 7.02 9.32 11.52 5.69 18.86 4.74 22.64 3159a02d096424aab6295c76360633a9-SCPC-500-10.cnf
45.22 1.0 56.59 0.8 3.97 11.39 7.08 6.38 3.96 11.42 3.34 13.54 4.55 9.94 3176c9024f756e99dbee852e5c0aa578-Break_triple_12_30.xml.cnf
10000 1.0 10000 1.0 834.92 11.98 948.41 10.54 996.79 10.03 911.39 10.97 739.12 13.53 31cc22a0f42ebaa109a5b807eb6178c2-Break_20_54.xml.cnf
34.99 1.0 54.07 0.65 43.43 0.81 33.32 1.05 19.84 1.76 8.67 4.04 7.82 4.47 324e19a2991a29d0765ad256fb7aee85-j3037_9_gmto_b.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 34c2410669b8063d4b0a16a40b071536-sum_of_three_cubes_still_open_large.cnf
1867.22 1.0 111.14 16.8 256.37 7.28 272.84 6.84 90.19 20.7 421.4 4.43 269.21 6.94 351746fa3de2464c903c85e726cfed55-linked_list_swap_contents_safety_unwind67.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 4532.92 2.21 1725.7 5.79 1438.47 6.95 354936f86e55ab8d00e6e1f5f7c140a9-xor_op_n44_d3.cnf
10000 1.0 1334.52 7.49 1388.73 7.2 1140.19 8.77 1258.06 7.95 1003.61 9.96 708.31 14.12 354c2088ae7648e1dc51d12947c8043a-bobsmdct_init_k88.cnf
1273.5 1.0 717.6 1.77 782.05 1.63 642.11 1.98 410.2 3.1 538.33 2.37 380.2 3.35 35ad744923721e37a2f58443179c31a8-coreMQTT:MQTT_SerializeConnect.cnf
1377.51 1.0 1304.33 1.06 1150.06 1.2 1177.82 1.17 800.65 1.72 636.32 2.16 480.81 2.87 3666617901c8500d78700dac959729d4-pj2002_k9.cnf
3651.11 1.0 2442.97 1.49 634.96 5.75 315.96 11.56 685.44 5.33 246.9 14.79 328.68 11.11 367c25ad50259a685a25b86d6dd171b2-GP_100_950_33.cnf
50.43 1.0 101.9 0.49 14.27 3.53 11.33 4.45 17.41 2.9 13.04 3.87 6.01 8.39 36ecf4ba0451f40e4ede9a1b2ab914f7-af-synthesis_stb_50_200_4_sat.cnf
663.64 1.0 527.54 1.26 337.77 1.96 225.16 2.95 137.87 4.81 75.91 8.74 52.21 12.71 372021735d9e46002b862aa2a038a818-j3045_4_rggt_bm1.cnf
10000 1.0 10000 1.0 10000 1.0 2805.9 3.56 1877.19 5.33 996.91 10.03 666.24 15.01 39b3fde35939134f3b011ebb31842610-PancakeVsInsertSort_9_4.cnf
147.43 1.0 108.08 1.36 33.83 4.36 48.57 3.04 12.62 11.68 8.6 17.14 7.83 18.83 3b97191d94abf3a5e97d6359d886d9df-summle_X111121_steps7_I1-2-2-4-4-8-25-100.cnf
10000 1.0 2430.43 4.11 2193.86 4.56 2163.24 4.62 2048.5 4.88 2245.1 4.45 1909.84 5.24 3cbd82017c4a304c014dd87a69f6028c-bmc_QICE_req_sfl_30.cnf
296.17 1.0 407.53 0.73 150.87 1.96 87.93 3.37 82.95 3.57 52.38 5.65 37.48 7.9 3d2a6e5c2f8f58dee79fd50444009625-cfi-rigid-z2-0088-03-or_2_shuffle_all.cnf
348.59 1.0 246.74 1.41 97.07 3.59 99.78 3.49 58.13 6.0 48.19 7.23 36.21 9.63 3d2b0088dccf11d1f82c89b7122c26e1-cfi-rigid-z2-0088-01-or_2_shuffle_all.cnf
10000 1.0 10000 1.0 4816.56 2.08 3204.39 3.12 2320.5 4.31 1815.58 5.51 1188.63 8.41 3d449de3d6e722c9ce4a38ec748ee3cf-sudoku-N30-10.cnf
3128.46 1.0 2174.27 1.44 1725.77 1.81 1221.87 2.56 943.47 3.32 541.52 5.78 356.6 8.77 3d4beaebb3d87819ce9ff59e72047ef7-sudoku-N30-20.cnf
3032.01 1.0 384.69 7.88 529.17 5.73 282.35 10.74 18.2 166.55 113.48 26.72 141.47 21.43 3e2fe1556893706475f9dd19c1a7b8fe-mdp-32-12-sat.cnf
183.43 1.0 162.06 1.13 96.26 1.91 234.76 0.78 59.6 3.08 428.69 0.43 450.68 0.41 3fb045f58aaf394165735c39c49fad92-linked_list_swap_contents_safety_unwind56.cnf
0.9 1.0 0.67 1.34 2.22 0.41 0.54 1.67 0.42 2.14 0.39 2.34 0.37 2.44 3fb297f59ad2dc32fd3f79d61951d8cb-Carry_Bits_Fast_4.cnf.cnf
116.81 1.0 53.02 2.2 30.95 3.77 20.74 5.63 11.82 9.88 6.58 17.74 5.73 20.37 3ff263696219ca9e301b0a1b345eb9aa-SCPC-500-4.cnf
1924.64 1.0 1096.5 1.76 840.77 2.29 511.44 3.76 374.69 5.14 210.94 9.12 157.06 12.25 41423c03ef173a5b81d6e6776f316fa5-PancakeVsInsertSort_7_8.cnf
1603.14 1.0 1630.28 0.98 1414.65 1.13 1590.16 1.01 1367.45 1.17 1152.03 1.39 891.04 1.8 4348c6b9af237291558b154a9de82969-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_aad.cnf
204.47 1.0 150.62 1.36 111.64 1.83 73.03 2.8 58.26 3.51 30.47 6.71 22.27 9.18 43687a48fb119ca61b47c2fc69a71e7d-manthey_single-ordered-initialized-w42-b8.cnf
37.27 1.0 31.96 1.17 33.1 1.13 30.4 1.23 30.28 1.23 33.3 1.12 30.16 1.24 436d00b6d41912e800e9855d08c75139-manol-pipe-f7nidw.cnf
636.74 1.0 587.88 1.08 395.08 1.61 412.94 1.54 287.2 2.22 434.23 1.47 249.66 2.55 4408f3ebfc37275a23ef57cfcc8aba6d-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_content_type.cnf
697.21 1.0 673.12 1.04 204.89 3.4 238.79 2.92 27.98 24.92 37.33 18.68 57.87 12.05 44ed91b4ca5a5d8323cab4c268d81fd1-grid-color-12-14-12-cb.cnf
1051.01 1.0 1296.19 0.81 731.79 1.44 18.05 58.24 47.18 22.28 45.95 22.87 35.42 29.67 4501f9a0e9fab5d5cff7133022b1f780-50bits_11.dimacs.cnf
134.49 1.0 119.5 1.13 103.84 1.3 70.71 1.9 55.32 2.43 32.38 4.15 26.65 5.05 4513c58c16e72a34f9f8518db7baeb9e-ktf_TF-3.tf_3_0.02_24.cnf
1322.33 1.0 695.08 1.9 1045.07 1.27 806.11 1.64 445.13 2.97 371.14 3.56 377.47 3.5 4551c996fc6f5fbe62b43076abb25077-knight_18.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 45784477d3143f470c0bd0137a1c01ed-sum_of_three_cubes_still_open.cnf
10000 1.0 0.1 96153.85 0.11 89285.71 0.15 64516.13 0.12 86956.52 0.13 77519.38 0.08 126582.28 45ec40c74fdbf2fe41122ac1e31e6c8e-worker_30_120_30_0.8.cnf
190.44 1.0 185.35 1.03 168.22 1.13 154.7 1.23 110.41 1.72 110.33 1.73 96.37 1.98 47135a1fd4c86afbfec0c7879c45268b-SC22_Timetable_C_451_E_46_Cl_30_S_27.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 47a1a6f5687ed19c5c0f77c2c81f3f81-tseitin_grid_n14_m14.cnf
114.64 1.0 78.22 1.47 52.57 2.18 39.37 2.91 25.2 4.55 15.3 7.49 12.01 9.55 488b147304549670f31653c932684e2c-sin-mitern28.cnf
65.26 1.0 61.34 1.06 13.38 4.88 9.22 7.08 21.3 3.06 8.17 7.99 11.48 5.68 48e9f29a92930f1b367efc5754cb679b-af-synthesis_stb_50_80_7_sat.cnf
140.39 1.0 64.52 2.18 40.14 3.5 24.73 5.68 12.72 11.03 7.69 18.26 5.76 24.38 48eacbc152c7710dfd6fe17a8a17199e-SCPC-500-7.cnf
22.25 1.0 12.41 1.79 31.33 0.71 21.12 1.05 8.53 2.61 3.19 6.98 8.12 2.74 49f5d904bb2e762219287d33f5621971-ITC2021_Late_1.xml.cnf
10000 1.0 10000 1.0 10000 1.0 3958.27 2.53 2090.54 4.78 1002.01 9.98 716.07 13.97 4a85e090bda23cef9bf2aed55d489ab6-sin_depth_miter_5.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 4af0fbe3087b6e3ad54177e16b85ed06-grid-color-14-14-6-cb.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 4b45bebcc3f810b25cca2d16a1ff2084-hyp_cec_multi_3.cnf
385.59 1.0 361.67 1.07 384.21 1.0 344.81 1.12 257.75 1.5 259.18 1.49 151.33 2.55 4b537d3c18082eb884bf9429b8146214-gaussian.c.75.smt2-cvc4.cnf
53.25 1.0 43.55 1.22 50.83 1.05 60.05 0.89 49.68 1.07 50.99 1.04 53.97 0.99 4db2404ba78dda6f3bc89a2b03057fd2-intel036_Iter109.cnf
609.82 1.0 393.13 1.55 277.7 2.2 186.84 3.26 128.84 4.73 89.59 6.81 71.39 8.54 4f888358cd62fe7bc602ea6882cdfc6d-bivium-40-200-0s0-0x92fc13b11169afbb2ef11a684d9fe9a19e743cd6aa5ce23fb5-19.cnf
34.57 1.0 1.74 19.9 1.07 32.28 0.98 35.17 1.23 28.01 0.94 36.97 1.22 28.27 5099718e4b5b8fe2ba7f8b919fdfde2d-satcoin-genesis-SAT-5.cnf
10000 1.0 10000 1.0 10000 1.0 4398.69 2.27 2431.62 4.11 1342.75 7.45 990.75 10.09 51dd2c14736f2d9164f749d6a633ccb5-j3045_10_mdd_bm1.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 51e4929accfa3a0e68bff09974c7f0f4-SAT_MS_sat_nurikabe_p16.pddl_166.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 5237a944490aeead04c7a4539e6b44d2-SC22_Timetable_C_451_E_43_Cl_30_S_27.cnf
167.79 1.0 206.24 0.81 330.85 0.51 6.12 27.43 51.34 3.27 17.68 9.49 5.11 32.86 5457c05649be6f3bc4f743c5e6086a18-mdp-28-10-sat.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 54d4838f065e6ca3579b357bc70ea566-div_miter_lec_4.cnf
281.57 1.0 88.36 3.19 20.89 13.48 45.44 6.2 46.52 6.05 34.92 8.06 29.23 9.63 5573681b2f40d5d8b30267ac59987e40-Carry_Bits_Fast_16.cnf.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 55add9c1c8ad002a0faa34ecf47919a1-SC22_Timetable_C_451_E_45_Cl_30_S_27.cnf
780.48 1.0 271.76 2.87 14.46 53.96 93.5 8.35 52.61 14.83 10.44 74.74 9.11 85.7 5601a7e094f61f3c5af461300c25243f-summle_X111107_steps8_I1-2-2-4-4-8-25-100.cnf
125.11 1.0 67.41 1.86 54.33 2.3 41.87 2.99 34.22 3.66 22.72 5.51 19.57 6.39 567964f034c8ffa65952897ce4927c6c-ablmulub16x4o.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 56e7489da32260e1bdd085a418592ec2-cliquecoloring_n18_k6_c5.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 5796ee4ac65929640e1b67ae2bfb9e8e-div_miter_lec_3.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 3970.31 2.52 2520.89 3.97 59047491e4828ed2bb79572330df6f77-mdp-32-16-unsat.cnf
416.07 1.0 301.38 1.38 260.99 1.59 230.64 1.8 178.24 2.33 123.15 3.38 91.0 4.57 594b07c07aee036a7aca35d44e2316da-div-mitern168.cnf
815.04 1.0 800.57 1.02 866.29 0.94 827.82 0.98 474.48 1.72 511.58 1.59 359.53 2.27 59e596f5f845a2487370950b37ec3db2-aws-encryption-sdk-c:aws_cryptosdk_enc_ctx_size.cnf
0.42 1.0 1.08 0.39 1.81 0.23 0.44 0.96 0.46 0.91 0.41 1.02 0.31 1.36 5ac44f542fd2cd4492067deb7791629a-Carry_Bits_Fast_18.cnf.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 5c54a96de5bbfbfe9152afbc8822588d-cliquecoloring_n60_k5_c4.cnf
23.13 1.0 10.15 2.28 2.87 8.06 2.69 8.58 3.72 6.22 2.27 10.2 1.85 12.52 5c5fa629c2c62723eb2d3388db264521-Wallace_Bits_Fast_3.cnf.cnf
10000 1.0 0.08 119047.62 0.08 128205.13 0.07 138888.89 0.09 109890.11 0.05 217391.3 0.07 149253.73 5c6495ff589cbbcb550e1655dadbd143-worker_40_80_35_0.85.cnf
275.65 1.0 196.63 1.4 193.86 1.42 131.65 2.09 145.86 1.89 72.12 3.82 32.35 8.52 5cc5e3d24402696ed4ec03edfa42d663-sudoku-N30-24.cnf
55.31 1.0 10000 0.01 96.45 0.57 114.75 0.48 133.52 0.41 133.6 0.41 123.48 0.45 5d357f1e4b5abc96c90d305f629edd5c-ps_200_323_70.cnf
62.04 1.0 50.04 1.24 49.05 1.26 41.45 1.5 39.13 1.59 28.41 2.18 24.5 2.53 5e04f38ff11cee5d75fb98e12f6a14fc-sqrt-mitern172.cnf
122.2 1.0 66.61 1.83 55.59 2.2 31.71 3.85 7.89 15.5 8.02 15.23 9.06 13.49 5e25f9f0d4ef05401fd9ab45a2538c1c-summle_X111117_steps8_I1-2-2-4-4-8-25-100.cnf
575.09 1.0 97.54 5.9 275.24 2.09 185.07 3.11 57.9 9.93 59.27 9.7 16.32 35.23 5e66b728b2445ec69f27e0f1a49f4b29-006.cnf
134.52 1.0 203.23 0.66 191.72 0.7 125.79 1.07 116.43 1.16 104.56 1.29 107.09 1.26 5e933a625099cc1ec6a8299a7848a2ae-Kakuro-easy-112-ext.xml.hg_7.cnf
917.55 1.0 627.92 1.46 389.08 2.36 204.38 4.49 118.8 7.72 68.61 13.37 46.46 19.75 5f24ae73bb2a0ec3bef68d8a9680f04f-af-synthesis_stb_50_80_7_unsat.cnf
199.61 1.0 108.98 1.83 52.09 3.83 8.9 22.44 21.17 9.43 13.23 15.08 9.63 20.72 5ff92b9fa31963608674761e0d71fce8-sv-comp19_prop-reachsafety.triangular-longer_false-unreach-call.i-witness.cnf
77.66 1.0 13.5 5.75 29.91 2.6 21.66 3.58 12.5 6.21 6.73 11.54 12.57 6.18 608941b989227d93c62b3a9b4280011b-summle_X8639_steps8_I1-2-2-4-4-8-25-100.cnf
10000 1.0 10000 1.0 10000 1.0 2411.11 4.15 1368.82 7.31 826.03 12.11 613.71 16.29 60a0ab2650e08f32c4fff6ff09369568-eqsparcl12bpwtrc12.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 61175b10026fe42cadd5e2f0088684ea-6s105_Iter99.cnf
83.19 1.0 27.95 2.98 118.7 0.7 59.44 1.4 65.51 1.27 17.47 4.76 8.58 9.7 622787535593269d5e9a1dc4fe01c4af-atco_enc1_opt2_10_16-sc2014.cnf
40.79 1.0 16.33 2.5 12.65 3.22 8.85 4.61 6.55 6.22 4.72 8.63 4.32 9.44 65138afdf7eb054be5131f2b0de84369-satch2ways12u.cnf
10000 1.0 10000 1.0 10000 1.0 3178.0 3.15 1936.27 5.16 1182.86 8.45 771.89 12.96 65514d6ff224df20ba8c1aeec1698ab6-PancakeVsInsertSort_8_7.cnf
10000 1.0 4145.69 2.41 1587.81 6.3 2468.47 4.05 585.24 17.09 297.23 33.64 244.41 40.91 6901858f1edbe3b1d327902dab720326-reconf20_20_grid10_4_4957.cnf
81.23 1.0 4.38 18.53 2.99 27.18 4.21 19.3 6.42 12.64 1.76 46.05 1.52 53.37 6965d5369d3ab26daaf074303c3d1739-mp1-squ_ali_s10x10_c39_abix_SAT.cnf
792.16 1.0 705.8 1.12 490.49 1.62 352.04 2.25 243.96 3.25 164.27 4.82 109.95 7.2 6a3e3d3a65a46608b44d81f9e4621087-6s105_Iter35.cnf
2286.97 1.0 3273.23 0.7 2198.09 1.04 645.53 3.54 1588.88 1.44 599.93 3.81 292.77 7.81 6b0dfcfa8cf0c0564f17ec0a5434b5b9-ITC2021_Early_4.xml.cnf
980.0 1.0 372.41 2.63 333.66 2.94 318.81 3.07 254.84 3.85 244.37 4.01 229.0 4.28 6b630aa05142274d965c8fc019db511e-bmc_QICE_rxrsp_vld_30.cnf
462.67 1.0 8.71 53.12 165.93 2.79 32.51 14.23 13.56 34.12 4.86 95.28 6.34 72.98 6b7e3415d7bd20be605b1f9723c43d68-Carry_Bits_Fast_5.cnf.cnf
1105.22 1.0 359.31 3.08 51.05 21.65 222.02 4.98 64.06 17.25 88.98 12.42 74.09 14.92 6c34b7032712e16b08d97a0449d610e2-puzzle30_sat.cnf
4.21 1.0 0.28 15.25 0.3 13.89 0.38 11.2 0.31 13.71 0.4 10.55 0.39 10.74 6d815089fb4095208754622b4c44a8f7-Carry_Bits_Fast_12.cnf.cnf
1449.28 1.0 1318.29 1.1 1196.39 1.21 769.11 1.88 453.09 3.2 233.27 6.21 157.95 9.18 6dd57612dab7692b8c38225bb852ce36-hwmcc15deep-6s516r-k18-sc2017.cnf
4144.84 1.0 1276.39 3.25 839.69 4.94 158.61 26.13 5.04 823.04 52.3 79.25 16.31 254.18 6e1b970d637fca70d08b251766edade3-Nb8T61.cnf
3841.96 1.0 4379.57 0.88 3743.51 1.03 4468.06 0.86 3100.59 1.24 3289.06 1.17 2636.14 1.46 6e3015f2ce1f17e4f2b81dae06d73eec-gus-md5-11.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 6e3ba15d8b33f40738f7e7d7355799a5-SC22_Timetable_C_436_E_41_Cl_29_S_27.cnf
321.93 1.0 169.04 1.9 102.96 3.13 64.41 5.0 33.75 9.54 19.21 16.76 14.31 22.49 6f956a3f95ccaf35a3de1fe72b9cf79e-soelberg_unit_109.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 159.97 62.51 6fa8b4b7f4b059bd46913dbe741c0b94-mdp-36-11-sat.cnf
472.27 1.0 3010.33 0.16 344.24 1.37 159.47 2.96 238.73 1.98 41.34 11.42 20.51 23.02 6fb0757ee018642fedd0669aad3882fe-grid-color-12-14-10-cb.cnf
46.83 1.0 7.51 6.23 11.12 4.21 12.04 3.89 7.25 6.46 6.33 7.4 5.28 8.87 7016d1da3fdfe543de3b95f96a9ffe4c-summle_X8651_steps8_I1-2-2-4-4-8-25-100.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 7018eff980d8183192d7a309e508b320-grid-color-14-14-10-cb.cnf
175.27 1.0 293.37 0.6 84.52 2.07 20.75 8.45 18.36 9.55 17.3 10.13 33.92 5.17 70289686a242c8380ca26bda45ad1278-summle_X111104_steps6_I1-2-2-4-4-8-25-100.cnf
257.0 1.0 198.86 1.29 177.99 1.44 134.65 1.91 113.56 2.26 65.11 3.95 54.05 4.76 7101289c67f4c4ba117ad06ebb7d18a0-6s184.cnf
3104.58 1.0 1778.34 1.75 2405.7 1.29 778.8 3.99 1323.85 2.35 565.2 5.49 391.44 7.93 72329bc80f5f55dcc356a22f3f11ebec-GP_200_313_5.cnf
115.38 1.0 54.53 2.12 36.76 3.14 22.07 5.23 10.15 11.37 7.1 16.26 5.34 21.61 73ef1e87dbb7965ecb558e62dedb3a0c-SCPC-500-8.cnf
49.09 1.0 43.48 1.13 33.39 1.47 31.8 1.54 39.9 1.23 110.06 0.45 80.07 0.61 7703f7d1901ff09a0f177c52a1a7c107-linked_list_swap_contents_safety_unwind43.cnf
215.02 1.0 616.28 0.35 340.63 0.63 5.42 39.71 6.0 35.81 8.07 26.65 2.15 100.2 78a0e76b68b536e2ea7d801fc6061cd2-grid-color-12-14-14-cb.cnf
271.13 1.0 329.47 0.82 211.41 1.28 179.35 1.51 118.94 2.28 74.98 3.62 41.4 6.55 78cdffdf5bbb89beb753f9ffab7fa45f-sudoku-N30-6.cnf
1098.82 1.0 1152.27 0.95 589.76 1.86 190.78 5.76 140.85 7.8 107.13 10.26 59.37 18.51 7993005e2949524b293b216ed9c65126-cfi-rigid-s2-0064-03-or_2_shuffle_all.cnf
232.8 1.0 120.68 1.93 67.55 3.45 43.14 5.4 23.27 10.0 12.19 19.1 8.48 27.44 7a236bb9e1566b80fa7b593a7e973efa-SCPC-500-16.cnf
229.54 1.0 517.62 0.44 31.24 7.35 97.2 2.36 4.94 46.44 8.89 25.82 37.21 6.17 7a67847b81b414d659f005200cf56f6b-size_5_5_5_i198_r12.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 3439.28 2.91 1796.66 5.57 7ab6615515ffc5ceb8f6bd440d159c3d-pj2016_k80.cnf
35.93 1.0 24.23 1.48 17.25 2.08 11.75 3.06 5.55 6.48 4.7 7.65 4.57 7.86 7acf6cf25ddaf2ab98106e0bb3b9ddb1-af-synthesis_stb_50_140_3_sat.cnf
154.58 1.0 325.88 0.47 201.04 0.77 234.77 0.66 208.12 0.74 150.43 1.03 122.36 1.26 7adc1ade3384505af00ff8f7be23f5bd-ex175_20.cnf
11.76 1.0 19.12 0.62 21.04 0.56 20.31 0.58 19.11 0.62 23.96 0.49 21.02 0.56 7af73f846548141cc97b8a149a20bfbf-vlsat2_57038_10572502.dimacs.cnf
27.22 1.0 37.53 0.73 20.44 1.33 10.89 2.5 12.29 2.21 5.24 5.19 7.82 3.48 7b933d3e6b425772ed19eb0fec52bbf9-j3037_1_rggt_b.cnf
1180.64 1.0 313.02 3.77 288.11 4.1 121.96 9.68 99.78 11.83 90.59 13.03 77.67 15.2 7c15baa29f2228703e5161bfabd91773-reconf10_140_queen6_1.cnf
2198.71 1.0 1261.24 1.74 171.65 12.81 215.52 10.2 223.59 9.83 82.32 26.71 180.21 12.2 7c6a06895899eab7cb83b658898ac327-reconf10_145_queen6_2.cnf
2279.94 1.0 1059.76 2.15 305.51 7.46 34.43 66.21 165.79 13.75 139.28 16.37 72.32 31.52 7d2199baf2526263b5f753d290d2790b-md4__zeroOut_19__freeIn_23__seed_2.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 7d9025b2f7e76f783a4ae5e8c9bf8e5c-4d_euler_bricks.cnf
1247.41 1.0 961.61 1.3 799.32 1.56 588.12 2.12 374.28 3.33 232.96 5.35 159.05 7.84 7e5396d6b00b82c2fc0ea1d7c6505afd-manthey_single-ordered-initialized-w50-b7.cnf
10000 1.0 10000 1.0 10000 1.0 3689.57 2.71 2349.14 4.26 1344.62 7.44 780.31 12.82 7e9318578a6bdd7dfa9fc261be8a0839-PancakeVsSelectionSort_7_7.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 7edaa759315f3762eee756c5bb843599-SC22_Timetable_C_436_E_42_Cl_29_S_27.cnf
0.4 1.0 1.18 0.34 1.34 0.3 1.3 0.31 1.21 0.33 1.12 0.36 1.67 0.24 7efdf72de31fa82aeceb7acbc29a59bf-vlsat2_113_1150.cnf
31.03 1.0 56.19 0.55 20.22 1.53 20.3 1.53 29.8 1.04 20.69 1.5 21.78 1.42 7f09f477d319cd79821c80504aa06a6e-Break_16_56.xml.cnf
326.51 1.0 168.71 1.94 114.7 2.85 57.78 5.65 30.86 10.58 17.21 18.97 10.81 30.2 7f4d55b70c61ffc611a58e01d52c19bb-SCPC-500-11.cnf
2921.34 1.0 2632.36 1.11 1517.99 1.92 1235.23 2.37 809.21 3.61 697.95 4.19 431.06 6.78 7fe153ced2c966dcdeb42b6714b4d6b7-sudoku-N30-11.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 7ff8c9781b3ada449ce489cdf444a760-Break_unsat_10_15.xml.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 80023e9fd0e627f71c2d953432613b5f-hyp_cec_multi_4.cnf
30.14 1.0 32.89 0.92 18.44 1.63 10.36 2.91 6.53 4.61 6.94 4.34 4.99 6.05 807133f4461a11e39a390dfcf67a4fc6-summle_X11113_steps8_I1-2-2-4-4-8-25-100.cnf
2151.1 1.0 2457.93 0.88 1834.02 1.17 1598.5 1.35 751.63 2.86 365.46 5.89 115.86 18.57 810ce4a78bc01ddc5a043d95f9584f2f-005-80-12.cnf
288.03 1.0 124.01 2.32 77.52 3.72 27.1 10.63 15.89 18.13 10.27 28.04 8.81 32.7 81b674a2aa6fbda9b06cf8ea334ddc44-beempgsol2b1.cnf
10000 1.0 4084.54 2.45 2764.79 3.62 1852.89 5.4 1102.39 9.07 628.0 15.92 447.87 22.33 81e73c41a76d7b432cf86c43ffe23986-PancakeVsInsertSort_8_6.cnf
3632.09 1.0 2703.96 1.34 2029.94 1.79 1451.21 2.5 1047.28 3.47 814.06 4.46 531.18 6.84 85aa1f0820da17412b8ee803b4a85207-sudoku-N30-4.cnf
241.0 1.0 146.12 1.65 82.77 2.91 34.76 6.93 23.25 10.36 12.79 18.84 8.64 27.89 885c0d25480fe4db3cd5d3b4bc044e76-SCPC-500-17.cnf
364.93 1.0 245.01 1.49 247.07 1.48 129.12 2.83 49.42 7.38 46.3 7.88 21.54 16.94 889b6d29998ade866e64c46f807a98bc-6s320rb1_Iter9.cnf
99.52 1.0 214.79 0.46 190.12 0.52 48.06 2.07 184.81 0.54 141.0 0.71 117.01 0.85 88bfa72210baef40a2903d95044dc19d-linked_list_swap_contents_safety_unwind40.cnf
3860.82 1.0 10000 0.39 10000 0.39 10000 0.39 3042.14 1.27 857.25 4.5 1354.11 2.85 8aee61ed27bf700a548ca9c097203749-SAT_MS_sat_snake_p01.pddl_39.cnf
31.03 1.0 23.45 1.32 16.53 1.88 19.12 1.62 14.6 2.12 10.32 3.01 11.19 2.77 8bb5819a23a8f1dff851d608bec008ca-ITC2021_Late_6.xml.cnf
10000 1.0 0.11 87719.3 0.12 86206.9 0.12 82644.63 0.1 98039.22 0.06 169491.53 0.07 140845.07 8bfbffbfea9e5a5993bc024f39adff84-worker_40_80_40_0.85.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 8c0af30cc2a89e3fee97852633bed956-div_miter_lec_1.cnf
511.56 1.0 656.86 0.78 533.03 0.96 501.79 1.02 407.2 1.26 318.89 1.6 195.13 2.62 8c8b72ac19c0f93813b614a18abaf512-aws-encryption-sdk-c:aws_cryptosdk_keyring_trace_eq.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 8e659f42dd85a193fccc9cbbcc4627ed-sum_of_three_cubes_3_unknown_representation.cnf
10000 1.0 10000 1.0 4970.29 2.01 3183.75 3.14 10000 1.0 3103.71 3.22 1560.81 6.41 8efdd60faa21ddcace492bff0479408b-Break_triple_20_54.xml.cnf
3367.82 1.0 2276.31 1.48 2682.36 1.26 1456.9 2.31 1109.02 3.04 584.89 5.76 413.76 8.14 8f3d4a4fedf4689ae0e6df362478d551-PancakeVsSelectionSort_7_6.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 90add18e4ee4facb4f37737a9a2602cc-SC22_Timetable_C_436_E_40_Cl_29_S_27.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 90e839c4b05d4a7ac011435921551060-SC22_Timetable_C_436_E_43_Cl_29_S_27.cnf
565.74 1.0 101.3 5.59 220.89 2.56 49.94 11.33 173.89 3.25 190.33 2.97 159.78 3.54 90ec6ff35305fed1d9a87a3ecd87238b-linked_list_swap_contents_safety_unwind48.cnf
2471.08 1.0 10000 0.25 10000 0.25 10000 0.25 848.43 2.91 399.64 6.18 220.09 11.23 918ca8da0cbca88dcd34b0a6dec2b770-GP_100_950_32.cnf
58.09 1.0 27.2 2.14 17.92 3.24 11.54 5.03 8.2 7.08 4.7 12.37 3.74 15.52 920bbe559da4ea37fd636605316a791c-SCPC-500-19.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 925c82e25f5391fc2f1f7a4a9e093cec-6s186_Iter99.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 928436a6e8edbcde2d82504a85c88853-rphp_p90_r90.cnf
4124.23 1.0 10000 0.41 3591.59 1.15 637.95 6.46 716.1 5.76 431.17 9.57 256.34 16.09 93695f689b57cdb57c9b6d0d726e0f53-Break_triple_18_48.xml.cnf
115.1 1.0 25.66 4.48 17.99 6.4 12.81 8.99 13.4 8.59 6.46 17.83 5.93 19.4 95c00d0ae51d5d0a2a931ce82b77701f-af-synthesis_stb_50_140_0_sat.cnf
172.14 1.0 123.8 1.39 10.96 15.71 21.51 8.0 20.56 8.37 12.72 13.53 5.92 29.1 96f6aab24720f070a02e637f7252b482-grid-color-12-14-8-cb.cnf
10000 1.0 10000 1.0 4604.3 2.17 1935.18 5.17 470.32 21.26 962.42 10.39 812.72 12.3 98dbd257808e551fd26cad78ba520955-ITC2021_Late_2.xml.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 9954ccd77da65ad003b73bf38de3bd78-4d_perfect_euler_bricks.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 9cdf94203777c9f036f412bef1cc7c85-tseitin_n196_d3.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2202.81 4.54 10000 1.0 9cea216ba8c5051e489af11150504ba6-Break_20_36.xml.cnf
957.81 1.0 847.82 1.13 939.31 1.02 673.48 1.42 543.94 1.76 411.64 2.33 341.58 2.8 9e35558ea8ffba630cd8c8f90e14af14-string_compare_safety_cbmc_unwinding_730.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 9f7ec7ef3a908c2e93b5553670a207b1-rphp_p14_r14.cnf
47.88 1.0 35.57 1.35 26.87 1.78 18.57 2.58 11.26 4.25 7.86 6.09 6.57 7.28 9f901378a6feabcc94019a018a70d42b-sin-mitern29.cnf
503.92 1.0 284.41 1.77 247.67 2.03 157.83 3.19 97.17 5.19 54.97 9.17 38.13 13.22 a09b0e7764666af044fa7e63dd7e7aef-PancakeVsSelectionSort_8_3.cnf
2173.9 1.0 1091.07 1.99 768.15 2.83 560.47 3.88 379.82 5.72 330.46 6.58 319.53 6.8 a0e98fd44b74e6f255ca1e5a20bc01fd-cfi-rigid-d3-0180-02-orig.cnf
42.16 1.0 24.7 1.71 18.2 2.32 9.8 4.3 6.83 6.18 4.87 8.66 4.53 9.32 a1158a2d8c8a1c6da02c2c4fcb32337f-6s158_Iter2.cnf
71.15 1.0 53.14 1.34 57.95 1.23 53.18 1.34 43.61 1.63 34.72 2.05 28.93 2.46 a130a3f95891daed1bfd71c77bd2d8a1-SAT_dat.k80.cnf
1203.01 1.0 760.86 1.58 519.11 2.32 343.65 3.5 201.39 5.97 123.47 9.74 78.14 15.4 a2609893b71f219f4635d33ef1ff6eca-j3045_4_gmto_bm1.cnf
10000 1.0 10000 1.0 3329.41 3.0 2450.03 4.08 1364.33 7.33 734.97 13.61 521.68 19.17 a2bdae1f9d9695e8cf80cfbbd5f7d61f-PancakeVsSelectionSort_8_4.cnf
123.25 1.0 67.83 1.82 42.73 2.88 25.05 4.92 14.41 8.55 7.7 16.01 5.74 21.46 a33d32bb816c0da62c7d946c18286a0d-SCPC-500-2.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2988.93 3.35 a42230be4432b010789b6f97b090343c-soelberg_unit_223.cnf
1531.7 1.0 0.03 49409.68 0.04 38292.5 0.05 31259.18 0.04 39274.36 0.03 56729.63 0.04 40307.89 a4451734e7f5f2ce7b481688a693c4e9-worker_20_20_16_0.9.cnf
10000 1.0 10000 1.0 530.89 18.84 216.64 46.16 1392.52 7.18 493.37 20.27 270.67 36.95 a44fce1796383ea31df08af3b0f65db3-soelberg_unit_159.cnf
563.37 1.0 381.71 1.48 91.15 6.18 334.01 1.69 163.47 3.45 102.77 5.48 54.36 10.36 a4bffff28417d6b4d72f7b9122988ba5-reconf10_68_queen15_2.cnf
476.09 1.0 81.48 5.84 75.92 6.27 76.5 6.22 68.17 6.98 78.6 6.06 76.0 6.26 a58badecf3c901594f06d021f54c3a11-aws-c-common:aws_priority_queue_s_sift_either.cnf
90.38 1.0 97.73 0.92 78.33 1.15 79.46 1.14 82.03 1.1 65.16 1.39 60.94 1.48 a5e0082efb1da4dabaa165c2bda5f85e-linked_list_swap_contents_safety_unwind41.cnf
79.97 1.0 51.95 1.54 38.4 2.08 25.41 3.15 17.26 4.63 11.87 6.74 9.4 8.5 a65dfd8b3468d202ff3ba8731018622e-j3037_10_gmto_bm1.cnf
223.06 1.0 141.46 1.58 95.17 2.34 46.15 4.83 33.37 6.68 15.65 14.25 11.53 19.34 a7aac5c83f236fd8b3de3275e3f5499d-edit_distance041_183.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 a7b23445c21b27eb3c918c1e96ba25df-hyp_cec_multi_1.cnf
596.52 1.0 693.51 0.86 640.88 0.93 669.13 0.89 631.85 0.94 886.77 0.67 830.49 0.72 a7cb2567e1f5b7ec2f4ba09931e29b96-s2n:s2n_stuffer_write_base64.cnf
650.13 1.0 612.12 1.06 414.96 1.57 283.34 2.29 175.67 3.7 134.4 4.84 105.6 6.16 aa4638ca3654f1a300c809125a3133ee-6s22_Iter57.cnf
4004.83 1.0 877.31 4.56 358.01 11.19 83.49 47.97 157.43 25.44 66.37 60.34 16.52 242.48 aad5bbe8920c5afc84068bb1da27ee8f-LABS_n041_goal003.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 ab660e179140ea816eca23098fd50078-sum_of_three_cubes_33_unknown_representation.cnf
250.73 1.0 111.4 2.25 97.1 2.58 111.91 2.24 80.34 3.12 67.55 3.71 48.19 5.2 ac6256657058fe65dc7ddaf773ab83bf-SC21_Timetable_C_527_E_71_Cl_35_S_35.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 4245.25 2.36 2542.01 3.93 ae5f6e83a289d226a353efd95b663717-6s22_Iter99.cnf
351.17 1.0 260.44 1.35 207.83 1.69 188.62 1.86 143.9 2.44 80.88 4.34 36.68 9.57 af63ce577d1fea121ba80b4b1d148f0c-sudoku-N30-22.cnf
10000 1.0 10000 1.0 4485.58 2.23 1459.81 6.85 10000 1.0 913.88 10.94 525.14 19.04 af834fd3ce15078d2ab055c996758c00-sum_of_three_cubes_33_known_representation.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 b043968ec004b4ac19eb31926c24d22c-mdp-36-11-unsat.cnf
73.7 1.0 3.56 20.7 32.41 2.27 1.1 66.7 0.98 75.2 3.36 21.91 1.41 52.27 b1c44904cf06682f973b60c8282f45e8-mp1-squ_ali_s10x10_c39_bail_SAT.cnf
10000 1.0 10000 1.0 10000 1.0 1998.55 5.0 1876.21 5.33 2024.63 4.94 205.9 48.57 b24684abee2e253a4aee233eed155a5b-GP_100_948_34.cnf
1550.19 1.0 1355.44 1.14 1408.12 1.1 1242.76 1.25 1145.9 1.35 794.39 1.95 615.16 2.52 b29cb3449d70126d186e1f6a4fccc419-pj2015_k9.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 b2bcdd97e7d0ca8858b412eb34b26ba9-hyp_cec_multi_5.cnf
341.31 1.0 352.13 0.97 322.02 1.06 250.18 1.36 239.13 1.43 177.01 1.93 143.3 2.38 b344f80cef9889d952c76736d0ad92d9-9dlx_vliw_at_b_iq6.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 b3828c92f2c77f8d7581570685679d76-sin_depth_miter_8.cnf
878.82 1.0 867.14 1.01 595.47 1.48 536.68 1.64 389.11 2.26 308.0 2.85 262.09 3.35 b3cf73d0383f781adf09a2192fa03a15-string_compare_safety_cbmc_unwinding_670.cnf
71.47 1.0 8.06 8.87 7.86 9.09 1.89 37.83 4.4 16.25 3.56 20.08 1.9 37.66 b51583e32432c5778c7e3e996c3bfeba-sqrt_ineq_3.c.cnf
927.2 1.0 168.94 5.49 102.59 9.04 164.1 5.65 148.8 6.23 75.17 12.33 70.31 13.19 b88d206fb35ef87bd7ec5d4a1430ae0c-20-100-p100-55_sat.cnf
10000 1.0 0.15 68493.15 0.16 64102.56 0.23 44247.79 0.19 53191.49 0.1 103092.78 0.11 90090.09 b8d10f8c82a85c03c000fbd005e5a838-worker_50_150_40_0.85.cnf
219.1 1.0 581.78 0.38 8.13 26.93 169.95 1.29 36.06 6.08 14.31 15.31 3.56 61.61 b8e3b884886922343f5cb72d92c24b97-frb75-13-2.used-as.sat04-878.cnf
583.09 1.0 630.4 0.92 540.52 1.08 456.47 1.28 416.62 1.4 576.57 1.01 366.22 1.59 b8f9b018d16835c564dcd8395118c79f-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_alg_id.cnf
220.79 1.0 219.84 1.0 222.37 0.99 152.71 1.45 151.07 1.46 82.63 2.67 43.85 5.04 b913c17d26ac9f3ad15fa83dc98960c7-sudoku-N30-27.cnf
89.23 1.0 46.12 1.93 25.73 3.47 16.22 5.5 8.84 10.1 5.68 15.7 4.73 18.88 b96071f89fa1b1670b8375010b1dd42b-SCPC-500-9.cnf
1180.26 1.0 802.72 1.47 590.86 2.0 334.24 3.53 201.53 5.86 111.49 10.59 76.56 15.42 b962abe508e5a677dbce14056111b48b-j3037_1_rggt_bm1.cnf
442.99 1.0 3.5 126.64 120.49 3.68 1.25 355.24 0.91 488.41 1.48 299.72 1.3 340.76 ba8621490e4e7212fffdb55fb6bd282d-combined-crypto1-wff-seed-108-wffvars-500-cryptocplx-31-overlap-2.cnf
1068.13 1.0 760.07 1.41 502.39 2.13 339.6 3.15 217.87 4.9 135.27 7.9 101.74 10.5 bb0613595001749a0ada02f2da85bc89-PancakeVsInsertSort_7_7.cnf
22.67 1.0 19.61 1.16 18.3 1.24 12.93 1.75 10.71 2.12 7.67 2.95 7.74 2.93 bb80971144a5423532aea9424dade891-div-mitern174.cnf
52.7 1.0 131.65 0.4 58.8 0.9 22.29 2.36 15.86 3.32 8.59 6.14 12.33 4.28 bc16508e3f279bec0a072b939bbe6440-af-synthesis_stb_50_40_2_sat.cnf
346.01 1.0 196.66 1.76 133.12 2.6 88.65 3.9 48.45 7.14 27.98 12.37 20.45 16.92 bcb2104a3558d87ac3b2107c10d54648-mp1-blockpuzzle_5x12_s6_free3.cnf
1354.38 1.0 789.81 1.71 598.11 2.26 346.11 3.91 167.92 8.07 94.41 14.35 63.25 21.41 bd5bc8b7711b75f3cd3ad935bf000659-af-synthesis_stb_50_20_8_unsat.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 be2b20414899ed839ac14bf8b9365692-pj2016_k140.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 621.32 16.09 310.7 32.19 247.64 40.38 c0d927c372e355081aa1f537cc910843-GP_100_948_32.cnf
62.41 1.0 32.11 1.94 19.22 3.25 12.45 5.01 7.52 8.3 5.22 11.96 3.75 16.66 c0df94532b1ca8a705d3af05378f377d-SCPC-500-20.cnf
58.56 1.0 39.29 1.49 36.41 1.61 20.12 2.91 16.12 3.63 10.8 5.42 9.34 6.27 c1b30b4e03c3024ad9d084e29e79aa46-BubbleVsPancakeSort_6_6.cnf
1.54 1.0 3.78 0.41 2.1 0.73 1.82 0.85 0.93 1.65 1.4 1.1 0.95 1.61 c1cb62f85f0c6a29c5d3c47d25fbc24a-Carry_Bits_Fast_23.cnf.cnf
2849.43 1.0 2024.69 1.41 1333.65 2.14 864.47 3.3 488.57 5.83 370.75 7.69 271.03 10.51 c221c5dc006de79e561124dab52aae82-mdp-28-12-unsat.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 c23aed727ae2d9cbb888d771991995aa-tseitin_grid_n16_m16.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 c2596b3f0d779d532a667962b1e54b42-pj2008_k300.cnf
10000 1.0 1696.49 5.89 1168.4 8.56 909.55 10.99 313.44 31.9 332.28 30.1 266.77 37.49 c2828483a78420f9a90e3ed9728c06cc-GP_100_951_37.cnf
474.46 1.0 456.27 1.04 395.83 1.2 335.38 1.41 371.58 1.28 358.85 1.32 303.99 1.56 c2894b8d82492f03bb73bbc65896c016-aws-c-common:aws_priority_queue_s_remove_node.cnf
4036.0 1.0 2854.47 1.41 2209.21 1.83 368.35 10.96 309.8 13.03 217.97 18.52 201.87 19.99 c2f827691e524e272d21de55b3749877-GP_100_951_35.cnf
10000 1.0 10000 1.0 2388.33 4.19 1650.13 6.06 483.32 20.69 307.06 32.57 227.76 43.91 c33dc89922f1ddea4e7eeddafe4143b3-reconf20_20_grid10_1_6141.cnf
3224.44 1.0 2163.6 1.49 1611.32 2.0 980.19 3.29 685.12 4.71 433.93 7.43 366.8 8.79 c3b4a96d92da617218449abad4334d6d-div-mitern164.cnf
282.16 1.0 252.83 1.12 204.04 1.38 197.79 1.43 168.49 1.67 133.32 2.12 78.78 3.58 c3de1f05d136b8ec420732ca829f3217-corePKCS11:C_CreateObject.cnf
383.71 1.0 95.18 4.03 175.58 2.19 44.83 8.56 43.69 8.78 10.35 37.08 2.52 152.15 c5be40965caf3abdba3994ff3d1f32b6-grid-color-12-14-4-cb.cnf
10000 1.0 4045.99 2.47 1240.3 8.06 761.32 13.14 500.15 19.99 271.14 36.88 94.59 105.72 c846dfb21b50596aef8fbe5591d75eb0-UNSAT_MS_opt_snake_p20.pddl_29.cnf
900.38 1.0 514.33 1.75 311.58 2.89 380.18 2.37 251.21 3.58 454.22 1.98 301.74 2.98 c98459d6a1763d809729e276b9c4cbbd-linked_list_swap_contents_safety_unwind74.cnf
451.72 1.0 416.16 1.09 219.97 2.05 139.44 3.24 92.57 4.88 43.25 10.44 28.12 16.07 c9886f58320a360adbc8db9470563bea-ctl_4291_567_12_unsat.cnf
462.41 1.0 712.94 0.65 351.59 1.32 250.25 1.85 162.14 2.85 65.53 7.06 52.58 8.79 ca6db14aaa04027d2b8af47ec910bd68-cfi-rigid-s2-0064-04-or_2.cnf
114.98 1.0 54.93 2.09 32.75 3.51 21.74 5.29 12.22 9.41 6.19 18.58 5.24 21.96 cac1c09f968ef8654c499156d1292385-SCPC-500-18.cnf
10000 1.0 0.04 243902.44 0.05 196078.43 0.06 166666.67 0.08 125000.0 0.03 333333.33 0.05 208333.33 cb3c725fd30d50c6785b907054194260-worker_40_40_30_0.9.cnf
185.3 1.0 128.48 1.44 112.98 1.64 139.83 1.33 94.68 1.96 64.49 2.87 68.43 2.71 cb8f9ffb66d9b5ef663e6759be0b5e4e-q_query_3_L200_coli.sat.cnf
10000 1.0 0.06 169491.53 0.07 140845.07 0.07 136986.3 0.08 131578.95 0.04 232558.14 0.06 172413.79 cbd7e28e510e658abbbe312bdffc6407-worker_50_50_50_0.85.cnf
68.57 1.0 156.94 0.44 14.94 4.59 19.43 3.53 62.45 1.1 4.31 15.92 12.35 5.55 ccb55d1b802617fcb969e12859d66124-g2-mizh-md5-48-2.cnf
876.79 1.0 58.02 15.11 58.53 14.98 148.49 5.9 228.86 3.83 124.65 7.03 83.69 10.48 cd1585619fea2f2634525a3663873764-linked_list_swap_contents_safety_unwind55.cnf
285.62 1.0 252.84 1.13 239.82 1.19 199.06 1.43 148.84 1.92 124.94 2.29 98.43 2.9 cd361d33986dccd7f2d86016d6c35241-ecarev-110-4099-22-30-7.cnf
509.17 1.0 648.14 0.79 272.1 1.87 255.71 1.99 96.0 5.3 39.14 13.01 7.63 66.76 cd36b290c27ed9bafedfb2ca88469f01-mdp-28-12-sat.cnf
76.76 1.0 8.29 9.26 16.18 4.74 3.33 23.05 1.97 38.98 10.41 7.37 1.66 46.35 cd72a64e1b857fd30b9ec831cf462bf1-mp1-21.7.cnf
409.76 1.0 1817.18 0.23 1539.95 0.27 400.01 1.02 212.61 1.93 447.97 0.91 100.26 4.09 cd7c8f8aa9901293a9bc31839eafcc40-reconf10_42_queen20_4_0961.cnf
3184.22 1.0 1872.35 1.7 1119.35 2.84 667.64 4.77 349.04 9.12 179.7 17.72 113.54 28.04 cda0871abcaa41bb403207731bd24fe5-af-synthesis_stb_50_100_4_unsat.cnf
160.21 1.0 152.23 1.05 93.15 1.72 50.65 3.16 30.05 5.33 15.52 10.33 14.39 11.13 cdcdc78497a72d622493b1bac4f0f28b-reconf20_26_3-FullIns_4_1.cnf
273.52 1.0 30.75 8.9 12.27 22.3 12.57 21.76 15.1 18.12 4.53 60.42 8.12 33.67 ce32731c73701c2ac2bed5341b6ae3ca-mp1-9_27.cnf
2.8 1.0 0.4 7.0 0.43 6.54 0.37 7.63 0.35 7.91 0.42 6.65 0.41 6.81 ce4345ce697134021029c2686d5eb04c-Carry_Save_Fast_3.cnf.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 cf194dbcba619ea53edb4170c056ac5b-grid-color-14-14-14-cb.cnf
88.97 1.0 136.79 0.65 63.28 1.41 83.16 1.07 26.68 3.34 38.83 2.29 20.22 4.4 cfa14a7015b0f7fecd98e898f3c95896-velev-vliw-sat-4.0-b8.cnf
34.25 1.0 34.65 0.99 20.73 1.65 35.37 0.97 22.05 1.55 8.61 3.98 5.43 6.3 d065d395159d19735706e0b5cb823f17-af-synthesis_stb_50_20_8_sat.cnf
107.87 1.0 97.49 1.11 240.77 0.45 92.2 1.17 118.36 0.91 103.25 1.04 97.66 1.1 d0ee45ac97c6b5cc63a528f46a5797aa-linked_list_swap_contents_safety_unwind44.cnf
86.23 1.0 151.06 0.57 53.42 1.61 58.54 1.47 68.08 1.27 63.83 1.35 44.61 1.93 d1a4dc04e54d4fa58dfbbf61bd2415b4-SC22_Timetable_C_451_E_50_Cl_30_S_28.cnf
76.37 1.0 59.58 1.28 57.22 1.33 61.83 1.24 59.85 1.28 58.46 1.31 50.0 1.53 d1dbf88a58406c931fd696267ed8159e-s2n:s2n_stuffer_private_key_from_pem.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d1f5c3af78f13f39595288976115d7d3-3d_perfect_euler_bricks.cnf
10000 1.0 0.0 2500000.0 0.01 1428571.43 0.02 476190.48 0.02 454545.45 0.0 3333333.33 0.01 1428571.43 d21199e73859ca35386912c5c475d6c7-tseitin_n192_d3.cnf
52.45 1.0 123.14 0.43 45.37 1.16 14.8 3.54 14.09 3.72 12.36 4.24 16.77 3.13 d32a1553afeebf44835370c9567b3598-cfi-rigid-t2-0048-01-or_3_shuffle_all.cnf
54.22 1.0 11.0 4.93 11.98 4.53 4.83 11.22 3.04 17.86 7.96 6.81 5.76 9.41 d3c07914f3ebb42906b986aa431243af-summle_X8646_steps8_I1-2-2-4-4-8-25-100.cnf
1341.2 1.0 1622.48 0.83 1280.54 1.05 1028.41 1.3 912.07 1.47 671.72 2.0 517.84 2.59 d3c22bb79a638adc35682226f35e3bc4-pj2003_k9.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d40af7b45bba9c64033c0dd47b07f4a4-mdp-36-16-sat.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2885.78 3.47 1629.72 6.14 d518d21a9d851741940749cb59f558af-rphp_p6_r28.cnf
243.36 1.0 195.82 1.24 84.02 2.9 184.94 1.32 96.65 2.52 74.98 3.25 100.95 2.41 d60f78323b957025e55ca528d641b83b-SC22_Timetable_C_451_E_48_Cl_30_S_27.cnf
354.35 1.0 231.06 1.53 28.33 12.51 80.39 4.41 21.25 16.67 20.41 17.36 23.89 14.83 d6947217ad779e1175c716cca42525c6-summle_X111113_steps7_I1-2-2-4-4-8-25-100.cnf
317.62 1.0 214.1 1.48 173.41 1.83 97.34 3.26 76.67 4.14 50.72 6.26 35.8 8.87 d6c845a5f92ebc059b3f0ab2f6d395ed-cfi-rigid-z2-0088-02-or_2_shuffle_all.cnf
641.16 1.0 481.75 1.33 417.25 1.54 334.15 1.92 249.61 2.57 170.56 3.76 144.31 4.44 d702aa8568706efda8308ef8d24f907b-div-mitern167.cnf
3355.18 1.0 3200.06 1.05 1985.64 1.69 1057.86 3.17 887.65 3.78 669.01 5.02 387.61 8.66 d7039acbd2f060fe1e32a273b07c2c77-sudoku-N30-29.cnf
147.34 1.0 256.76 0.57 144.2 1.02 67.89 2.17 42.38 3.48 31.71 4.65 24.72 5.96 d78819115db81dee343d7777fbc5844f-cfi-rigid-s2-0064-02-or_2.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d79e09d2a1639a01528c0703df4d4946-pj2008_k400.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d7f273dc6e97efe55c8b7f9cc547eb2d-sin_depth_miter_1.cnf
250.38 1.0 316.91 0.79 305.66 0.82 185.82 1.35 171.57 1.46 118.3 2.12 92.74 2.7 d8602e623f87dd33f4a1a69ee42d15be-reconf20_50_grid10_3_6844.cnf
0.7 1.0 0.58 1.2 0.7 1.0 0.61 1.15 0.61 1.14 0.49 1.43 0.36 1.92 d87714e099c66f0034fb95727fa47ccc-Wallace_Bits_Fast_2.cnf.cnf
7.4 1.0 917.68 0.01 633.11 0.01 291.78 0.03 322.52 0.02 187.62 0.04 129.9 0.06 d892eb7b3b3a44192ee639e222eee058-reconf10_99_Ins_3_1.cnf
980.97 1.0 873.63 1.12 836.26 1.17 238.63 4.11 149.64 6.56 120.36 8.15 73.57 13.33 d8bb23406e76bf5a4b7a6edba8784a74-Lab-Project-FreeRTOS-Cellular-Library:Cellular_ATRemoveTrailingWhiteSpaces.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 2842.38 3.52 1720.63 5.81 1180.52 8.47 d90c519010bfda89d1626c0321a55a64-j3045_10_gmto_bm1.cnf
44.28 1.0 24.32 1.82 21.45 2.06 25.28 1.75 24.56 1.8 15.94 2.78 16.01 2.77 d9e9100c382d44fb67af82f8d69814f1-cfi-rigid-t2-0048-03-or_3_shuffle_all.cnf
10000 1.0 104.44 95.74 10000 1.0 940.39 10.63 1147.21 8.72 318.16 31.43 57.95 172.57 dcac26e190c906c61ac7222d6d4628c7-grid-color-14-14-12-cb.cnf
536.34 1.0 304.23 1.76 320.22 1.67 477.15 1.12 455.56 1.18 447.37 1.2 220.17 2.44 dd0196aee30d0a83b6fe8bc7eba01806-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_iv.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 ddc7ca4c5dcb102a3ecc63721498f746-SC22_Timetable_C_436_E_39_Cl_29_S_27.cnf
638.22 1.0 201.91 3.16 159.45 4.0 130.54 4.89 88.83 7.19 404.1 1.58 140.63 4.54 ddcb0cd9b7bca43c3a5189326ae88aab-linked_list_swap_contents_safety_unwind71.cnf
10000 1.0 10000 1.0 10000 1.0 4483.16 2.23 2019.06 4.95 1165.38 8.58 603.37 16.57 e011c703e4a2ff46069ec2af2997b580-sin_depth_miter_6.cnf
875.41 1.0 197.17 4.44 164.66 5.32 103.7 8.44 58.62 14.93 45.87 19.08 31.09 28.16 e01c39b7b41c9ff1621579b747254fab-ncc_none_3001_7_3_3_1_31_435991723.cnf
103.59 1.0 63.81 1.62 55.14 1.88 42.22 2.45 29.35 3.53 17.19 6.03 13.26 7.81 e02e21075d3bb8b0e64ea9b8122c75ff-PancakeVsInsertSort_6_7.cnf
24.56 1.0 50.71 0.48 19.6 1.25 6.7 3.66 34.03 0.72 3.08 7.98 7.69 3.19 e0b938c32e36e2939d712dd4024f9ec6-j3037_9_mdd_b.cnf
58.08 1.0 31.91 1.82 26.37 2.2 19.8 2.93 10.58 5.49 11.53 5.04 9.47 6.13 e28cf003c086c99f3a3d9a90aebf8ed1-intel046_Iter124.cnf
10000 1.0 0.21 48076.92 0.16 63291.14 0.19 52356.02 0.16 64102.56 0.11 94339.62 0.11 89285.71 e4128445a07bb86afca1f3590d9adfa9-worker_80_80_80_0.8.cnf
1955.81 1.0 33.47 58.44 31.59 61.91 38.12 51.31 28.4 68.86 22.84 85.63 22.53 86.8 e436f6303d3f499969eafe05b0914a4b-bmc_QICE_snp_vld_50.cnf
3342.21 1.0 10000 0.33 1855.24 1.8 1245.83 2.68 897.21 3.73 655.03 5.1 456.73 7.32 e47567e16e4aeb4d8f3806dfbfdfd646-sudoku-N30-8.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 e4f345877ba5fa2b8fb26be06a123748-rphp_p105_r105.cnf
553.18 1.0 420.48 1.32 218.07 2.54 133.73 4.14 81.1 6.82 51.58 10.73 36.14 15.31 e55a49d8065d65650f24c0f3ecef30b6-af-synthesis_stb_50_120_4_unsat.cnf
2558.87 1.0 10000 0.26 4886.45 0.52 2381.53 1.07 1826.36 1.4 1826.86 1.4 992.23 2.58 e5f5dbace0183455d167a88100312c34-Nb52T6.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 e6f793931983295561620a027d9b3e95-mdp-36-14-unsat.cnf
136.3 1.0 130.04 1.05 122.11 1.12 98.21 1.39 85.41 1.6 53.07 2.57 41.27 3.3 e7c0d40392681b1a55d5d3c826a26766-reconf20_116_le450_25c_1.cnf
17.08 1.0 2.91 5.88 1.85 9.21 2.07 8.26 3.37 5.06 1.76 9.71 1.78 9.6 e7cd2c407974b35fa97f8e64a691bfa0-j3037_10_gmto_b.cnf
0.79 1.0 15.96 0.05 17.73 0.04 20.71 0.04 18.96 0.04 13.71 0.06 14.61 0.05 e85b6cb3e2751d5c80559433ba1adf06-vlsat2_24450_2770239.dimacs.cnf
10.8 1.0 74.06 0.15 36.1 0.3 18.84 0.57 17.47 0.62 19.67 0.55 12.69 0.85 e8d9e3a985463b8e4f45b6e09b77bf6c-cfi-rigid-t2-0048-02-or_3_shuffle_all.cnf
91.12 1.0 380.37 0.24 65.77 1.39 714.27 0.13 116.86 0.78 43.06 2.12 47.11 1.93 e97ebde59cb17ef6f7c4430224b21ed1-grid-color-14-14-8-cb.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 215.81 46.34 2309.55 4.33 e992a45933d191dc4fbe8cc4836109f8-sum_of_three_cubes_165_known_representation.cnf
2.61 1.0 0.94 2.76 0.86 3.04 1.2 2.17 1.07 2.44 1.21 2.16 0.85 3.08 e99ce61fe251b404ec85f6246fd4bb19-Wallace_Bits_Fast_7.cnf.cnf
8.18 1.0 120.34 0.07 18.89 0.43 23.22 0.35 2.21 3.7 2.39 3.42 2.03 4.03 e9b4369f9a98e397ac69eb7740ffef49-Carry_Save_Fast_2.cnf.cnf
200.09 1.0 82.47 2.43 28.82 6.94 50.71 3.95 8.27 24.2 17.14 11.68 6.21 32.24 ea8a79747c7ab142a897b7e8e638245f-j3045_4_mdd_b.cnf
89.82 1.0 148.07 0.61 109.84 0.82 71.35 1.26 87.68 1.02 124.68 0.72 166.22 0.54 eb659cd21250abdc8c9cec49073c32c6-linked_list_swap_contents_safety_unwind59.cnf
1181.91 1.0 10000 0.12 319.97 3.69 529.13 2.23 75.35 15.68 162.35 7.28 33.91 34.86 eb8a25e0db5d0605e3e15670f7a07f27-grid-color-14-14-2-cb.cnf
841.78 1.0 937.37 0.9 872.92 0.96 644.48 1.31 881.8 0.95 1072.76 0.78 714.9 1.18 ed410c758e5025f1bb97922574d1c2ff-reconf10_86_sp003_1.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 ed6920e7126f57daabfb85415607fdb5-sum_of_three_cubes_906_unknown_representation.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 ee06244cc0ed073bd6abf147dc27eff6-pj2016_k120.cnf
10000 1.0 0.0 2500000.0 0.0 2500000.0 0.0 2500000.0 0.0 2500000.0 0.04 222222.22 0.01 1428571.43 eede03732955f620b5291f9dcf9f95df-tseitin_n200_d3.cnf
3562.36 1.0 10000 0.36 3035.81 1.17 1071.51 3.32 806.54 4.42 431.88 8.25 275.18 12.95 efc1b836380d0f84e7512f7b2ccdbb60-PancakeVsInsertSort_8_5.cnf
10000 1.0 10000 1.0 1253.51 7.98 2687.45 3.72 350.5 28.53 155.64 64.25 289.26 34.57 f0f279c7d5043e783f73237cf6bddf33-Break_triple_20_72.xml.cnf
523.27 1.0 475.2 1.1 428.27 1.22 232.78 2.25 331.42 1.58 112.41 4.65 186.49 2.81 f1afd5e8d4b842c15c6a2c420b2b2dba-pj2018_k10.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 f1b3d254596523910f3af07fc1942e64-Break_unsat_12_19.xml.cnf
212.02 1.0 46.86 4.52 9.74 21.77 16.85 12.58 16.55 12.81 6.5 32.59 5.22 40.58 f2a73aa514c859c91db462e1e2a1315b-af-synthesis_stb_50_140_1_sat.cnf
1603.17 1.0 10000 0.16 1179.14 1.36 994.16 1.61 475.34 3.37 185.93 8.62 89.4 17.93 f5f1d6a47ed7449a18d872a3f93d8aa5-GP_120_400_15.cnf
1936.25 1.0 1902.26 1.02 875.55 2.21 558.31 3.47 421.69 4.59 198.9 9.73 123.71 15.65 f64806fd4fe79f1efaefa7ce68d93ee1-sin_depth_miter_4.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 4641.61 2.15 f8a966a2ba189ad5fa45f870f3c5e200-sudoku-N30-7.cnf
917.53 1.0 529.37 1.73 354.05 2.59 216.06 4.25 145.52 6.31 82.77 11.09 60.12 15.26 f8ad493b11bf0692c1f3919642cebdb1-PancakeVsInsertSort_9_3.cnf
255.92 1.0 65.68 3.9 26.92 9.51 10.91 23.47 21.72 11.78 8.5 30.12 5.6 45.7 f8b7241f662ab4d36337b74bb7984122-summle_X111119_steps7_I1-2-2-4-4-8-25-100.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2669.11 3.75 2069.66 4.83 f9dd957b2f5940a3e3adaa2eeaaba011-mdp-36-12-sat.cnf
26.67 1.0 21.11 1.26 25.28 1.06 25.68 1.04 39.53 0.67 38.35 0.7 20.05 1.33 fa88b447f6b41b04686085480678affe-UNSAT_H_instances_childsnack_p12.hddl_1.cnf
24.65 1.0 38.21 0.65 27.62 0.89 23.38 1.05 21.34 1.16 21.83 1.13 14.45 1.71 fb5cf4ad3c46dd294eb8253218524ba6-cfi-rigid-r2-0072-01-or_3.cnf
2311.32 1.0 10000 0.23 1835.91 1.26 723.08 3.2 379.18 6.1 216.37 10.68 223.39 10.35 fbf3b9f8a03a1efedae3da04622fe96e-sqrt-mitern168.cnf
10000 1.0 91.48 109.32 398.73 25.08 44.17 226.4 1.75 5717.55 21.02 475.62 1.82 5485.46 fca7a5a04aaed5f0eacccc4139dc894a-satcoin-genesis-SAT-8192.cnf
110.87 1.0 233.08 0.48 91.77 1.21 47.43 2.34 31.84 3.48 20.91 5.3 6.15 18.04 fdfd5975c57d7cd2264ef6aff6cb4815-SE_PR_stb_588_138.apx_1.cnf
105.2 1.0 74.86 1.41 65.75 1.6 51.74 2.03 35.95 2.93 25.42 4.14 24.75 4.25 fe800e62b55609cb152965c223e72280-div-mitern171.cnf
10000 1.0 10000 1.0 313.91 31.86 328.06 30.48 351.02 28.49 496.23 20.15 233.31 42.86 fe96b630b3e761821308b544368dd521-GP_100_950_34.cnf
2900.94 1.0 3174.93 0.91 333.56 8.7 380.82 7.62 21.28 136.31 25.7 112.86 40.78 71.13 fec4ba2cf2416933dcf7b8153be97344-bz-X-4-7-6.cnf
200.07 1.0 86.51 2.31 92.66 2.16 12.16 16.45 12.59 15.89 9.37 21.35 9.05 22.11 fee70cede2b5b55bfbdb6e48fbe7ce4f-DLTM_twitter690_74_16.cnf
10000 1.0 0.06 156250.0 0.06 156250.0 0.05 204081.63 0.06 156250.0 0.04 227272.73 0.04 227272.73 ff3be72b9f5f44036875aa48f5434456-worker_20_60_20_0.9.cnf
755.88 1.0 68.79 10.99 71.44 10.58 51.23 14.76 30.11 25.1 6.28 120.46 11.66 64.84 fff3f8c76467cdf9d92689969fd94281-mod2c-rand3bip-sat-240-2.shuffled-as.sat05-2519.cnf

173
testLight/speedsat.txt Normal file
View File

@ -0,0 +1,173 @@
200.09 1.0 82.47 2.43 28.82 6.94 50.71 3.95 8.27 24.2 17.14 11.68 6.21 32.24 ea8a79747c7ab142a897b7e8e638245f-j3045_4_mdd_b.cnf
2198.71 1.0 1261.24 1.74 171.65 12.81 215.52 10.2 223.59 9.83 82.32 26.71 180.21 12.2 7c6a06895899eab7cb83b658898ac327-reconf10_145_queen6_2.cnf
10000 1.0 10000 1.0 530.89 18.84 216.64 46.16 1392.52 7.18 493.37 20.27 270.67 36.95 a44fce1796383ea31df08af3b0f65db3-soelberg_unit_159.cnf
23.13 1.0 10.15 2.28 2.87 8.06 2.69 8.58 3.72 6.22 2.27 10.2 1.85 12.52 5c5fa629c2c62723eb2d3388db264521-Wallace_Bits_Fast_3.cnf.cnf
780.48 1.0 271.76 2.87 14.46 53.96 93.5 8.35 52.61 14.83 10.44 74.74 9.11 85.7 5601a7e094f61f3c5af461300c25243f-summle_X111107_steps8_I1-2-2-4-4-8-25-100.cnf
2471.08 1.0 10000 0.25 10000 0.25 10000 0.25 848.43 2.91 399.64 6.18 220.09 11.23 918ca8da0cbca88dcd34b0a6dec2b770-GP_100_950_32.cnf
927.2 1.0 168.94 5.49 102.59 9.04 164.1 5.65 148.8 6.23 75.17 12.33 70.31 13.19 b88d206fb35ef87bd7ec5d4a1430ae0c-20-100-p100-55_sat.cnf
775.05 1.0 877.44 0.88 363.05 2.13 679.99 1.14 200.26 3.87 259.41 2.99 123.13 6.29 03bb7baaa45980753a0e7050ae44755d-atco_enc3_opt1_03_53.cnf
1181.91 1.0 10000 0.12 319.97 3.69 529.13 2.23 75.35 15.68 162.35 7.28 33.91 34.86 eb8a25e0db5d0605e3e15670f7a07f27-grid-color-14-14-2-cb.cnf
71.47 1.0 8.06 8.87 7.86 9.09 1.89 37.83 4.4 16.25 3.56 20.08 1.9 37.66 b51583e32432c5778c7e3e996c3bfeba-sqrt_ineq_3.c.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 3439.28 2.91 1796.66 5.57 7ab6615515ffc5ceb8f6bd440d159c3d-pj2016_k80.cnf
563.37 1.0 381.71 1.48 91.15 6.18 334.01 1.69 163.47 3.45 102.77 5.48 54.36 10.36 a4bffff28417d6b4d72f7b9122988ba5-reconf10_68_queen15_2.cnf
27.22 1.0 37.53 0.73 20.44 1.33 10.89 2.5 12.29 2.21 5.24 5.19 7.82 3.48 7b933d3e6b425772ed19eb0fec52bbf9-j3037_1_rggt_b.cnf
523.27 1.0 475.2 1.1 428.27 1.22 232.78 2.25 331.42 1.58 112.41 4.65 186.49 2.81 f1afd5e8d4b842c15c6a2c420b2b2dba-pj2018_k10.cnf
4.21 1.0 0.28 15.25 0.3 13.89 0.38 11.2 0.31 13.71 0.4 10.55 0.39 10.74 6d815089fb4095208754622b4c44a8f7-Carry_Bits_Fast_12.cnf.cnf
34.99 1.0 54.07 0.65 43.43 0.81 33.32 1.05 19.84 1.76 8.67 4.04 7.82 4.47 324e19a2991a29d0765ad256fb7aee85-j3037_9_gmto_b.cnf
697.21 1.0 673.12 1.04 204.89 3.4 238.79 2.92 27.98 24.92 37.33 18.68 57.87 12.05 44ed91b4ca5a5d8323cab4c268d81fd1-grid-color-12-14-12-cb.cnf
212.02 1.0 46.86 4.52 9.74 21.77 16.85 12.58 16.55 12.81 6.5 32.59 5.22 40.58 f2a73aa514c859c91db462e1e2a1315b-af-synthesis_stb_50_140_1_sat.cnf
52.7 1.0 131.65 0.4 58.8 0.9 22.29 2.36 15.86 3.32 8.59 6.14 12.33 4.28 bc16508e3f279bec0a072b939bbe6440-af-synthesis_stb_50_40_2_sat.cnf
54.22 1.0 11.0 4.93 11.98 4.53 4.83 11.22 3.04 17.86 7.96 6.81 5.76 9.41 d3c07914f3ebb42906b986aa431243af-summle_X8646_steps8_I1-2-2-4-4-8-25-100.cnf
4144.84 1.0 1276.39 3.25 839.69 4.94 158.61 26.13 5.04 823.04 52.3 79.25 16.31 254.18 6e1b970d637fca70d08b251766edade3-Nb8T61.cnf
0.9 1.0 0.67 1.34 2.22 0.41 0.54 1.67 0.42 2.14 0.39 2.34 0.37 2.44 3fb297f59ad2dc32fd3f79d61951d8cb-Carry_Bits_Fast_4.cnf.cnf
199.61 1.0 108.98 1.83 52.09 3.83 8.9 22.44 21.17 9.43 13.23 15.08 9.63 20.72 5ff92b9fa31963608674761e0d71fce8-sv-comp19_prop-reachsafety.triangular-longer_false-unreach-call.i-witness.cnf
1069.49 1.0 1554.11 0.69 2812.64 0.38 533.38 2.01 1888.58 0.57 974.97 1.1 874.81 1.22 024af9416f8c1dad1b4f974757e38d51-8-5-6.cnf
428.29 1.0 50.75 8.44 71.37 6.0 41.93 10.21 29.98 14.29 8.9 48.12 9.7 44.14 0c0e6faa4abb622f5bea636ff04d341d-grid-color-12-14-2-cb.cnf
1546.8 1.0 1054.47 1.47 116.78 13.25 187.45 8.25 310.32 4.98 87.19 17.74 145.53 10.63 0205e0724a8a912dde9ad7dfba2aee0b-003-23-80.cnf
9.32 1.0 110.93 0.08 131.61 0.07 130.52 0.07 125.92 0.07 97.97 0.1 91.2 0.1 047fbe00ecc60835f1ee9d458bbd7ee8-SAT_H_instances_childsnack_p06.hddl_2.cnf
10000 1.0 10000 1.0 4485.58 2.23 1459.81 6.85 10000 1.0 913.88 10.94 525.14 19.04 af834fd3ce15078d2ab055c996758c00-sum_of_three_cubes_33_known_representation.cnf
2900.94 1.0 3174.93 0.91 333.56 8.7 380.82 7.62 21.28 136.31 25.7 112.86 40.78 71.13 fec4ba2cf2416933dcf7b8153be97344-bz-X-4-7-6.cnf
255.92 1.0 65.68 3.9 26.92 9.51 10.91 23.47 21.72 11.78 8.5 30.12 5.6 45.7 f8b7241f662ab4d36337b74bb7984122-summle_X111119_steps7_I1-2-2-4-4-8-25-100.cnf
642.6 1.0 392.83 1.64 643.51 1.0 249.88 2.57 127.23 5.05 65.7 9.78 109.28 5.88 0d209cb420326994f9c4898eb10228ab-008-80-8.cnf
11.76 1.0 19.12 0.62 21.04 0.56 20.31 0.58 19.11 0.62 23.96 0.49 21.02 0.56 7af73f846548141cc97b8a149a20bfbf-vlsat2_57038_10572502.dimacs.cnf
76.76 1.0 8.29 9.26 16.18 4.74 3.33 23.05 1.97 38.98 10.41 7.37 1.66 46.35 cd72a64e1b857fd30b9ec831cf462bf1-mp1-21.7.cnf
1911.28 1.0 4770.58 0.4 3014.27 0.63 1509.46 1.27 592.46 3.23 787.03 2.43 736.65 2.59 1fee9f154615842029ec63d8520f4b4e-GP_300_250_15.cnf
219.1 1.0 581.78 0.38 8.13 26.93 169.95 1.29 36.06 6.08 14.31 15.31 3.56 61.61 b8e3b884886922343f5cb72d92c24b97-frb75-13-2.used-as.sat04-878.cnf
285.62 1.0 252.84 1.13 239.82 1.19 199.06 1.43 148.84 1.92 124.94 2.29 98.43 2.9 cd361d33986dccd7f2d86016d6c35241-ecarev-110-4099-22-30-7.cnf
2151.1 1.0 2457.93 0.88 1834.02 1.17 1598.5 1.35 751.63 2.86 365.46 5.89 115.86 18.57 810ce4a78bc01ddc5a043d95f9584f2f-005-80-12.cnf
73.7 1.0 3.56 20.7 32.41 2.27 1.1 66.7 0.98 75.2 3.36 21.91 1.41 52.27 b1c44904cf06682f973b60c8282f45e8-mp1-squ_ali_s10x10_c39_bail_SAT.cnf
1794.26 1.0 1917.83 0.94 1731.59 1.04 1626.95 1.1 1266.99 1.42 1313.75 1.37 1273.87 1.41 28b715dd946dba71ddd58a73d9f82c39-pj2005_k80.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 ee06244cc0ed073bd6abf147dc27eff6-pj2016_k120.cnf
575.09 1.0 97.54 5.9 275.24 2.09 185.07 3.11 57.9 9.93 59.27 9.7 16.32 35.23 5e66b728b2445ec69f27e0f1a49f4b29-006.cnf
875.41 1.0 197.17 4.44 164.66 5.32 103.7 8.44 58.62 14.93 45.87 19.08 31.09 28.16 e01c39b7b41c9ff1621579b747254fab-ncc_none_3001_7_3_3_1_31_435991723.cnf
4004.83 1.0 877.31 4.56 358.01 11.19 83.49 47.97 157.43 25.44 66.37 60.34 16.52 242.48 aad5bbe8920c5afc84068bb1da27ee8f-LABS_n041_goal003.cnf
11.83 1.0 9.5 1.25 4.72 2.51 4.41 2.68 2.29 5.18 2.91 4.07 1.74 6.82 00a62eb89afbf27e1addf8f5c437da9b-ortholatin-7.cnf
3651.11 1.0 2442.97 1.49 634.96 5.75 315.96 11.56 685.44 5.33 246.9 14.79 328.68 11.11 367c25ad50259a685a25b86d6dd171b2-GP_100_950_33.cnf
1180.64 1.0 313.02 3.77 288.11 4.1 121.96 9.68 99.78 11.83 90.59 13.03 77.67 15.2 7c15baa29f2228703e5161bfabd91773-reconf10_140_queen6_1.cnf
53.25 1.0 43.55 1.22 50.83 1.05 60.05 0.89 49.68 1.07 50.99 1.04 53.97 0.99 4db2404ba78dda6f3bc89a2b03057fd2-intel036_Iter109.cnf
10000 1.0 10000 1.0 313.91 31.86 328.06 30.48 351.02 28.49 496.23 20.15 233.31 42.86 fe96b630b3e761821308b544368dd521-GP_100_950_34.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 c2596b3f0d779d532a667962b1e54b42-pj2008_k300.cnf
442.99 1.0 3.5 126.64 120.49 3.68 1.25 355.24 0.91 488.41 1.48 299.72 1.3 340.76 ba8621490e4e7212fffdb55fb6bd282d-combined-crypto1-wff-seed-108-wffvars-500-cryptocplx-31-overlap-2.cnf
68.57 1.0 156.94 0.44 14.94 4.59 19.43 3.53 62.45 1.1 4.31 15.92 12.35 5.55 ccb55d1b802617fcb969e12859d66124-g2-mizh-md5-48-2.cnf
472.27 1.0 3010.33 0.16 344.24 1.37 159.47 2.96 238.73 1.98 41.34 11.42 20.51 23.02 6fb0757ee018642fedd0669aad3882fe-grid-color-12-14-10-cb.cnf
52.45 1.0 123.14 0.43 45.37 1.16 14.8 3.54 14.09 3.72 12.36 4.24 16.77 3.13 d32a1553afeebf44835370c9567b3598-cfi-rigid-t2-0048-01-or_3_shuffle_all.cnf
0.4 1.0 1.18 0.34 1.34 0.3 1.3 0.31 1.21 0.33 1.12 0.36 1.67 0.24 7efdf72de31fa82aeceb7acbc29a59bf-vlsat2_113_1150.cnf
46.83 1.0 7.51 6.23 11.12 4.21 12.04 3.89 7.25 6.46 6.33 7.4 5.28 8.87 7016d1da3fdfe543de3b95f96a9ffe4c-summle_X8651_steps8_I1-2-2-4-4-8-25-100.cnf
229.54 1.0 517.62 0.44 31.24 7.35 97.2 2.36 4.94 46.44 8.89 25.82 37.21 6.17 7a67847b81b414d659f005200cf56f6b-size_5_5_5_i198_r12.cnf
91.12 1.0 380.37 0.24 65.77 1.39 714.27 0.13 116.86 0.78 43.06 2.12 47.11 1.93 e97ebde59cb17ef6f7c4430224b21ed1-grid-color-14-14-8-cb.cnf
30.14 1.0 32.89 0.92 18.44 1.63 10.36 2.91 6.53 4.61 6.94 4.34 4.99 6.05 807133f4461a11e39a390dfcf67a4fc6-summle_X11113_steps8_I1-2-2-4-4-8-25-100.cnf
88.76 1.0 78.45 1.13 0.76 117.56 1.5 59.02 0.77 115.57 0.86 102.85 0.87 102.26 0c5d7e7aa3dd6024816078d2bdcfc4e3-Carry_Bits_Fast_8.cnf.cnf
34.57 1.0 1.74 19.9 1.07 32.28 0.98 35.17 1.23 28.01 0.94 36.97 1.22 28.27 5099718e4b5b8fe2ba7f8b919fdfde2d-satcoin-genesis-SAT-5.cnf
10000 1.0 10000 1.0 834.92 11.98 948.41 10.54 996.79 10.03 911.39 10.97 739.12 13.53 31cc22a0f42ebaa109a5b807eb6178c2-Break_20_54.xml.cnf
1051.01 1.0 1296.19 0.81 731.79 1.44 18.05 58.24 47.18 22.28 45.95 22.87 35.42 29.67 4501f9a0e9fab5d5cff7133022b1f780-50bits_11.dimacs.cnf
77.66 1.0 13.5 5.75 29.91 2.6 21.66 3.58 12.5 6.21 6.73 11.54 12.57 6.18 608941b989227d93c62b3a9b4280011b-summle_X8639_steps8_I1-2-2-4-4-8-25-100.cnf
1127.62 1.0 1620.17 0.7 1350.07 0.84 1992.97 0.57 1579.47 0.71 2124.61 0.53 1346.25 0.84 08e151e72fe10402a49463171aa557e8-abw-V-nos6.mtx-w220.cnf
190.44 1.0 185.35 1.03 168.22 1.13 154.7 1.23 110.41 1.72 110.33 1.73 96.37 1.98 47135a1fd4c86afbfec0c7879c45268b-SC22_Timetable_C_451_E_46_Cl_30_S_27.cnf
2286.97 1.0 3273.23 0.7 2198.09 1.04 645.53 3.54 1588.88 1.44 599.93 3.81 292.77 7.81 6b0dfcfa8cf0c0564f17ec0a5434b5b9-ITC2021_Early_4.xml.cnf
322.78 1.0 380.21 0.85 358.91 0.9 309.31 1.04 328.63 0.98 497.95 0.65 429.96 0.75 27d9905476897885d29cea2744db9805-coreJSON:skipCollection.cnf
154.58 1.0 325.88 0.47 201.04 0.77 234.77 0.66 208.12 0.74 150.43 1.03 122.36 1.26 7adc1ade3384505af00ff8f7be23f5bd-ex175_20.cnf
3032.01 1.0 384.69 7.88 529.17 5.73 282.35 10.74 18.2 166.55 113.48 26.72 141.47 21.43 3e2fe1556893706475f9dd19c1a7b8fe-mdp-32-12-sat.cnf
462.67 1.0 8.71 53.12 165.93 2.79 32.51 14.23 13.56 34.12 4.86 95.28 6.34 72.98 6b7e3415d7bd20be605b1f9723c43d68-Carry_Bits_Fast_5.cnf.cnf
2.8 1.0 0.4 7.0 0.43 6.54 0.37 7.63 0.35 7.91 0.42 6.65 0.41 6.81 ce4345ce697134021029c2686d5eb04c-Carry_Save_Fast_3.cnf.cnf
87.01 1.0 25.1 3.47 21.96 3.96 31.61 2.75 12.88 6.76 11.35 7.67 5.23 16.63 1ebab99edff4c0470c8aa753bb9d3353-summle_X8637_steps8_I1-2-2-4-4-8-25-100.cnf
250.73 1.0 111.4 2.25 97.1 2.58 111.91 2.24 80.34 3.12 67.55 3.71 48.19 5.2 ac6256657058fe65dc7ddaf773ab83bf-SC21_Timetable_C_527_E_71_Cl_35_S_35.cnf
0.7 1.0 0.58 1.2 0.7 1.0 0.61 1.15 0.61 1.14 0.49 1.43 0.36 1.92 d87714e099c66f0034fb95727fa47ccc-Wallace_Bits_Fast_2.cnf.cnf
10000 1.0 10000 1.0 4604.3 2.17 1935.18 5.17 470.32 21.26 962.42 10.39 812.72 12.3 98dbd257808e551fd26cad78ba520955-ITC2021_Late_2.xml.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 159.97 62.51 6fa8b4b7f4b059bd46913dbe741c0b94-mdp-36-11-sat.cnf
8.18 1.0 120.34 0.07 18.89 0.43 23.22 0.35 2.21 3.7 2.39 3.42 2.03 4.03 e9b4369f9a98e397ac69eb7740ffef49-Carry_Save_Fast_2.cnf.cnf
95.37 1.0 27.07 3.52 26.53 3.59 10.37 9.2 16.12 5.92 8.12 11.74 7.4 12.88 09d8544494e54bc756438e69567b4ba7-mp1-klieber2017s-0300-034-t12.cnf
409.76 1.0 1817.18 0.23 1539.95 0.27 400.01 1.02 212.61 1.93 447.97 0.91 100.26 4.09 cd7c8f8aa9901293a9bc31839eafcc40-reconf10_42_queen20_4_0961.cnf
1322.33 1.0 695.08 1.9 1045.07 1.27 806.11 1.64 445.13 2.97 371.14 3.56 377.47 3.5 4551c996fc6f5fbe62b43076abb25077-knight_18.cnf
35.93 1.0 24.23 1.48 17.25 2.08 11.75 3.06 5.55 6.48 4.7 7.65 4.57 7.86 7acf6cf25ddaf2ab98106e0bb3b9ddb1-af-synthesis_stb_50_140_3_sat.cnf
281.57 1.0 88.36 3.19 20.89 13.48 45.44 6.2 46.52 6.05 34.92 8.06 29.23 9.63 5573681b2f40d5d8b30267ac59987e40-Carry_Bits_Fast_16.cnf.cnf
243.36 1.0 195.82 1.24 84.02 2.9 184.94 1.32 96.65 2.52 74.98 3.25 100.95 2.41 d60f78323b957025e55ca528d641b83b-SC22_Timetable_C_451_E_48_Cl_30_S_27.cnf
2279.94 1.0 1059.76 2.15 305.51 7.46 34.43 66.21 165.79 13.75 139.28 16.37 72.32 31.52 7d2199baf2526263b5f753d290d2790b-md4__zeroOut_19__freeIn_23__seed_2.cnf
3860.82 1.0 10000 0.39 10000 0.39 10000 0.39 3042.14 1.27 857.25 4.5 1354.11 2.85 8aee61ed27bf700a548ca9c097203749-SAT_MS_sat_snake_p01.pddl_39.cnf
736.71 1.0 1316.51 0.56 1266.56 0.58 369.31 1.99 183.17 4.02 39.76 18.53 182.34 4.04 0dcd0ec81c5e8dc13b72d43a4940279b-hantzsche_wendt_unit_147.cnf
46.91 1.0 33.9 1.38 11.27 4.16 12.63 3.72 19.11 2.45 6.23 7.53 5.67 8.27 285cb2c9735ac73cad999fba3d669382-summle_X8634_steps8_I1-2-2-4-4-8-25-100.cnf
24.56 1.0 50.71 0.48 19.6 1.25 6.7 3.66 34.03 0.72 3.08 7.98 7.69 3.19 e0b938c32e36e2939d712dd4024f9ec6-j3037_9_mdd_b.cnf
44.28 1.0 24.32 1.82 21.45 2.06 25.28 1.75 24.56 1.8 15.94 2.78 16.01 2.77 d9e9100c382d44fb67af82f8d69814f1-cfi-rigid-t2-0048-03-or_3_shuffle_all.cnf
10000 1.0 10000 1.0 10000 1.0 4291.23 2.33 2633.41 3.8 314.83 31.76 440.26 22.71 24af39156d1daa122e5928d9aba11847-GP_100_948_33.cnf
354.35 1.0 231.06 1.53 28.33 12.51 80.39 4.41 21.25 16.67 20.41 17.36 23.89 14.83 d6947217ad779e1175c716cca42525c6-summle_X111113_steps7_I1-2-2-4-4-8-25-100.cnf
2.61 1.0 0.94 2.76 0.86 3.04 1.2 2.17 1.07 2.44 1.21 2.16 0.85 3.08 e99ce61fe251b404ec85f6246fd4bb19-Wallace_Bits_Fast_7.cnf.cnf
88.97 1.0 136.79 0.65 63.28 1.41 83.16 1.07 26.68 3.34 38.83 2.29 20.22 4.4 cfa14a7015b0f7fecd98e898f3c95896-velev-vliw-sat-4.0-b8.cnf
10000 1.0 1696.49 5.89 1168.4 8.56 909.55 10.99 313.44 31.9 332.28 30.1 266.77 37.49 c2828483a78420f9a90e3ed9728c06cc-GP_100_951_37.cnf
1603.17 1.0 10000 0.16 1179.14 1.36 994.16 1.61 475.34 3.37 185.93 8.62 89.4 17.93 f5f1d6a47ed7449a18d872a3f93d8aa5-GP_120_400_15.cnf
175.27 1.0 293.37 0.6 84.52 2.07 20.75 8.45 18.36 9.55 17.3 10.13 33.92 5.17 70289686a242c8380ca26bda45ad1278-summle_X111104_steps6_I1-2-2-4-4-8-25-100.cnf
146.42 1.0 26.09 5.61 39.72 3.69 13.44 10.89 16.42 8.92 2.24 65.48 4.13 35.41 0810eb03d022334fdd1d5a6ad4969d47-gss-18-s100.cnf
1.54 1.0 3.78 0.41 2.1 0.73 1.82 0.85 0.93 1.65 1.4 1.1 0.95 1.61 c1cb62f85f0c6a29c5d3c47d25fbc24a-Carry_Bits_Fast_23.cnf.cnf
81.23 1.0 4.38 18.53 2.99 27.18 4.21 19.3 6.42 12.64 1.76 46.05 1.52 53.37 6965d5369d3ab26daaf074303c3d1739-mp1-squ_ali_s10x10_c39_abix_SAT.cnf
83.8 1.0 63.36 1.32 86.44 0.97 32.63 2.57 25.98 3.23 13.5 6.21 9.43 8.88 03ba29d5cb38d345357a74a7b5ccd759-20-100-lambda100-49_sat.cnf
136.74 1.0 193.25 0.71 273.93 0.5 92.14 1.48 101.17 1.35 82.28 1.66 60.77 2.25 0240f5bddc39ad2f0a786c811fc434a8-SC21_Timetable_C_542_E_71_Cl_36_S_35.cnf
273.52 1.0 30.75 8.9 12.27 22.3 12.57 21.76 15.1 18.12 4.53 60.42 8.12 33.67 ce32731c73701c2ac2bed5341b6ae3ca-mp1-9_27.cnf
31.03 1.0 23.45 1.32 16.53 1.88 19.12 1.62 14.6 2.12 10.32 3.01 11.19 2.77 8bb5819a23a8f1dff851d608bec008ca-ITC2021_Late_6.xml.cnf
0.79 1.0 15.96 0.05 17.73 0.04 20.71 0.04 18.96 0.04 13.71 0.06 14.61 0.05 e85b6cb3e2751d5c80559433ba1adf06-vlsat2_24450_2770239.dimacs.cnf
215.02 1.0 616.28 0.35 340.63 0.63 5.42 39.71 6.0 35.81 8.07 26.65 2.15 100.2 78a0e76b68b536e2ea7d801fc6061cd2-grid-color-12-14-14-cb.cnf
1105.22 1.0 359.31 3.08 51.05 21.65 222.02 4.98 64.06 17.25 88.98 12.42 74.09 14.92 6c34b7032712e16b08d97a0449d610e2-puzzle30_sat.cnf
4124.23 1.0 10000 0.41 3591.59 1.15 637.95 6.46 716.1 5.76 431.17 9.57 256.34 16.09 93695f689b57cdb57c9b6d0d726e0f53-Break_triple_18_48.xml.cnf
222.9 1.0 138.1 1.61 96.16 2.32 29.95 7.44 20.89 10.67 18.04 12.35 9.21 24.2 294924aff67e879595e55f15b10a79ef-grid-color-12-14-6-cb.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 be2b20414899ed839ac14bf8b9365692-pj2016_k140.cnf
26.71 1.0 1.15 23.31 0.79 33.98 0.83 32.06 0.78 34.07 0.86 31.13 1.59 16.83 0616ca6b1e0ae639d12e19ed310963a9-satcoin-genesis-SAT-4.cnf
10000 1.0 2688.01 3.72 2875.53 3.48 513.23 19.48 163.59 61.13 199.03 50.24 49.21 203.2 0151bedac526ee195bc52e4134cd80e7-ssAES_4-4-8_round_8-10_faultAt_8_fault_injections_2_seed_1579630418.cnf
83.19 1.0 27.95 2.98 118.7 0.7 59.44 1.4 65.51 1.27 17.47 4.76 8.58 9.7 622787535593269d5e9a1dc4fe01c4af-atco_enc1_opt2_10_16-sc2014.cnf
24.65 1.0 38.21 0.65 27.62 0.89 23.38 1.05 21.34 1.16 21.83 1.13 14.45 1.71 fb5cf4ad3c46dd294eb8253218524ba6-cfi-rigid-r2-0072-01-or_3.cnf
68.93 1.0 9.04 7.63 0.64 108.04 1.17 59.02 0.57 119.88 1.58 43.54 1.82 37.81 02223564bd2f5c20768e63cf28c785e3-mp1-squ_ali_s10x10_c39_abio_SAT.cnf
50.43 1.0 101.9 0.49 14.27 3.53 11.33 4.45 17.41 2.9 13.04 3.87 6.01 8.39 36ecf4ba0451f40e4ede9a1b2ab914f7-af-synthesis_stb_50_200_4_sat.cnf
613.08 1.0 439.52 1.39 218.75 2.8 199.13 3.08 154.97 3.96 124.82 4.91 118.23 5.19 03fb9af7b390fe9e0739150ca3410cf0-4g_5color_166_100_02.cnf
172.14 1.0 123.8 1.39 10.96 15.71 21.51 8.0 20.56 8.37 12.72 13.53 5.92 29.1 96f6aab24720f070a02e637f7252b482-grid-color-12-14-8-cb.cnf
288.09 1.0 295.22 0.98 620.49 0.46 68.32 4.22 48.08 5.99 11.3 25.49 44.27 6.51 089456508f74be2d96f4112cc495f80a-Eternity-10-06_c18.cnf
147.43 1.0 108.08 1.36 33.83 4.36 48.57 3.04 12.62 11.68 8.6 17.14 7.83 18.83 3b97191d94abf3a5e97d6359d886d9df-summle_X111121_steps7_I1-2-2-4-4-8-25-100.cnf
10000 1.0 10000 1.0 1253.51 7.98 2687.45 3.72 350.5 28.53 155.64 64.25 289.26 34.57 f0f279c7d5043e783f73237cf6bddf33-Break_triple_20_72.xml.cnf
61.12 1.0 74.97 0.82 21.43 2.85 6.91 8.85 4.68 13.05 1.74 35.09 1.26 48.35 157c7496c04d3fc63565cd7999dc45a5-Carry_Save_Fast_1.cnf.cnf
67.65 1.0 78.93 0.86 31.77 2.13 52.93 1.28 11.96 5.66 22.97 2.94 12.47 5.42 085b8ebc423dcbd70eceaa04229cf5cd-summle_X111102_steps8_I1-2-2-4-4-8-25-100.cnf
0.54 1.0 2.0 0.27 0.44 1.24 0.29 1.83 0.28 1.94 0.28 1.96 0.29 1.88 072785fd927ff0fd180ce8b9cc00078f-20180321_140826713_p_cnf_320_1120.cnf
10000 1.0 10000 1.0 4970.29 2.01 3183.75 3.14 10000 1.0 3103.71 3.22 1560.81 6.41 8efdd60faa21ddcace492bff0479408b-Break_triple_20_54.xml.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 215.81 46.34 2309.55 4.33 e992a45933d191dc4fbe8cc4836109f8-sum_of_three_cubes_165_known_representation.cnf
841.78 1.0 937.37 0.9 872.92 0.96 644.48 1.31 881.8 0.95 1072.76 0.78 714.9 1.18 ed410c758e5025f1bb97922574d1c2ff-reconf10_86_sp003_1.cnf
167.79 1.0 206.24 0.81 330.85 0.51 6.12 27.43 51.34 3.27 17.68 9.49 5.11 32.86 5457c05649be6f3bc4f743c5e6086a18-mdp-28-10-sat.cnf
3157.25 1.0 2681.49 1.18 2925.91 1.08 1824.91 1.73 1266.6 2.49 1679.22 1.88 413.81 7.63 01813075a2ddb68ae1fc655ca003437e-sha256__zeroOut_12__freeIn_16__seed_1.cnf
32.7 1.0 1646.49 0.02 1930.03 0.02 1773.31 0.02 1541.28 0.02 1216.08 0.03 1192.28 0.03 0d4970edf84353e5a5798bca3f7f270e-SAT_H_instances_childsnack_p10.hddl_2.cnf
134.52 1.0 203.23 0.66 191.72 0.7 125.79 1.07 116.43 1.16 104.56 1.29 107.09 1.26 5e933a625099cc1ec6a8299a7848a2ae-Kakuro-easy-112-ext.xml.hg_7.cnf
3234.84 1.0 3573.63 0.91 3110.66 1.04 3036.23 1.07 1811.77 1.79 1495.56 2.16 1036.83 3.12 30ca21da9753263cc8cda020802b58ce-GP_500_200_20.cnf
86.23 1.0 151.06 0.57 53.42 1.61 58.54 1.47 68.08 1.27 63.83 1.35 44.61 1.93 d1a4dc04e54d4fa58dfbbf61bd2415b4-SC22_Timetable_C_451_E_50_Cl_30_S_28.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2988.93 3.35 a42230be4432b010789b6f97b090343c-soelberg_unit_223.cnf
10000 1.0 10000 1.0 10000 1.0 1998.55 5.0 1876.21 5.33 2024.63 4.94 205.9 48.57 b24684abee2e253a4aee233eed155a5b-GP_100_948_34.cnf
10000 1.0 104.44 95.74 10000 1.0 940.39 10.63 1147.21 8.72 318.16 31.43 57.95 172.57 dcac26e190c906c61ac7222d6d4628c7-grid-color-14-14-12-cb.cnf
58.08 1.0 31.91 1.82 26.37 2.2 19.8 2.93 10.58 5.49 11.53 5.04 9.47 6.13 e28cf003c086c99f3a3d9a90aebf8ed1-intel046_Iter124.cnf
7.4 1.0 917.68 0.01 633.11 0.01 291.78 0.03 322.52 0.02 187.62 0.04 129.9 0.06 d892eb7b3b3a44192ee639e222eee058-reconf10_99_Ins_3_1.cnf
65.26 1.0 61.34 1.06 13.38 4.88 9.22 7.08 21.3 3.06 8.17 7.99 11.48 5.68 48e9f29a92930f1b367efc5754cb679b-af-synthesis_stb_50_80_7_sat.cnf
509.17 1.0 648.14 0.79 272.1 1.87 255.71 1.99 96.0 5.3 39.14 13.01 7.63 66.76 cd36b290c27ed9bafedfb2ca88469f01-mdp-28-12-sat.cnf
115.1 1.0 25.66 4.48 17.99 6.4 12.81 8.99 13.4 8.59 6.46 17.83 5.93 19.4 95c00d0ae51d5d0a2a931ce82b77701f-af-synthesis_stb_50_140_0_sat.cnf
0.42 1.0 1.08 0.39 1.81 0.23 0.44 0.96 0.46 0.91 0.41 1.02 0.31 1.36 5ac44f542fd2cd4492067deb7791629a-Carry_Bits_Fast_18.cnf.cnf
4.87 1.0 19.3 0.25 18.77 0.26 25.02 0.19 20.68 0.24 16.38 0.3 15.35 0.32 2551afad6b364a7225cdd1b9fa82f7c0-worker_500_500_500_0.35.cnf
10000 1.0 10000 1.0 10000 1.0 639.61 15.63 562.04 17.79 1185.96 8.43 1560.97 6.41 0842eb01dc00232edc0b26ccb2f19f25-6-4-6-sc2018.cnf
200.07 1.0 86.51 2.31 92.66 2.16 12.16 16.45 12.59 15.89 9.37 21.35 9.05 22.11 fee70cede2b5b55bfbdb6e48fbe7ce4f-DLTM_twitter690_74_16.cnf
178.34 1.0 331.86 0.54 302.48 0.59 239.42 0.74 241.76 0.74 173.83 1.03 150.71 1.18 02f2343e32f9070f149708d77556b4aa-Kakuro-easy-117-ext.xml.hg_5.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d40af7b45bba9c64033c0dd47b07f4a4-mdp-36-16-sat.cnf
4036.0 1.0 2854.47 1.41 2209.21 1.83 368.35 10.96 309.8 13.03 217.97 18.52 201.87 19.99 c2f827691e524e272d21de55b3749877-GP_100_951_35.cnf
45.22 1.0 56.59 0.8 3.97 11.39 7.08 6.38 3.96 11.42 3.34 13.54 4.55 9.94 3176c9024f756e99dbee852e5c0aa578-Break_triple_12_30.xml.cnf
10000 1.0 103.83 96.32 476.95 20.97 114.22 87.55 26.92 371.42 78.83 126.86 35.78 279.48 048a70da40ea4908c783b8314be2da97-aes_32_2_keyfind_1.cnf
206.99 1.0 231.97 0.89 93.59 2.21 197.66 1.05 53.31 3.88 43.24 4.79 30.55 6.77 0e775873f4c4bbc81ff92b87dd3e15e8-grid-strips-grid-y-3.045-NOTKNOWN.cnf
110.87 1.0 233.08 0.48 91.77 1.21 47.43 2.34 31.84 3.48 20.91 5.3 6.15 18.04 fdfd5975c57d7cd2264ef6aff6cb4815-SE_PR_stb_588_138.apx_1.cnf
17.08 1.0 2.91 5.88 1.85 9.21 2.07 8.26 3.37 5.06 1.76 9.71 1.78 9.6 e7cd2c407974b35fa97f8e64a691bfa0-j3037_10_gmto_b.cnf
755.88 1.0 68.79 10.99 71.44 10.58 51.23 14.76 30.11 25.1 6.28 120.46 11.66 64.84 fff3f8c76467cdf9d92689969fd94281-mod2c-rand3bip-sat-240-2.shuffled-as.sat05-2519.cnf
10.8 1.0 74.06 0.15 36.1 0.3 18.84 0.57 17.47 0.62 19.67 0.55 12.69 0.85 e8d9e3a985463b8e4f45b6e09b77bf6c-cfi-rigid-t2-0048-02-or_3_shuffle_all.cnf
67.91 1.0 13.28 5.11 8.28 8.2 8.01 8.48 7.07 9.61 7.06 9.62 7.52 9.03 2748e075d4b636ef260271a35302049b-cfi-rigid-t2-0048-01-or_3.cnf
383.71 1.0 95.18 4.03 175.58 2.19 44.83 8.56 43.69 8.78 10.35 37.08 2.52 152.15 c5be40965caf3abdba3994ff3d1f32b6-grid-color-12-14-4-cb.cnf
1345.63 1.0 433.2 3.11 19.59 68.68 12.31 109.35 189.74 7.09 0.96 1400.24 6.61 203.61 090585dc32a79f2bf6fb61a2c7079682-mdp-28-16-sat.cnf
2968.38 1.0 576.18 5.15 2223.47 1.34 397.06 7.48 92.75 32.0 115.16 25.78 61.58 48.2 048142b6048cb6c10415e08f68a2c3a3-GP_81_430_13.cnf
345.87 1.0 228.96 1.51 192.22 1.8 43.05 8.03 91.25 3.79 64.99 5.32 20.08 17.23 0c75119940f87f2bc1dc3f53aeedc02b-20-100-lambda100-89_sat.cnf
3104.58 1.0 1778.34 1.75 2405.7 1.29 778.8 3.99 1323.85 2.35 565.2 5.49 391.44 7.93 72329bc80f5f55dcc356a22f3f11ebec-GP_200_313_5.cnf
31.03 1.0 56.19 0.55 20.22 1.53 20.3 1.53 29.8 1.04 20.69 1.5 21.78 1.42 7f09f477d319cd79821c80504aa06a6e-Break_16_56.xml.cnf
10000 1.0 91.48 109.32 398.73 25.08 44.17 226.4 1.75 5717.55 21.02 475.62 1.82 5485.46 fca7a5a04aaed5f0eacccc4139dc894a-satcoin-genesis-SAT-8192.cnf
133.37 1.0 290.22 0.46 31.34 4.26 39.71 3.36 26.26 5.08 9.74 13.69 10.52 12.68 129162378e8ad29b5485a9c53feee4b7-hantzsche_wendt_unit_93.cnf
1322.71 1.0 4767.27 0.28 278.68 4.75 212.45 6.23 292.55 4.52 235.74 5.61 8.97 147.46 0b4421f6aac81e2dbc87c5b5ddae6511-52bits_12.dimacs.cnf
385.59 1.0 361.67 1.07 384.21 1.0 344.81 1.12 257.75 1.5 259.18 1.49 151.33 2.55 4b537d3c18082eb884bf9429b8146214-gaussian.c.75.smt2-cvc4.cnf
34.25 1.0 34.65 0.99 20.73 1.65 35.37 0.97 22.05 1.55 8.61 3.98 5.43 6.3 d065d395159d19735706e0b5cb823f17-af-synthesis_stb_50_20_8_sat.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 621.32 16.09 310.7 32.19 247.64 40.38 c0d927c372e355081aa1f537cc910843-GP_100_948_32.cnf
122.2 1.0 66.61 1.83 55.59 2.2 31.71 3.85 7.89 15.5 8.02 15.23 9.06 13.49 5e25f9f0d4ef05401fd9ab45a2538c1c-summle_X111117_steps8_I1-2-2-4-4-8-25-100.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2669.11 3.75 2069.66 4.83 f9dd957b2f5940a3e3adaa2eeaaba011-mdp-36-12-sat.cnf
364.93 1.0 245.01 1.49 247.07 1.48 129.12 2.83 49.42 7.38 46.3 7.88 21.54 16.94 889b6d29998ade866e64c46f807a98bc-6s320rb1_Iter9.cnf
22.25 1.0 12.41 1.79 31.33 0.71 21.12 1.05 8.53 2.61 3.19 6.98 8.12 2.74 49f5d904bb2e762219287d33f5621971-ITC2021_Late_1.xml.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2202.81 4.54 10000 1.0 9cea216ba8c5051e489af11150504ba6-Break_20_36.xml.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d79e09d2a1639a01528c0703df4d4946-pj2008_k400.cnf

188
testLight/speedunsat.txt Normal file
View File

@ -0,0 +1,188 @@
296.17 1.0 407.53 0.73 150.87 1.96 87.93 3.37 82.95 3.57 52.38 5.65 37.48 7.9 3d2a6e5c2f8f58dee79fd50444009625-cfi-rigid-z2-0088-03-or_2_shuffle_all.cnf
10000 1.0 10000 1.0 3595.05 2.78 2301.44 4.35 1541.94 6.49 1043.92 9.58 729.65 13.71 04157f716c1e9606c6a530657bf8f957-Kakuro-easy-125-ext.xml.hg_4.cnf
503.92 1.0 284.41 1.77 247.67 2.03 157.83 3.19 97.17 5.19 54.97 9.17 38.13 13.22 a09b0e7764666af044fa7e63dd7e7aef-PancakeVsSelectionSort_8_3.cnf
10000 1.0 0.04 243902.44 0.05 196078.43 0.06 166666.67 0.08 125000.0 0.03 333333.33 0.05 208333.33 cb3c725fd30d50c6785b907054194260-worker_40_40_30_0.9.cnf
3224.44 1.0 2163.6 1.49 1611.32 2.0 980.19 3.29 685.12 4.71 433.93 7.43 366.8 8.79 c3b4a96d92da617218449abad4334d6d-div-mitern164.cnf
609.82 1.0 393.13 1.55 277.7 2.2 186.84 3.26 128.84 4.73 89.59 6.81 71.39 8.54 4f888358cd62fe7bc602ea6882cdfc6d-bivium-40-200-0s0-0x92fc13b11169afbb2ef11a684d9fe9a19e743cd6aa5ce23fb5-19.cnf
3367.82 1.0 2276.31 1.48 2682.36 1.26 1456.9 2.31 1109.02 3.04 584.89 5.76 413.76 8.14 8f3d4a4fedf4689ae0e6df362478d551-PancakeVsSelectionSort_7_6.cnf
10000 1.0 10000 1.0 10000 1.0 3178.0 3.15 1936.27 5.16 1182.86 8.45 771.89 12.96 65514d6ff224df20ba8c1aeec1698ab6-PancakeVsInsertSort_8_7.cnf
1203.01 1.0 760.86 1.58 519.11 2.32 343.65 3.5 201.39 5.97 123.47 9.74 78.14 15.4 a2609893b71f219f4635d33ef1ff6eca-j3045_4_gmto_bm1.cnf
10000 1.0 10000 1.0 10000 1.0 4483.16 2.23 2019.06 4.95 1165.38 8.58 603.37 16.57 e011c703e4a2ff46069ec2af2997b580-sin_depth_miter_6.cnf
105.2 1.0 74.86 1.41 65.75 1.6 51.74 2.03 35.95 2.93 25.42 4.14 24.75 4.25 fe800e62b55609cb152965c223e72280-div-mitern171.cnf
76.37 1.0 59.58 1.28 57.22 1.33 61.83 1.24 59.85 1.28 58.46 1.31 50.0 1.53 d1dbf88a58406c931fd696267ed8159e-s2n:s2n_stuffer_private_key_from_pem.cnf
565.74 1.0 101.3 5.59 220.89 2.56 49.94 11.33 173.89 3.25 190.33 2.97 159.78 3.54 90ec6ff35305fed1d9a87a3ecd87238b-linked_list_swap_contents_safety_unwind48.cnf
58.09 1.0 27.2 2.14 17.92 3.24 11.54 5.03 8.2 7.08 4.7 12.37 3.74 15.52 920bbe559da4ea37fd636605316a791c-SCPC-500-19.cnf
351.17 1.0 260.44 1.35 207.83 1.69 188.62 1.86 143.9 2.44 80.88 4.34 36.68 9.57 af63ce577d1fea121ba80b4b1d148f0c-sudoku-N30-22.cnf
451.72 1.0 416.16 1.09 219.97 2.05 139.44 3.24 92.57 4.88 43.25 10.44 28.12 16.07 c9886f58320a360adbc8db9470563bea-ctl_4291_567_12_unsat.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 4641.61 2.15 f8a966a2ba189ad5fa45f870f3c5e200-sudoku-N30-7.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 7ff8c9781b3ada449ce489cdf444a760-Break_unsat_10_15.xml.cnf
10000 1.0 0.06 156250.0 0.06 156250.0 0.05 204081.63 0.06 156250.0 0.04 227272.73 0.04 227272.73 ff3be72b9f5f44036875aa48f5434456-worker_20_60_20_0.9.cnf
3177.89 1.0 1933.18 1.64 1347.71 2.36 895.02 3.55 520.3 6.11 350.16 9.08 245.9 12.92 047c92e7c0a36a23d8107f4313517719-rubikcube701-sc2017.cnf
22.67 1.0 19.61 1.16 18.3 1.24 12.93 1.75 10.71 2.12 7.67 2.95 7.74 2.93 bb80971144a5423532aea9424dade891-div-mitern174.cnf
10000 1.0 0.06 169491.53 0.07 140845.07 0.07 136986.3 0.08 131578.95 0.04 232558.14 0.06 172413.79 cbd7e28e510e658abbbe312bdffc6407-worker_50_50_50_0.85.cnf
556.46 1.0 486.35 1.14 395.05 1.41 275.05 2.02 197.71 2.81 107.13 5.19 74.24 7.5 2c7cb0ff324a42a0699c23317c97a29a-6s320rb1_Iter8.cnf
55.31 1.0 10000 0.01 96.45 0.57 114.75 0.48 133.52 0.41 133.6 0.41 123.48 0.45 5d357f1e4b5abc96c90d305f629edd5c-ps_200_323_70.cnf
192.4 1.0 145.64 1.32 129.65 1.48 112.13 1.72 81.02 2.37 61.08 3.15 45.56 4.22 0855033e761d91ae367e867c5a569f9e-atco_enc1_opt2_10_15.cnf
49.09 1.0 43.48 1.13 33.39 1.47 31.8 1.54 39.9 1.23 110.06 0.45 80.07 0.61 7703f7d1901ff09a0f177c52a1a7c107-linked_list_swap_contents_safety_unwind43.cnf
980.0 1.0 372.41 2.63 333.66 2.94 318.81 3.07 254.84 3.85 244.37 4.01 229.0 4.28 6b630aa05142274d965c8fc019db511e-bmc_QICE_rxrsp_vld_30.cnf
183.43 1.0 162.06 1.13 96.26 1.91 234.76 0.78 59.6 3.08 428.69 0.43 450.68 0.41 3fb045f58aaf394165735c39c49fad92-linked_list_swap_contents_safety_unwind56.cnf
10000 1.0 10000 1.0 10000 1.0 4398.69 2.27 2431.62 4.11 1342.75 7.45 990.75 10.09 51dd2c14736f2d9164f749d6a633ccb5-j3045_10_mdd_bm1.cnf
346.01 1.0 196.66 1.76 133.12 2.6 88.65 3.9 48.45 7.14 27.98 12.37 20.45 16.92 bcb2104a3558d87ac3b2107c10d54648-mp1-blockpuzzle_5x12_s6_free3.cnf
536.34 1.0 304.23 1.76 320.22 1.67 477.15 1.12 455.56 1.18 447.37 1.2 220.17 2.44 dd0196aee30d0a83b6fe8bc7eba01806-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_iv.cnf
3562.36 1.0 10000 0.36 3035.81 1.17 1071.51 3.32 806.54 4.42 431.88 8.25 275.18 12.95 efc1b836380d0f84e7512f7b2ccdbb60-PancakeVsInsertSort_8_5.cnf
10000 1.0 1334.52 7.49 1388.73 7.2 1140.19 8.77 1258.06 7.95 1003.61 9.96 708.31 14.12 354c2088ae7648e1dc51d12947c8043a-bobsmdct_init_k88.cnf
1550.19 1.0 1355.44 1.14 1408.12 1.1 1242.76 1.25 1145.9 1.35 794.39 1.95 615.16 2.52 b29cb3449d70126d186e1f6a4fccc419-pj2015_k9.cnf
10000 1.0 0.1 96153.85 0.11 89285.71 0.15 64516.13 0.12 86956.52 0.13 77519.38 0.08 126582.28 45ec40c74fdbf2fe41122ac1e31e6c8e-worker_30_120_30_0.8.cnf
62.41 1.0 32.11 1.94 19.22 3.25 12.45 5.01 7.52 8.3 5.22 11.96 3.75 16.66 c0df94532b1ca8a705d3af05378f377d-SCPC-500-20.cnf
192.67 1.0 142.39 1.35 74.55 2.58 44.42 4.34 29.59 6.51 20.26 9.51 14.85 12.98 002a0330958a14deb23dcc84b5489e8a-traffic_f_unknown.cnf
160.21 1.0 152.23 1.05 93.15 1.72 50.65 3.16 30.05 5.33 15.52 10.33 14.39 11.13 cdcdc78497a72d622493b1bac4f0f28b-reconf20_26_3-FullIns_4_1.cnf
103.59 1.0 63.81 1.62 55.14 1.88 42.22 2.45 29.35 3.53 17.19 6.03 13.26 7.81 e02e21075d3bb8b0e64ea9b8122c75ff-PancakeVsInsertSort_6_7.cnf
2173.9 1.0 1091.07 1.99 768.15 2.83 560.47 3.88 379.82 5.72 330.46 6.58 319.53 6.8 a0e98fd44b74e6f255ca1e5a20bc01fd-cfi-rigid-d3-0180-02-orig.cnf
10000 1.0 10000 1.0 10000 1.0 2411.11 4.15 1368.82 7.31 826.03 12.11 613.71 16.29 60a0ab2650e08f32c4fff6ff09369568-eqsparcl12bpwtrc12.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 c23aed727ae2d9cbb888d771991995aa-tseitin_grid_n16_m16.cnf
10000 1.0 10000 1.0 2388.33 4.19 1650.13 6.06 483.32 20.69 307.06 32.57 227.76 43.91 c33dc89922f1ddea4e7eeddafe4143b3-reconf20_20_grid10_1_6141.cnf
650.13 1.0 612.12 1.06 414.96 1.57 283.34 2.29 175.67 3.7 134.4 4.84 105.6 6.16 aa4638ca3654f1a300c809125a3133ee-6s22_Iter57.cnf
583.09 1.0 630.4 0.92 540.52 1.08 456.47 1.28 416.62 1.4 576.57 1.01 366.22 1.59 b8f9b018d16835c564dcd8395118c79f-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_alg_id.cnf
1962.16 1.0 2084.03 0.94 2669.15 0.74 1652.4 1.19 1378.17 1.42 665.52 2.95 490.75 4.0 114f1b2ffd86e8a176bcbab664415520-bobsmdct_k88.cnf
275.65 1.0 196.63 1.4 193.86 1.42 131.65 2.09 145.86 1.89 72.12 3.82 32.35 8.52 5cc5e3d24402696ed4ec03edfa42d663-sudoku-N30-24.cnf
3841.96 1.0 4379.57 0.88 3743.51 1.03 4468.06 0.86 3100.59 1.24 3289.06 1.17 2636.14 1.46 6e3015f2ce1f17e4f2b81dae06d73eec-gus-md5-11.cnf
400.32 1.0 394.05 1.02 358.37 1.12 341.19 1.17 309.36 1.29 324.6 1.23 291.94 1.37 0a3cb69074519646b0f2933ba7ad2d30-aws-encryption-sdk-c:aws_cryptosdk_hdr_write.cnf
1936.25 1.0 1902.26 1.02 875.55 2.21 558.31 3.47 421.69 4.59 198.9 9.73 123.71 15.65 f64806fd4fe79f1efaefa7ce68d93ee1-sin_depth_miter_4.cnf
10000 1.0 2430.43 4.11 2193.86 4.56 2163.24 4.62 2048.5 4.88 2245.1 4.45 1909.84 5.24 3cbd82017c4a304c014dd87a69f6028c-bmc_QICE_req_sfl_30.cnf
10000 1.0 10000 1.0 3329.41 3.0 2450.03 4.08 1364.33 7.33 734.97 13.61 521.68 19.17 a2bdae1f9d9695e8cf80cfbbd5f7d61f-PancakeVsSelectionSort_8_4.cnf
2828.77 1.0 1353.63 2.09 774.39 3.65 422.47 6.7 235.4 12.02 111.47 25.38 81.14 34.86 109aa0f5e177c1efb72f133a6f8c723b-hantzsche_wendt_unit_92.cnf
10000 1.0 0.0 2500000.0 0.0 2500000.0 0.0 2500000.0 0.0 2500000.0 0.04 222222.22 0.01 1428571.43 eede03732955f620b5291f9dcf9f95df-tseitin_n200_d3.cnf
1049.37 1.0 680.45 1.54 726.86 1.44 679.58 1.54 480.72 2.18 597.45 1.76 479.44 2.19 16a0949c23ac67c57c5773403daaca60-coreMQTT:MQTT_Connect.cnf
317.62 1.0 214.1 1.48 173.41 1.83 97.34 3.26 76.67 4.14 50.72 6.26 35.8 8.87 d6c845a5f92ebc059b3f0ab2f6d395ed-cfi-rigid-z2-0088-02-or_2_shuffle_all.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 9f7ec7ef3a908c2e93b5553670a207b1-rphp_p14_r14.cnf
42.16 1.0 24.7 1.71 18.2 2.32 9.8 4.3 6.83 6.18 4.87 8.66 4.53 9.32 a1158a2d8c8a1c6da02c2c4fcb32337f-6s158_Iter2.cnf
878.82 1.0 867.14 1.01 595.47 1.48 536.68 1.64 389.11 2.26 308.0 2.85 262.09 3.35 b3cf73d0383f781adf09a2192fa03a15-string_compare_safety_cbmc_unwinding_670.cnf
10000 1.0 0.0 2500000.0 0.01 1428571.43 0.02 476190.48 0.02 454545.45 0.0 3333333.33 0.01 1428571.43 d21199e73859ca35386912c5c475d6c7-tseitin_n192_d3.cnf
241.0 1.0 146.12 1.65 82.77 2.91 34.76 6.93 23.25 10.36 12.79 18.84 8.64 27.89 885c0d25480fe4db3cd5d3b4bc044e76-SCPC-500-17.cnf
1603.14 1.0 1630.28 0.98 1414.65 1.13 1590.16 1.01 1367.45 1.17 1152.03 1.39 891.04 1.8 4348c6b9af237291558b154a9de82969-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_aad.cnf
10000 1.0 10000 1.0 10000 1.0 3958.27 2.53 2090.54 4.78 1002.01 9.98 716.07 13.97 4a85e090bda23cef9bf2aed55d489ab6-sin_depth_miter_5.cnf
980.97 1.0 873.63 1.12 836.26 1.17 238.63 4.11 149.64 6.56 120.36 8.15 73.57 13.33 d8bb23406e76bf5a4b7a6edba8784a74-Lab-Project-FreeRTOS-Cellular-Library:Cellular_ATRemoveTrailingWhiteSpaces.cnf
416.07 1.0 301.38 1.38 260.99 1.59 230.64 1.8 178.24 2.33 123.15 3.38 91.0 4.57 594b07c07aee036a7aca35d44e2316da-div-mitern168.cnf
47.88 1.0 35.57 1.35 26.87 1.78 18.57 2.58 11.26 4.25 7.86 6.09 6.57 7.28 9f901378a6feabcc94019a018a70d42b-sin-mitern29.cnf
1955.81 1.0 33.47 58.44 31.59 61.91 38.12 51.31 28.4 68.86 22.84 85.63 22.53 86.8 e436f6303d3f499969eafe05b0914a4b-bmc_QICE_snp_vld_50.cnf
144.4 1.0 156.14 0.92 318.17 0.45 382.88 0.38 438.25 0.33 397.12 0.36 292.82 0.49 0823bc5f954c6366702877556f0d3680-linked_list_swap_contents_safety_unwind66.cnf
1247.41 1.0 961.61 1.3 799.32 1.56 588.12 2.12 374.28 3.33 232.96 5.35 159.05 7.84 7e5396d6b00b82c2fc0ea1d7c6505afd-manthey_single-ordered-initialized-w50-b7.cnf
306.09 1.0 225.91 1.35 117.88 2.6 89.54 3.42 46.48 6.58 28.55 10.72 18.83 16.26 07b7859003d84402cbb1ebdc37655d55-6s186_Iter20.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 f1b3d254596523910f3af07fc1942e64-Break_unsat_12_19.xml.cnf
10000 1.0 10000 1.0 10000 1.0 2805.9 3.56 1877.19 5.33 996.91 10.03 666.24 15.01 39b3fde35939134f3b011ebb31842610-PancakeVsInsertSort_9_4.cnf
462.41 1.0 712.94 0.65 351.59 1.32 250.25 1.85 162.14 2.85 65.53 7.06 52.58 8.79 ca6db14aaa04027d2b8af47ec910bd68-cfi-rigid-s2-0064-04-or_2.cnf
773.68 1.0 471.68 1.64 263.28 2.94 122.35 6.32 73.32 10.55 39.48 19.59 30.07 25.73 20840b5020649385e3f8f4965de7a123-hantzsche_wendt_unit_83.cnf
1867.22 1.0 111.14 16.8 256.37 7.28 272.84 6.84 90.19 20.7 421.4 4.43 269.21 6.94 351746fa3de2464c903c85e726cfed55-linked_list_swap_contents_safety_unwind67.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 3205.84 3.12 1819.39 5.5 1481.81 6.75 0a20cb72e5b005b8ed09d8a93184604a-j3037_9_gmto_bm1.cnf
40.79 1.0 16.33 2.5 12.65 3.22 8.85 4.61 6.55 6.22 4.72 8.63 4.32 9.44 65138afdf7eb054be5131f2b0de84369-satch2ways12u.cnf
114.64 1.0 78.22 1.47 52.57 2.18 39.37 2.91 25.2 4.55 15.3 7.49 12.01 9.55 488b147304549670f31653c932684e2c-sin-mitern28.cnf
282.16 1.0 252.83 1.12 204.04 1.38 197.79 1.43 168.49 1.67 133.32 2.12 78.78 3.58 c3de1f05d136b8ec420732ca829f3217-corePKCS11:C_CreateObject.cnf
1098.82 1.0 1152.27 0.95 589.76 1.86 190.78 5.76 140.85 7.8 107.13 10.26 59.37 18.51 7993005e2949524b293b216ed9c65126-cfi-rigid-s2-0064-03-or_2_shuffle_all.cnf
12.74 1.0 6.48 1.97 6.07 2.1 6.75 1.89 4.97 2.56 3.84 3.32 4.31 2.96 0dc468413b65339fad7e4f981bf2fb1e-reconf20_61_myciel4_2.cnf
60.19 1.0 67.71 0.89 53.14 1.13 38.52 1.56 23.07 2.61 21.69 2.77 19.71 3.05 00aefd1fc30c425075166ca051e57218-barman-pfile10-038.sas.ex.15.cnf
79.97 1.0 51.95 1.54 38.4 2.08 25.41 3.15 17.26 4.63 11.87 6.74 9.4 8.5 a65dfd8b3468d202ff3ba8731018622e-j3037_10_gmto_bm1.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 47a1a6f5687ed19c5c0f77c2c81f3f81-tseitin_grid_n14_m14.cnf
147.34 1.0 256.76 0.57 144.2 1.02 67.89 2.17 42.38 3.48 31.71 4.65 24.72 5.96 d78819115db81dee343d7777fbc5844f-cfi-rigid-s2-0064-02-or_2.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 2885.78 3.47 1629.72 6.14 d518d21a9d851741940749cb59f558af-rphp_p6_r28.cnf
627.19 1.0 741.22 0.85 412.3 1.52 458.78 1.37 459.41 1.37 316.1 1.98 151.86 4.13 0a514edbeace21927e52d75f2d4a8efd-ota-for-aws-iot-embedded-sdk:parseJSONbyModel.cnf
271.13 1.0 329.47 0.82 211.41 1.28 179.35 1.51 118.94 2.28 74.98 3.62 41.4 6.55 78cdffdf5bbb89beb753f9ffab7fa45f-sudoku-N30-6.cnf
134.49 1.0 119.5 1.13 103.84 1.3 70.71 1.9 55.32 2.43 32.38 4.15 26.65 5.05 4513c58c16e72a34f9f8518db7baeb9e-ktf_TF-3.tf_3_0.02_24.cnf
288.03 1.0 124.01 2.32 77.52 3.72 27.1 10.63 15.89 18.13 10.27 28.04 8.81 32.7 81b674a2aa6fbda9b06cf8ea334ddc44-beempgsol2b1.cnf
762.17 1.0 679.1 1.12 784.73 0.97 697.04 1.09 522.91 1.46 316.39 2.41 209.78 3.63 2f9cb22859718ab6c201726a91cfefe1-aws-encryption-sdk-c:aws_cryptosdk_priv_try_gen_key.cnf
10000 1.0 10000 1.0 10000 1.0 3689.57 2.71 2349.14 4.26 1344.62 7.44 780.31 12.82 7e9318578a6bdd7dfa9fc261be8a0839-PancakeVsSelectionSort_7_7.cnf
250.38 1.0 316.91 0.79 305.66 0.82 185.82 1.35 171.57 1.46 118.3 2.12 92.74 2.7 d8602e623f87dd33f4a1a69ee42d15be-reconf20_50_grid10_3_6844.cnf
116.81 1.0 53.02 2.2 30.95 3.77 20.74 5.63 11.82 9.88 6.58 17.74 5.73 20.37 3ff263696219ca9e301b0a1b345eb9aa-SCPC-500-4.cnf
792.16 1.0 705.8 1.12 490.49 1.62 352.04 2.25 243.96 3.25 164.27 4.82 109.95 7.2 6a3e3d3a65a46608b44d81f9e4621087-6s105_Iter35.cnf
917.53 1.0 529.37 1.73 354.05 2.59 216.06 4.25 145.52 6.31 82.77 11.09 60.12 15.26 f8ad493b11bf0692c1f3919642cebdb1-PancakeVsInsertSort_9_3.cnf
3632.09 1.0 2703.96 1.34 2029.94 1.79 1451.21 2.5 1047.28 3.47 814.06 4.46 531.18 6.84 85aa1f0820da17412b8ee803b4a85207-sudoku-N30-4.cnf
641.16 1.0 481.75 1.33 417.25 1.54 334.15 1.92 249.61 2.57 170.56 3.76 144.31 4.44 d702aa8568706efda8308ef8d24f907b-div-mitern167.cnf
10000 1.0 4084.54 2.45 2764.79 3.62 1852.89 5.4 1102.39 9.07 628.0 15.92 447.87 22.33 81e73c41a76d7b432cf86c43ffe23986-PancakeVsInsertSort_8_6.cnf
10000 1.0 0.11 87719.3 0.12 86206.9 0.12 82644.63 0.1 98039.22 0.06 169491.53 0.07 140845.07 8bfbffbfea9e5a5993bc024f39adff84-worker_40_80_40_0.85.cnf
99.52 1.0 214.79 0.46 190.12 0.52 48.06 2.07 184.81 0.54 141.0 0.71 117.01 0.85 88bfa72210baef40a2903d95044dc19d-linked_list_swap_contents_safety_unwind40.cnf
3342.21 1.0 10000 0.33 1855.24 1.8 1245.83 2.68 897.21 3.73 655.03 5.1 456.73 7.32 e47567e16e4aeb4d8f3806dfbfdfd646-sudoku-N30-8.cnf
596.52 1.0 693.51 0.86 640.88 0.93 669.13 0.89 631.85 0.94 886.77 0.67 830.49 0.72 a7cb2567e1f5b7ec2f4ba09931e29b96-s2n:s2n_stuffer_write_base64.cnf
2849.43 1.0 2024.69 1.41 1333.65 2.14 864.47 3.3 488.57 5.83 370.75 7.69 271.03 10.51 c221c5dc006de79e561124dab52aae82-mdp-28-12-unsat.cnf
58.56 1.0 39.29 1.49 36.41 1.61 20.12 2.91 16.12 3.63 10.8 5.42 9.34 6.27 c1b30b4e03c3024ad9d084e29e79aa46-BubbleVsPancakeSort_6_6.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 56e7489da32260e1bdd085a418592ec2-cliquecoloring_n18_k6_c5.cnf
917.55 1.0 627.92 1.46 389.08 2.36 204.38 4.49 118.8 7.72 68.61 13.37 46.46 19.75 5f24ae73bb2a0ec3bef68d8a9680f04f-af-synthesis_stb_50_80_7_unsat.cnf
1068.13 1.0 760.07 1.41 502.39 2.13 339.6 3.15 217.87 4.9 135.27 7.9 101.74 10.5 bb0613595001749a0ada02f2da85bc89-PancakeVsInsertSort_7_7.cnf
1377.51 1.0 1304.33 1.06 1150.06 1.2 1177.82 1.17 800.65 1.72 636.32 2.16 480.81 2.87 3666617901c8500d78700dac959729d4-pj2002_k9.cnf
115.38 1.0 54.53 2.12 36.76 3.14 22.07 5.23 10.15 11.37 7.1 16.26 5.34 21.61 73ef1e87dbb7965ecb558e62dedb3a0c-SCPC-500-8.cnf
477.13 1.0 498.92 0.96 275.68 1.73 172.97 2.76 96.35 4.95 58.03 8.22 42.65 11.19 0447371bb8a97e8fe5d3cee6de1db766-UTI-20-10p0-sc2009.cnf
1354.38 1.0 789.81 1.71 598.11 2.26 346.11 3.91 167.92 8.07 94.41 14.35 63.25 21.41 bd5bc8b7711b75f3cd3ad935bf000659-af-synthesis_stb_50_20_8_unsat.cnf
341.31 1.0 352.13 0.97 322.02 1.06 250.18 1.36 239.13 1.43 177.01 1.93 143.3 2.38 b344f80cef9889d952c76736d0ad92d9-9dlx_vliw_at_b_iq6.cnf
3951.77 1.0 1967.06 2.01 1425.71 2.77 965.44 4.09 669.71 5.9 346.35 11.41 260.84 15.15 26f8332e50a4ba5c371852e3737a3002-mdp-28-11-unsat.cnf
1180.26 1.0 802.72 1.47 590.86 2.0 334.24 3.53 201.53 5.86 111.49 10.59 76.56 15.42 b962abe508e5a677dbce14056111b48b-j3037_1_rggt_bm1.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 3970.31 2.52 2520.89 3.97 59047491e4828ed2bb79572330df6f77-mdp-32-16-unsat.cnf
89.82 1.0 148.07 0.61 109.84 0.82 71.35 1.26 87.68 1.02 124.68 0.72 166.22 0.54 eb659cd21250abdc8c9cec49073c32c6-linked_list_swap_contents_safety_unwind59.cnf
957.81 1.0 847.82 1.13 939.31 1.02 673.48 1.42 543.94 1.76 411.64 2.33 341.58 2.8 9e35558ea8ffba630cd8c8f90e14af14-string_compare_safety_cbmc_unwinding_730.cnf
235.03 1.0 181.71 1.29 159.03 1.48 141.7 1.66 127.55 1.84 84.25 2.79 73.86 3.18 0398e6b20de133ba8b49c74b67dad7b7-6s133-sc2014.cnf
815.04 1.0 800.57 1.02 866.29 0.94 827.82 0.98 474.48 1.72 511.58 1.59 359.53 2.27 59e596f5f845a2487370950b37ec3db2-aws-encryption-sdk-c:aws_cryptosdk_enc_ctx_size.cnf
511.56 1.0 656.86 0.78 533.03 0.96 501.79 1.02 407.2 1.26 318.89 1.6 195.13 2.62 8c8b72ac19c0f93813b614a18abaf512-aws-encryption-sdk-c:aws_cryptosdk_keyring_trace_eq.cnf
185.3 1.0 128.48 1.44 112.98 1.64 139.83 1.33 94.68 1.96 64.49 2.87 68.43 2.71 cb8f9ffb66d9b5ef663e6759be0b5e4e-q_query_3_L200_coli.sat.cnf
107.87 1.0 97.49 1.11 240.77 0.45 92.2 1.17 118.36 0.91 103.25 1.04 97.66 1.1 d0ee45ac97c6b5cc63a528f46a5797aa-linked_list_swap_contents_safety_unwind44.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 2842.38 3.52 1720.63 5.81 1180.52 8.47 d90c519010bfda89d1626c0321a55a64-j3045_10_gmto_bm1.cnf
2558.87 1.0 10000 0.26 4886.45 0.52 2381.53 1.07 1826.36 1.4 1826.86 1.4 992.23 2.58 e5f5dbace0183455d167a88100312c34-Nb52T6.cnf
257.0 1.0 198.86 1.29 177.99 1.44 134.65 1.91 113.56 2.26 65.11 3.95 54.05 4.76 7101289c67f4c4ba117ad06ebb7d18a0-6s184.cnf
89.23 1.0 46.12 1.93 25.73 3.47 16.22 5.5 8.84 10.1 5.68 15.7 4.73 18.88 b96071f89fa1b1670b8375010b1dd42b-SCPC-500-9.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 3777.54 2.65 2528.6 3.95 1478.66 6.76 064fe286277f695f42b556ef991036ff-sin_depth_miter_2.cnf
220.79 1.0 219.84 1.0 222.37 0.99 152.71 1.45 151.07 1.46 82.63 2.67 43.85 5.04 b913c17d26ac9f3ad15fa83dc98960c7-sudoku-N30-27.cnf
474.46 1.0 456.27 1.04 395.83 1.2 335.38 1.41 371.58 1.28 358.85 1.32 303.99 1.56 c2894b8d82492f03bb73bbc65896c016-aws-c-common:aws_priority_queue_s_remove_node.cnf
26.67 1.0 21.11 1.26 25.28 1.06 25.68 1.04 39.53 0.67 38.35 0.7 20.05 1.33 fa88b447f6b41b04686085480678affe-UNSAT_H_instances_childsnack_p12.hddl_1.cnf
10000 1.0 0.15 68493.15 0.16 64102.56 0.23 44247.79 0.19 53191.49 0.1 103092.78 0.11 90090.09 b8d10f8c82a85c03c000fbd005e5a838-worker_50_150_40_0.85.cnf
2921.34 1.0 2632.36 1.11 1517.99 1.92 1235.23 2.37 809.21 3.61 697.95 4.19 431.06 6.78 7fe153ced2c966dcdeb42b6714b4d6b7-sudoku-N30-11.cnf
123.25 1.0 67.83 1.82 42.73 2.88 25.05 4.92 14.41 8.55 7.7 16.01 5.74 21.46 a33d32bb816c0da62c7d946c18286a0d-SCPC-500-2.cnf
1801.83 1.0 1350.42 1.33 1103.03 1.63 674.77 2.67 504.13 3.57 308.72 5.84 266.09 6.77 26342c62148962a09872831b7cef8aae-div-mitern165.cnf
1341.2 1.0 1622.48 0.83 1280.54 1.05 1028.41 1.3 912.07 1.47 671.72 2.0 517.84 2.59 d3c22bb79a638adc35682226f35e3bc4-pj2003_k9.cnf
1585.07 1.0 966.5 1.64 609.75 2.6 346.38 4.58 208.74 7.59 111.04 14.28 70.02 22.64 03c44a93577c98119dc498053888937a-ctl_4291_567_1_unsat_pre.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 3097.09 3.23 1543.13 6.48 915.96 10.92 1b78438db7da55c2b4c4b8ec6b6cd6c6-soelberg_unit_158.cnf
136.3 1.0 130.04 1.05 122.11 1.12 98.21 1.39 85.41 1.6 53.07 2.57 41.27 3.3 e7c0d40392681b1a55d5d3c826a26766-reconf20_116_le450_25c_1.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 9cdf94203777c9f036f412bef1cc7c85-tseitin_n196_d3.cnf
114.98 1.0 54.93 2.09 32.75 3.51 21.74 5.29 12.22 9.41 6.19 18.58 5.24 21.96 cac1c09f968ef8654c499156d1292385-SCPC-500-18.cnf
3355.18 1.0 3200.06 1.05 1985.64 1.69 1057.86 3.17 887.65 3.78 669.01 5.02 387.61 8.66 d7039acbd2f060fe1e32a273b07c2c77-sudoku-N30-29.cnf
120.09 1.0 55.9 2.15 36.54 3.29 21.28 5.64 10.24 11.73 6.9 17.4 5.07 23.68 0e89b0f96c99f1a6aaaf66c3ae805919-SCPC-500-15.cnf
326.51 1.0 168.71 1.94 114.7 2.85 57.78 5.65 30.86 10.58 17.21 18.97 10.81 30.2 7f4d55b70c61ffc611a58e01d52c19bb-SCPC-500-11.cnf
232.8 1.0 120.68 1.93 67.55 3.45 43.14 5.4 23.27 10.0 12.19 19.1 8.48 27.44 7a236bb9e1566b80fa7b593a7e973efa-SCPC-500-16.cnf
10000 1.0 0.21 48076.92 0.16 63291.14 0.19 52356.02 0.16 64102.56 0.11 94339.62 0.11 89285.71 e4128445a07bb86afca1f3590d9adfa9-worker_80_80_80_0.8.cnf
10000 1.0 4145.69 2.41 1587.81 6.3 2468.47 4.05 585.24 17.09 297.23 33.64 244.41 40.91 6901858f1edbe3b1d327902dab720326-reconf20_20_grid10_4_4957.cnf
1498.01 1.0 1063.03 1.41 1200.31 1.25 1023.43 1.46 953.46 1.57 768.91 1.95 837.22 1.79 0294158664d9ada36bd23fbb652cb823-smtlib-qfbv-aigs-countbits128-tseitin.cnf
140.39 1.0 64.52 2.18 40.14 3.5 24.73 5.68 12.72 11.03 7.69 18.26 5.76 24.38 48eacbc152c7710dfd6fe17a8a17199e-SCPC-500-7.cnf
2311.32 1.0 10000 0.23 1835.91 1.26 723.08 3.2 379.18 6.1 216.37 10.68 223.39 10.35 fbf3b9f8a03a1efedae3da04622fe96e-sqrt-mitern168.cnf
321.93 1.0 169.04 1.9 102.96 3.13 64.41 5.0 33.75 9.54 19.21 16.76 14.31 22.49 6f956a3f95ccaf35a3de1fe72b9cf79e-soelberg_unit_109.cnf
3128.46 1.0 2174.27 1.44 1725.77 1.81 1221.87 2.56 943.47 3.32 541.52 5.78 356.6 8.77 3d4beaebb3d87819ce9ff59e72047ef7-sudoku-N30-20.cnf
900.38 1.0 514.33 1.75 311.58 2.89 380.18 2.37 251.21 3.58 454.22 1.98 301.74 2.98 c98459d6a1763d809729e276b9c4cbbd-linked_list_swap_contents_safety_unwind74.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 08991fb6c7c45205df7f2bc2f51fb1d9-bobsmdct_k500.cnf
365.2 1.0 187.66 1.95 134.27 2.72 99.59 3.67 56.86 6.42 40.27 9.07 37.74 9.68 161a73825fb50badeedbf8d12e1e043a-cfi-rigid-z2-0088-03-or_2.cnf
28.21 1.0 217.72 0.13 48.39 0.58 67.41 0.42 28.68 0.98 64.68 0.44 45.11 0.63 004b0f451f7d96f6a572e9e76360f51a-spg_420_280.cnf
1924.64 1.0 1096.5 1.76 840.77 2.29 511.44 3.76 374.69 5.14 210.94 9.12 157.06 12.25 41423c03ef173a5b81d6e6776f316fa5-PancakeVsInsertSort_7_8.cnf
10000 1.0 0.08 119047.62 0.08 128205.13 0.07 138888.89 0.09 109890.11 0.05 217391.3 0.07 149253.73 5c6495ff589cbbcb550e1655dadbd143-worker_40_80_35_0.85.cnf
125.11 1.0 67.41 1.86 54.33 2.3 41.87 2.99 34.22 3.66 22.72 5.51 19.57 6.39 567964f034c8ffa65952897ce4927c6c-ablmulub16x4o.cnf
636.74 1.0 587.88 1.08 395.08 1.61 412.94 1.54 287.2 2.22 434.23 1.47 249.66 2.55 4408f3ebfc37275a23ef57cfcc8aba6d-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_content_type.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 4245.25 2.36 2542.01 3.93 ae5f6e83a289d226a353efd95b663717-6s22_Iter99.cnf
226.36 1.0 227.44 1.0 196.17 1.15 186.3 1.22 156.62 1.45 178.37 1.27 178.56 1.27 2c0379771c5313567ea9e230438f203f-reconf20_320_hc-square-2_1.cnf
62.04 1.0 50.04 1.24 49.05 1.26 41.45 1.5 39.13 1.59 28.41 2.18 24.5 2.53 5e04f38ff11cee5d75fb98e12f6a14fc-sqrt-mitern172.cnf
90.38 1.0 97.73 0.92 78.33 1.15 79.46 1.14 82.03 1.1 65.16 1.39 60.94 1.48 a5e0082efb1da4dabaa165c2bda5f85e-linked_list_swap_contents_safety_unwind41.cnf
10000 1.0 10000 1.0 4816.56 2.08 3204.39 3.12 2320.5 4.31 1815.58 5.51 1188.63 8.41 3d449de3d6e722c9ce4a38ec748ee3cf-sudoku-N30-10.cnf
2169.43 1.0 400.53 5.42 160.24 13.54 108.88 19.92 64.83 33.46 46.79 46.37 33.42 64.92 02c6fe8483e4f4474b7ac9731772535d-ncc_none_7047_6_3_3_0_0_420.cnf
638.22 1.0 201.91 3.16 159.45 4.0 130.54 4.89 88.83 7.19 404.1 1.58 140.63 4.54 ddcb0cd9b7bca43c3a5189326ae88aab-linked_list_swap_contents_safety_unwind71.cnf
1531.7 1.0 0.03 49409.68 0.04 38292.5 0.05 31259.18 0.04 39274.36 0.03 56729.63 0.04 40307.89 a4451734e7f5f2ce7b481688a693c4e9-worker_20_20_16_0.9.cnf
10000 1.0 4045.99 2.47 1240.3 8.06 761.32 13.14 500.15 19.99 271.14 36.88 94.59 105.72 c846dfb21b50596aef8fbe5591d75eb0-UNSAT_MS_opt_snake_p20.pddl_29.cnf
876.79 1.0 58.02 15.11 58.53 14.98 148.49 5.9 228.86 3.83 124.65 7.03 83.69 10.48 cd1585619fea2f2634525a3663873764-linked_list_swap_contents_safety_unwind55.cnf
1449.28 1.0 1318.29 1.1 1196.39 1.21 769.11 1.88 453.09 3.2 233.27 6.21 157.95 9.18 6dd57612dab7692b8c38225bb852ce36-hwmcc15deep-6s516r-k18-sc2017.cnf
348.59 1.0 246.74 1.41 97.07 3.59 99.78 3.49 58.13 6.0 48.19 7.23 36.21 9.63 3d2b0088dccf11d1f82c89b7122c26e1-cfi-rigid-z2-0088-01-or_2_shuffle_all.cnf
553.18 1.0 420.48 1.32 218.07 2.54 133.73 4.14 81.1 6.82 51.58 10.73 36.14 15.31 e55a49d8065d65650f24c0f3ecef30b6-af-synthesis_stb_50_120_4_unsat.cnf
37.27 1.0 31.96 1.17 33.1 1.13 30.4 1.23 30.28 1.23 33.3 1.12 30.16 1.24 436d00b6d41912e800e9855d08c75139-manol-pipe-f7nidw.cnf
1273.5 1.0 717.6 1.77 782.05 1.63 642.11 1.98 410.2 3.1 538.33 2.37 380.2 3.35 35ad744923721e37a2f58443179c31a8-coreMQTT:MQTT_SerializeConnect.cnf
107.31 1.0 44.01 2.44 23.95 4.48 15.28 7.02 9.32 11.52 5.69 18.86 4.74 22.64 3159a02d096424aab6295c76360633a9-SCPC-500-10.cnf
663.64 1.0 527.54 1.26 337.77 1.96 225.16 2.95 137.87 4.81 75.91 8.74 52.21 12.71 372021735d9e46002b862aa2a038a818-j3045_4_rggt_bm1.cnf
204.47 1.0 150.62 1.36 111.64 1.83 73.03 2.8 58.26 3.51 30.47 6.71 22.27 9.18 43687a48fb119ca61b47c2fc69a71e7d-manthey_single-ordered-initialized-w42-b8.cnf
223.06 1.0 141.46 1.58 95.17 2.34 46.15 4.83 33.37 6.68 15.65 14.25 11.53 19.34 a7aac5c83f236fd8b3de3275e3f5499d-edit_distance041_183.cnf
1437.44 1.0 1835.92 0.78 1716.08 0.84 764.61 1.88 1900.93 0.76 296.1 4.85 309.27 4.65 13b13b34fe88f093aca06d6d035ee797-Lab-Project-FreeRTOS-Cellular-Library:Cellular_ATRemovePrefix.cnf
570.0 1.0 550.77 1.03 675.86 0.84 568.49 1.0 597.64 0.95 561.0 1.02 402.43 1.42 23e61c50ee2ac5cad1d337572abdebcf-aws-encryption-sdk-c:aws_cryptosdk_priv_hdr_parse_edks.cnf
21.26 1.0 27.31 0.78 69.2 0.31 40.01 0.53 29.25 0.73 64.48 0.33 43.37 0.49 02627689047d06fbb642eef14768d751-ps_200_300_70.cnf
476.09 1.0 81.48 5.84 75.92 6.27 76.5 6.22 68.17 6.98 78.6 6.06 76.0 6.26 a58badecf3c901594f06d021f54c3a11-aws-c-common:aws_priority_queue_s_sift_either.cnf
3184.22 1.0 1872.35 1.7 1119.35 2.84 667.64 4.77 349.04 9.12 179.7 17.72 113.54 28.04 cda0871abcaa41bb403207731bd24fe5-af-synthesis_stb_50_100_4_unsat.cnf
16.85 1.0 0.0 5616.67 0.01 3370.0 0.04 455.41 0.03 674.0 0.0 5616.67 0.01 2808.33 01d142c43f3ce9a8c5ef7a1ecdbb6cba-urquhart3_25bis.shuffled.cnf
71.15 1.0 53.14 1.34 57.95 1.23 53.18 1.34 43.61 1.63 34.72 2.05 28.93 2.46 a130a3f95891daed1bfd71c77bd2d8a1-SAT_dat.k80.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 4532.92 2.21 1725.7 5.79 1438.47 6.95 354936f86e55ab8d00e6e1f5f7c140a9-xor_op_n44_d3.cnf
10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 10000 1.0 d7f273dc6e97efe55c8b7f9cc547eb2d-sin_depth_miter_1.cnf

BIN
utils/hashmap.o Normal file

Binary file not shown.

View File

@ -1,21 +1,31 @@
#include "paras.hpp"
#include <cstdio>
#include <iostream>
#include <string>
void paras::init_paras() {
#define PARA(N, T, D, L, H, C) \
if (!strcmp(#T, "int")) map_int[#N] = D; \
else map_double[#N] = D;
else map_double[#N] = D;
PARAS
#undef PARA
#define STR_PARA(N, D, C) \
map_string[#N] = D;
STR_PARAS
#undef STR_PARA
}
void paras::sync_paras() {
#define PARA(N, T, D, L, H, C) \
if (!strcmp(#T, "int")) N = map_int[#N]; \
else N = map_double[#N];
else N = map_double[#N];
PARAS
#undef PARA
#define STR_PARA(N, D, C) \
N = map_string[#N];
STR_PARAS
#undef STR_PARAs
}
@ -27,6 +37,10 @@ void paras::set_para(char *name, double val) {
map_double[name] = val;
}
void paras::set_para(char *name, char* val) {
map_string[name] = val;
}
void paras::print_change() {
printf("c ------------------- Paras list -------------------\n");
@ -35,9 +49,16 @@ void paras::print_change() {
#define PARA(N, T, D, L, H, C) \
if (map_int.count(#N)) printf("c %-20s\t %-10s\t %-10d\t %-10s\t %s\n", (#N), (#T), N, (#D), (C)); \
else printf("c %-20s\t %-10s\t %-10f\t %-10s\t %s\n", (#N), (#T), N, (#D), (C));
else printf("c %-20s\t %-10s\t %-10f\t %-10s\t %s\n", (#N), (#T), N, (#D), (C));
PARAS
#undef PARA
#define STR_PARA(N, D, C) \
printf("c %-20s\t string\t\t %-10s\t %-10s\t %s\n", (#N), N.c_str(), (#D), (C));
STR_PARAS
#undef STR_PARA
printf("c --------------------------------------------------\n");
}

View File

@ -6,7 +6,7 @@
// name, type, default, low, high, comments
#define PARAS \
PARA( DPS , int , 0 , 0 , 2 , "DPS/NPS") \
PARA( DPS , int , 0 , 0 , 1 , "DPS/NPS") \
PARA( DPS_period , int , 10000 , 1 , 1e8 , "DPS sharing period") \
PARA( margin , int , 0 , 0 , 1e3 , "DPS margin") \
PARA( pakis , int , 0 , 0 , 1 , "Use pakis diversity") \
@ -18,8 +18,10 @@
PARA( shuffle , int , 1 , 0 , 1 , "Use random shuffle") \
PARA( simplify , int , 1 , 0 , 1 , "Use Simplify (only preprocess)") \
PARA( threads , int , 32 , 1 , 128 , "Thread number") \
PARA( times , double , 5000 , 0 , 1e8 , "Cutoff time") \
PARA( times , double , 5000 , 0 , 1e8 , "Cutoff time")
#define STR_PARAS \
STR_PARA( config , "" , "Config file")
struct paras
{
@ -28,14 +30,21 @@ struct paras
PARAS
#undef PARA
#define STR_PARA(N, D, C) \
std::string N = D;
STR_PARAS
#undef STR_PARA
std::unordered_map<std::string, int> map_int;
std::unordered_map<std::string, double> map_double;
std::unordered_map<std::string, char*> map_string;
void init_paras ();
void sync_paras ();
void print_change ();
void set_para (char *arg, int val);
void set_para (char *arg, double val);
void set_para (char *arg, char* val);
};
#define OPT(N) (opt->N)

BIN
utils/paras.o Normal file

Binary file not shown.

View File

@ -1,6 +1,6 @@
#include "../preprocess/preprocess.hpp"
#include <cstring>
#include <fstream>
#include "parse.hpp"
using namespace std;
char *read_whitespace(char *p) {
@ -41,7 +41,7 @@ char *read_int(char *p, int *i)
return p;
}
void preprocess::readfile(const char *file) {
void readfile(const char *file, int *vars, int *clauses, vec<vec<int>> &clause) {
std::string infile(file);
std::ifstream fin(infile);
fin.seekg(0, fin.end);
@ -65,14 +65,12 @@ void preprocess::readfile(const char *file) {
else if (*p == 'p')
{
p += 5;
p = read_int(p, &vars);
p = read_int(p, &clauses);
orivars = vars;
oriclauses = clauses;
p = read_int(p, vars);
p = read_int(p, clauses);
}
else
{
int32_t dimacs_lit;
int dimacs_lit;
p = read_int(p, &dimacs_lit);
if (*p == '\0' && dimacs_lit != 0) exit(0);
if (dimacs_lit == 0)
@ -81,20 +79,20 @@ void preprocess::readfile(const char *file) {
clause[num_clauses].push(dimacs_lit);
}
}
if (num_clauses != clauses + 1) {
if (num_clauses != *clauses + 1) {
// printf("c parse warning: clauses: %d, real clauses: %d\n", clauses, num_clauses - 1);
clauses = num_clauses - 1;
*clauses = num_clauses - 1;
}
delete []data;
}
void preprocess::write_cnf() {
printf("p cnf %d %d\n", vars, clauses);
for (int i = 1; i <= clauses; i++) {
int l = clause[i].size();
for (int j = 0; j < l; j++) {
printf("%d ", clause[i][j]);
}
puts("0");
}
}
// void preprocess::write_cnf() {
// printf("p cnf %d %d\n", vars, clauses);
// for (int i = 1; i <= clauses; i++) {
// int l = clause[i].size();
// for (int j = 0; j < l; j++) {
// printf("%d ", clause[i][j]);
// }
// puts("0");
// }
// }

9
utils/parse.hpp Normal file
View File

@ -0,0 +1,9 @@
#ifndef _parse_hpp_INCLUDED
#define _parse_hpp_INCLUDED
#include "vec.hpp"
char *read_int(char *p, int *i);
char *read_until_new_line(char *p);
void readfile(const char *file, int *orivars, int *oriclauses, vec<vec<int>> &clause);
#endif

BIN
utils/parse.o Normal file

Binary file not shown.

View File

@ -30,7 +30,7 @@ class vec {
void setsize (int v) { sz = v;}
void push (void) { if (sz == cap) capacity(sz + 1); new (&data[sz]) T(); sz++; }
void push (const T& elem) { if (sz == cap) capInc(sz + 1); data[sz++] = elem; }
void push (const T& elem) { if (sz == cap) capInc(sz + 1); data[sz++] = elem;}
void push_ (const T& elem) { assert(sz < cap); data[sz++] = elem; }
void pop (void) { assert(sz > 0), sz--, data[sz].~T(); }
void copyTo (vec<T>& copy) { copy.clear(); copy.growTo(sz); for (int i = 0; i < sz; i++) copy[i] = data[i]; }
@ -63,7 +63,7 @@ void vec<T>::clear(bool dealloc) {
template<class T>
void vec<T>::capInc(int to_cap) {
if (cap >= to_cap) return;
int add = imax((to_cap - cap + 1) & ~1, ((cap >> 1) + 2) & ~1);
int add = imax((to_cap - cap + 1) & ~1, ((cap >> 1) + 2) & ~1);
if (add > __INT_MAX__ - cap || ((data = (T*)::realloc(data, (cap += add) * sizeof(T))) == NULL) && errno == ENOMEM)
throw OutOfMemoryException();
}

View File

@ -15,8 +15,9 @@ void basekissat::add(int l) {
kissat_add(solver, l);
}
void basekissat::configure(const char* name, int id) {
kissat_set_option(solver, name, id);
void basekissat::configure(const char* name, int val) {
printf("c %d set %s to %d\n", id, name, val);
kissat_set_option(solver, name, val);
}
int basekissat::solve() {
@ -52,8 +53,6 @@ void basekissat::exp_clause(void* cl, int lbd) {
void call_back_out(void *solver, int lbd, cvec *c) {
basekissat* S = (basekissat *) solver;
// ++S->x1;
// if (S->solver->nconflict != S->x1 - 1) printf("%d %d\n", S->solver->nconflict, S->x1);
if (lbd <= S->good_clause_lbd) {
S->exp_clause(c, lbd);
}
@ -82,132 +81,26 @@ int call_back_in(void *solver, int *lbd, cvec *c) {
if (S->import_clause.pop(cls) == false) return -1;
*lbd = cls->lbd;
bool res = S->imp_clause(cls, c);
if (S->solver->share_dps != 2) {
if (!S->solver->dps) {
cls->free_clause();
}
if (!res) return -10;
return 1;
}
int kissat_wait_sharing(void *solver) {
auto clk_st = std::chrono::high_resolution_clock::now();
basekissat* S = (basekissat *) solver;
sharer *share = S->in_sharer;
int should_free = 1;
if (S->solver->share_dps == 1) {
// printf("c %d into Light wait\n", S->id);
S->x1 = S->x2 = 0;
{
boost::mutex::scoped_lock lock(share->mtx);
if (share->terminated) return true;
share->waitings += 1;
lock.unlock();
// printf("c %d start wait with number %d\n", S->id, s->waitings);
}
if (share->should_sharing()) share->cond.notify_one();
boost::mutex::scoped_lock lock(share->mtx);
while (share->waitings > 0) {
share->cond.wait(lock);
}
}
else if (S->solver->share_dps == 2) { //share_dps = 2
if (S->period >= S->controller->get_winner_period()) {
S->set_winner_period();
return -1;
}
// printf("c thread %d into select %d\n", S->id, S->period);
S->select_clauses();
// printf("c %d now finish period %d\n", S->id, S->get_period());
S->inc_period();
// printf("c thread %d start import at %d\n", S->id, S->period);
should_free = share->import_clauses(S->id);
// printf("c thread %d finish import at %d\n", S->id, S->period);
}
auto clk_now = std::chrono::high_resolution_clock::now();
int solve_time = std::chrono::duration_cast<std::chrono::milliseconds>(clk_now - clk_st).count();
S->waiting_time += 0.001 * solve_time;
return should_free;
// printf("c %d wait for %d.%03ds\n", S->id, solve_time / 1000, solve_time % 1000);
// printf("c %d finish sharing\n", S->id);
}
void call_back_free(void *solver) {
basekissat* S = (basekissat *) solver;
sharer *share = S->in_sharer;
int current_period = S->get_period() - 1, import_period = current_period - share->margin;
if (import_period < 0) return;
for (int i = 0; i < share->producers.size(); i++) {
if (i == S->id) continue;
basesolver *s = share->producers[i];
period_clauses *pc = s->pq.find(import_period);
if (pc->period != import_period)
puts("*******************************************************");
if (pc->free_clause()) {
s->pq.pop(import_period);
// printf("thread %d enter, %d is free\n", S->id, i);
}
}
// printf("end finish\n");
}
void basekissat::select_clauses() {
sharer *share = in_sharer;
cls.clear();
export_clauses_to(cls);
for (int i = 0; i < cls.size(); i++) {
int sz = cls[i]->size;
while (sz > bucket.size()) bucket.push();
if (sz * (bucket[sz - 1].size() + 1) <= share->share_lits)
bucket[sz - 1].push(cls[i]);
}
period_clauses *pcls = new period_clauses(period);
int space = share->share_lits;
for (int i = 0; i < bucket.size(); i++) {
int clause_num = space / (i + 1);
if (!clause_num) break;
if (clause_num >= bucket[i].size()) {
space -= bucket[i].size() * (i + 1);
for (int j = 0; j < bucket[i].size(); j++)
pcls->push(bucket[i][j]);
bucket[i].clear();
}
else {
space -= clause_num * (i + 1);
for (int j = 0; j < clause_num; j++) {
pcls->push(bucket[i].last());
bucket[i].pop();
}
}
}
int percent = (share->share_lits - space) * 100 / share->share_lits;
if (percent < 75) broaden_export_limit();
if (percent > 98) restrict_export_limit();
//sort finish
pcls->increase_refs(share->producers.size() - 1);
pq.push(pcls);
}
basekissat::basekissat(int id, light* light) : basesolver(id, light) {
good_clause_lbd = 2;
period = 0;
margin = 0;
// outexport.open("export.txt");
// outimport.open("import.txt");
// outfree.open("free.txt");
solver = kissat_init();
solver -> issuer = this;
solver -> cbkImportClause = NULL;
solver -> cbkExportClause = NULL;
solver -> cbkWaitSharing = NULL;
solver -> cbk_start_new_period = NULL;
if (light->opt->share) {
solver -> cbkImportClause = call_back_in;
solver -> cbkExportClause = call_back_out;
solver -> cbkWaitSharing = kissat_wait_sharing;
solver -> cbkFreeClause = call_back_free;
solver -> share_dps = light->opt->DPS;
solver -> share_dps_period= light->opt->DPS_period;
solver -> cbkImportClause = call_back_in;
solver -> cbkExportClause = call_back_out;
solver -> cbk_start_new_period = cbk_start_new_period;
solver -> cbk_free_clauses = cbk_free_clauses;
solver -> dps = light->opt->DPS;
solver -> dps_period = light->opt->DPS_period;
}
}
@ -216,16 +109,21 @@ basekissat::~basekissat(){
}
void basekissat::parse_from_CNF(char* filename) {
strictness strict = NORMAL_PARSING;
file in;
uint64_t lineno;
kissat_open_to_read_file(&in, filename);
kissat_parse_dimacs(solver, strict, &in, &lineno, &solver->max_var);
kissat_close_file(&in);
int vars, clauses;
vec<vec<int>> clause;
readfile(filename, &vars, &clauses, clause);
maxvar = vars;
kissat_reserve(solver, vars);
for (int i = 1; i <= clauses; i++) {
int l = clause[i].size();
for (int j = 0; j < l; j++)
add(clause[i][j]);
add(0);
}
}
void basekissat::parse_from_PAR(preprocess* pre) {
solver->max_var = pre->vars;
maxvar = pre->vars;
kissat_reserve(solver, pre->vars);
for (int i = 1; i <= pre->clauses; i++) {
int l = pre->clause[i].size();
@ -235,49 +133,7 @@ void basekissat::parse_from_PAR(preprocess* pre) {
}
}
void basekissat::export_clauses_to(vec<clause_store *> &clauses) {
clause_store *cls;
while (export_clause.pop(cls)) {
clauses.push(cls);
// outexport << id << ": ";
// for (int i = 0; i < cls->size; i++)
// outexport << cls->data[i] << " ";
// outexport << std::endl;
}
}
void basekissat::import_clauses_from(vec<clause_store *> &clauses) {
for (int i = 0; i < clauses.size(); i++) {
import_clause.push(clauses[i]);
// outimport << id << ": ";
// for (int j = 0; j < clauses[i]->size; j++)
// outimport << clauses[i]->data[j] << " ";
// outimport << std::endl;
}
}
void basekissat::get_model(vec<int> &model) {
printf("111\n");
model.clear();
for (int i = 1; i <= solver->max_var; i++) {
model.push(val(i));
}
printf("222\n");
}
void basekissat::broaden_export_limit() {
++good_clause_lbd;
}
void basekissat::restrict_export_limit() {
if (good_clause_lbd > 2)
--good_clause_lbd;
}
int basekissat::get_conflicts() {
return solver->nconflict;
}
double basekissat::get_waiting_time() {
return waiting_time;
}

View File

@ -15,55 +15,14 @@ public:
int get_conflicts();
void parse_from_CNF(char* filename);
void parse_from_PAR(preprocess *pre);
void get_model(vec<int> &model);
void exp_clause(void *cl, int lbd);
bool imp_clause(clause_store *cls, void *cl);
void export_clauses_to(vec<clause_store *> &clauses);
void import_clauses_from(vec<clause_store *> &clauses);
void broaden_export_limit();
void restrict_export_limit();
double get_waiting_time();
basekissat(int id, light *light);
~basekissat();
int x1 = 0, x2 = 0;
double waiting_time = 0;
kissat* solver;
int good_clause_lbd = 0;
void select_clauses();
int get_period() {
boost::mutex::scoped_lock lock(mtx);
return period;
};
void inc_period() {
boost::mutex::scoped_lock lock(mtx);
period++;
if (period % 100 == 0) printf("c %d reach period %d\n", id, period);
cond.notify_all();
};
void set_winner_period() {
boost::mutex::scoped_lock lock(mtx);
winner_period = period;
cond.notify_all();
}
void dps_terminate() {
{
boost::mutex::scoped_lock lock(mtx);
terminated = 1;
cond.notify_all();
// printf("c thread %d terminated\n", id);
}
terminate();
}
friend int cbkImportClause(void *, int *, cvec *);
friend int cbkExportClause(void *, int *, cvec *);
friend int cbkWaitSharing(void *);
friend void cbkFreeClause(void *);
std::ofstream outimport;
std::ofstream outexport;
std::ofstream outfree;
friend void cbk_free_clauses(void *);
};

BIN
workers/basekissat.o Normal file

Binary file not shown.

155
workers/basesolver.cpp Normal file
View File

@ -0,0 +1,155 @@
#include "basesolver.hpp"
#include "sharer.hpp"
int basesolver::get_period() {
boost::mutex::scoped_lock lock(mtx);
return period;
};
void basesolver::inc_period() {
boost::mutex::scoped_lock lock(mtx);
period++;
if (period % 100 == 0) printf("c %d reach period %d\n", id, period);
cond.notify_all();
};
void basesolver::internal_terminate() {
boost::mutex::scoped_lock lock(mtx);
terminate_period = period;
cond.notify_all();
}
void basesolver::external_terminate() {
{
boost::mutex::scoped_lock lock(mtx);
terminated = 1;
cond.notify_all();
// printf("c thread %d terminated\n", id);
}
terminate();
}
void basesolver::broaden_export_limit() {
++good_clause_lbd;
}
void basesolver::restrict_export_limit() {
if (good_clause_lbd > 2)
--good_clause_lbd;
}
double basesolver::get_waiting_time() {
return waiting_time;
}
void basesolver::export_clauses_to(vec<clause_store *> &clauses) {
clause_store *cls;
while (export_clause.pop(cls)) {
clauses.push(cls);
}
}
void basesolver::import_clauses_from(vec<clause_store *> &clauses) {
for (int i = 0; i < clauses.size(); i++) {
import_clause.push(clauses[i]);
}
}
void basesolver::select_clauses() {
sharer *share = in_sharer;
cls.clear();
export_clauses_to(cls);
for (int i = 0; i < cls.size(); i++) {
int sz = cls[i]->size;
while (sz > bucket.size()) bucket.push();
if (sz * (bucket[sz - 1].size() + 1) <= share->share_lits)
bucket[sz - 1].push(cls[i]);
}
period_clauses *pcls = new period_clauses(period);
int space = share->share_lits;
for (int i = 0; i < bucket.size(); i++) {
int clause_num = space / (i + 1);
if (!clause_num) break;
if (clause_num >= bucket[i].size()) {
space -= bucket[i].size() * (i + 1);
for (int j = 0; j < bucket[i].size(); j++)
pcls->push(bucket[i][j]);
bucket[i].clear();
}
else {
space -= clause_num * (i + 1);
for (int j = 0; j < clause_num; j++) {
pcls->push(bucket[i].last());
bucket[i].pop();
}
}
}
int percent = (share->share_lits - space) * 100 / share->share_lits;
if (percent < 75) broaden_export_limit();
if (percent > 98) restrict_export_limit();
//sort finish
pcls->increase_refs(share->producers.size() - 1);
pq.push(pcls);
}
void basesolver::get_model(vec<int> &model) {
model.clear();
for (int i = 1; i <= maxvar; i++) {
model.push(val(i));
}
}
void cbk_start_new_period(void *solver) {
auto clk_st = std::chrono::high_resolution_clock::now();
basesolver* S = (basesolver *) solver;
sharer *share = S->in_sharer;
int should_free = 1;
if (S->period >= S->controller->get_winner_period()) {
S->internal_terminate();
S->terminate();
return;
}
printf("c thread %d into select %d\n", S->id, S->period);
S->select_clauses();
// printf("c %d now finish period %d\n", S->id, S->get_period());
S->inc_period();
// printf("c thread %d start import at %d\n", S->id, S->period);
should_free = share->import_clauses(S->id);
printf("c thread %d finish import at %d\n", S->id, S->period);
if (should_free == -1) {
S->internal_terminate();
S->terminate();
}
auto clk_now = std::chrono::high_resolution_clock::now();
int solve_time = std::chrono::duration_cast<std::chrono::milliseconds>(clk_now - clk_st).count();
S->waiting_time += 0.001 * solve_time;
// printf("c %d wait for %d.%03ds\n", S->id, solve_time / 1000, solve_time % 1000);
// printf("c %d finish sharing\n", S->id);
}
void cbk_free_clauses(void *solver) {
basesolver* S = (basesolver *) solver;
sharer *share = S->in_sharer;
if (S->unfree.size()) printf("free %d period\n", S->unfree.size());
for (int id = 0; id < S->unfree.size(); id++) {
int import_period = S->unfree[id];
// int current_period = S->get_period() - 1, import_period = current_period - share->margin;
// if (import_period < 0) return;
for (int i = 0; i < share->producers.size(); i++) {
if (i == S->id) continue;
basesolver *s = share->producers[i];
period_clauses *pc = s->pq.find(import_period);
if (pc->period != import_period)
puts("*******************************************************");
if (pc->free_clause()) {
s->pq.pop(import_period);
// printf("thread %d enter, %d is free\n", S->id, i);
}
}
}
S->unfree.clear();
}

View File

@ -9,6 +9,7 @@
#include <boost/thread.hpp>
#include <boost/thread/thread.hpp>
#include <boost/lockfree/spsc_queue.hpp>
class sharer;
class basesolver {
public:
@ -19,43 +20,59 @@ public:
virtual void configure(const char* name, int id) = 0;
virtual int get_conflicts() = 0;
virtual void dps_terminate() = 0;
virtual void parse_from_CNF(char* filename) = 0;
virtual void parse_from_PAR(preprocess* pre) = 0;
virtual void get_model(vec<int> &model) = 0;
virtual void exp_clause(void *cl, int lbd) = 0;
virtual bool imp_clause(clause_store *cls, void *cl) = 0;
virtual void export_clauses_to(vec<clause_store *> &clauses) = 0;
virtual void import_clauses_from(vec<clause_store *> &clauses) = 0;
virtual void broaden_export_limit() = 0;
virtual void restrict_export_limit() = 0;
virtual double get_waiting_time() = 0;
virtual void select_clauses() = 0;
virtual int get_period() = 0;
virtual void inc_period() = 0;
virtual void set_winner_period() = 0;
void export_clauses_to(vec<clause_store *> &clauses);
void import_clauses_from(vec<clause_store *> &clauses);
void get_model(vec<int> &model);
void select_clauses();
void broaden_export_limit();
void restrict_export_limit();
double get_waiting_time();
int get_period();
void inc_period();
void internal_terminate();
void external_terminate();
double waiting_time = 0;
int good_clause_lbd = 0;
light * controller;
int id;
sharer* in_sharer;
vec<int> model;
int winner_period = 1e9;
int period, margin, terminated = 0;
int terminate_period = 1e9;
int maxvar, period, margin, terminated = 0;
mutable boost::mutex mtx;
boost::condition_variable cond;
period_queue pq;
vec<clause_store *> cls;
vec<vec<clause_store *>> bucket;
vec<int> unfree;
boost::lockfree::spsc_queue<clause_store*, boost::lockfree::capacity<1024000>> import_clause;
boost::lockfree::spsc_queue<clause_store*, boost::lockfree::capacity<1024000>> export_clause;
basesolver(int sid, light* light) : id(sid), controller(light) {}
basesolver(int sid, light* light) : id(sid), controller(light) {
good_clause_lbd = 2;
period = 0;
margin = 0;
}
~basesolver() {
if (controller) {
controller = NULL;
}
}
friend void cbk_start_new_period(void *);
friend void cbk_free_clauses(void *);
};
void cbk_start_new_period(void *);
void cbk_free_clauses(void *);
#endif

BIN
workers/basesolver.o Normal file

Binary file not shown.

View File

@ -12,21 +12,11 @@ void * share_worker(void *arg) {
double share_time = 0;
while (true) {
++nums;
if (sq->dps) {
// printf("c sharing thread start wait\n");
sq->waiting_for_all_ready();
// printf("c sharing thread start sharing with number %d\n", sq->waitings);
}
else {
usleep(sq->share_intv);
}
usleep(sq->share_intv);
auto clk_now = std::chrono::high_resolution_clock::now();
int solve_time = std::chrono::duration_cast<std::chrono::milliseconds>(clk_now - clk_st).count();
printf("c round %d, time: %d.%03d\n", nums, solve_time / 1000, solve_time % 1000);
if (terminated) {
if (sq->dps) sq->sharing_finish();
break;
}
if (terminated) break;
// printf("start sharing %d\n", sq->share_intv);
for (int i = 0; i < sq->producers.size(); i++) {
sq->cls.clear();
@ -41,11 +31,7 @@ void * share_worker(void *arg) {
else if (percent > 98) {
sq->producers[i]->restrict_export_limit();
}
// for (int k = 0; k < sq->cls.size(); k++) {
// int x = sq->cls[k]->refs;
// printf("%d ", x);
// }
// puts("");
for (int j = 0; j < sq->consumers.size(); j++) {
if (sq->producers[i]->id == sq->consumers[j]->id) continue;
for (int k = 0; k < sq->cls.size(); k++)
@ -58,39 +44,30 @@ void * share_worker(void *arg) {
}
auto clk_ed = std::chrono::high_resolution_clock::now();
share_time += 0.001 * std::chrono::duration_cast<std::chrono::milliseconds>(clk_ed - clk_now).count();
if (sq->dps) {
sq->sharing_finish();
}
}
printf("c sharing nums: %d\nc sharing time: %.2lf\n", nums, share_time);
// if (terminated) puts("terminated set to 1");
return NULL;
}
// void sharer::select_clauses(int id) {
// }
bool sharer::import_clauses(int id) {
int sharer::import_clauses(int id) {
int current_period = producers[id]->get_period() - 1, import_period = current_period - margin;
if (import_period < 0) return false;
if (import_period < 0) return 0;
basesolver *t = producers[id];
for (int i = 0; i < producers.size(); i++) {
if (i == id) continue;
basesolver *s = producers[i];
//wait for s reach period $import_period
// printf("c %d start waiting, since import_p is %d, current_p is %d\n", id, import_period, s->get_period());
// if (id == 3 && current_period == 84) printf("\tc thread 3 wait for %d\n", i);
boost::mutex::scoped_lock lock(s->mtx);
while (s->period <= import_period && s->winner_period > import_period && !s->terminated) {
while (s->period <= import_period && s->terminate_period > import_period && !s->terminated) {
s->cond.wait(lock);
}
// if (id == 3 && current_period == 84) printf("\tc thread 3 finish wait for %d\n", i);
if (s->terminated || s->winner_period <= import_period) return false;
// if (s->terminated) return;
if (s->terminated) return -1;
if (s->terminate_period <= import_period) return -1;
period_clauses *pc = s->pq.find(import_period);
if (pc->period != import_period) {
printf("thread %d, now period = %d, import period = %d, import thread %d\n", id, current_period, import_period, i);
@ -99,15 +76,14 @@ bool sharer::import_clauses(int id) {
// printf("c %d finish waiting %d %d\n", id, import_period, s->period_queue[pos]->period);
t->import_clauses_from(pc->cls);
}
return true;
t->unfree.push(import_period);
return 1;
// printf("c thread %d, period %d, import finish\n", id, current_period);
}
int sharer::sort_clauses(int x) {
for (int i = 0; i < cls.size(); i++) {
int sz = cls[i]->size;
// for (int j = 0; j < sz; j++) printf("%d ", cls[i]->data[j]);
// puts("");
while (sz > bucket[x].size()) bucket[x].push();
if (sz * (bucket[x][sz - 1].size() + 1) <= share_lits)
bucket[x][sz - 1].push(cls[i]);
@ -134,17 +110,12 @@ int sharer::sort_clauses(int x) {
}
}
}
// for (int i = 0; i < cls.size(); i++) {
// int sz = cls[i]->size;
// for (int j = 0; j < sz; j++) printf("%d ", cls[i]->data[j]);
// puts("");
// }
return (share_lits - space) * 100 / share_lits;
}
void light::share() {
printf("c sharing start\n");
if (OPT(DPS) == 2) {
if (OPT(DPS)) {
sharer* s = new sharer(0, OPT(share_intv), OPT(share_lits), OPT(DPS));
s->margin = OPT(margin);
for (int j = 0; j < OPT(threads); j++) {

View File

@ -47,7 +47,7 @@ public:
}
int sort_clauses(int x);
// void select_clauses(int id);
bool import_clauses(int id);
int import_clauses(int id);
};
#endif

BIN
workers/sharer.o Normal file

Binary file not shown.