{"id":17486232,"url":"https://github.com/phrb/sat-opentuner","last_synced_at":"2025-09-14T20:58:56.214Z","repository":{"id":26794811,"uuid":"30253220","full_name":"phrb/sat-opentuner","owner":"phrb","description":"An autotuner for SAT solving that uses OpenTuner.","archived":false,"fork":false,"pushed_at":"2015-05-16T00:26:09.000Z","size":31052,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-02T14:48:57.542Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phrb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-02-03T16:47:08.000Z","updated_at":"2018-11-08T08:12:23.000Z","dependencies_parsed_at":"2022-08-31T22:22:48.113Z","dependency_job_id":null,"html_url":"https://github.com/phrb/sat-opentuner","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phrb%2Fsat-opentuner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phrb%2Fsat-opentuner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phrb%2Fsat-opentuner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phrb%2Fsat-opentuner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phrb","download_url":"https://codeload.github.com/phrb/sat-opentuner/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246049628,"owners_count":20715510,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-19T02:09:55.647Z","updated_at":"2025-03-28T14:42:23.163Z","avatar_url":"https://github.com/phrb.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Solving SAT instance sets with OpenTuner\n\nThis repository contains an auto-tuner and a brute force searcher that are used to find optimal combinations of solvers for a given SAT instance set. The auto-tuner is implemented using [OpenTuner](http://opentuner.org/), a framework for program auto-tuning.\n\n## Python\n\n### Dependencies\n* Python 2.7\n* [Opentuner](http://opentuner.org/tutorial/setup/)\n\n### Running the Brute Force Searcher\n\nWith default values:\n\n```\n$ python brute-force/brute_force.py\n```\n\n## Running the Tuner\n\nWith default values:\n\n```\n$ python combinator/tuner.py\n```\n\n###Scripts\n\n#### Benchmarking\n\nTo benchmark all solvers using a given instance set, run:\n\n```\n$ ./scripts/benchmark.sh [RUNS] [SOLVERS] [LOG_DIR] [INSTANCE_SET] [INSTANCE_DIR]\n\n[RUNS]: A number specifying how many times to run the solvers (sample size).\n[SOLVERS], (0..7): A number specifying how many solvers to benchmark. \n[LOG_DIR]: The path to log the benchmarks.\n[INSTANCE_SET]: Where to find the file that specify the instances to solve.\n[INSTANCE_DIR]: Where to find the instance files.\n```\n\n#### Running the Tuner\n\nThis script runs OpenTuner to find good solver combinations for a given instance set, and logs all tuning results and the final best configuration.\n\n```\n$ ./scripts/run_experiments.sh [LOG_DIR] [TIME] [THREADS] [INSTANCE_DIR] [INSTANCE_SET] [INSTANCE_NUMBER] [CHUNKS] [RUNS] [BENCHMARK_RUNS]\n\n[LOG_DIR]: The path to log the results.\n[TIME]: The number of seconds to run OpenTuner for.\n[THREADS]: Size of the OpenTuner ThreadPool.\n[INSTANCE_DIR]: Where to find the instance files.\n[INSTANCE_SET]: Where to find the file that specify the instances to solve.\n[INSTANCE_NUMBER]: The size of the instance set.\n[CHUNKS]: Number of subdivisions in the instance set.\n[BENCH_RUNS]: A number specifying how many times to run OpenTuner.\n[RUNS]: A number specifying how many times to run the combinations found (sample size).\n```\n\n#### Benchmarking a Configuration File\n\nBenchmarks a configuration file created by OpenTuner:\n\n```\n$ ./scripts/from_file_benchmark.sh [RUNS] [FILE_PATH] [FILE]\n\n[RUNS]: A number specifying how many times to run the combinations found (sample size).\n[FILE_PATH]: Where to find the file.\n[FILE]: The file with the combination commands.\n```\n\n## C++\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphrb%2Fsat-opentuner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphrb%2Fsat-opentuner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphrb%2Fsat-opentuner/lists"}