From f994b1026e97de497a30f35c0dd7dffc0250b836 Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Tue, 8 Oct 2024 15:32:09 -0600 Subject: [PATCH 1/7] chore: set up configs for Toad --- Config/config.json | 41 ++++---------- Engines/Akimbo.json | 90 ------------------------------- Engines/Alexandria.json | 85 ----------------------------- Engines/Altair.json | 89 ------------------------------ Engines/Berserk.json | 105 ------------------------------------ Engines/Bit-Genie.json | 71 ------------------------ Engines/Caissa.json | 83 ---------------------------- Engines/Carp.json | 99 ---------------------------------- Engines/Clover.json | 71 ------------------------ Engines/Demolito.json | 71 ------------------------ Engines/Drofa.json | 71 ------------------------ Engines/Equisetum.json | 71 ------------------------ Engines/Halogen.json | 71 ------------------------ Engines/Koivisto.json | 71 ------------------------ Engines/Laser.json | 71 ------------------------ Engines/Midnight.json | 89 ------------------------------ Engines/Pytteliten.json | 89 ------------------------------ Engines/RubiChess.json | 71 ------------------------ Engines/Seer.json | 71 ------------------------ Engines/Stash.json | 71 ------------------------ Engines/Svart.json | 89 ------------------------------ Engines/Toad.json | 117 ++++++++++++++++++++++++++++++++++++++++ Engines/Wahoo.json | 89 ------------------------------ Engines/Weiss.json | 95 -------------------------------- Engines/Willow.json | 59 -------------------- Engines/Winter.json | 71 ------------------------ Engines/Zahak.json | 71 ------------------------ 27 files changed, 127 insertions(+), 2015 deletions(-) delete mode 100644 Engines/Akimbo.json delete mode 100644 Engines/Alexandria.json delete mode 100644 Engines/Altair.json delete mode 100644 Engines/Berserk.json delete mode 100644 Engines/Bit-Genie.json delete mode 100644 Engines/Caissa.json delete mode 100644 Engines/Carp.json delete mode 100644 Engines/Clover.json delete mode 100644 Engines/Demolito.json delete mode 100644 Engines/Drofa.json delete mode 100644 Engines/Equisetum.json delete mode 100644 Engines/Halogen.json delete mode 100644 Engines/Koivisto.json delete mode 100644 Engines/Laser.json delete mode 100644 Engines/Midnight.json delete mode 100644 Engines/Pytteliten.json delete mode 100644 Engines/RubiChess.json delete mode 100644 Engines/Seer.json delete mode 100644 Engines/Stash.json delete mode 100644 Engines/Svart.json create mode 100644 Engines/Toad.json delete mode 100644 Engines/Wahoo.json delete mode 100644 Engines/Weiss.json delete mode 100644 Engines/Willow.json delete mode 100644 Engines/Winter.json delete mode 100644 Engines/Zahak.json diff --git a/Config/config.json b/Config/config.json index 19599e61..f265f539 100644 --- a/Config/config.json +++ b/Config/config.json @@ -1,14 +1,14 @@ { - "client_version" : 32, - "client_repo_url" : "https://github.com/AndyGrant/OpenBench", - "client_repo_ref" : "master", + "client_version": 32, + "client_repo_url": "https://github.com/dannyhammer/openbench", + "client_repo_ref": "master", - "use_cross_approval" : false, - "require_login_to_view" : false, - "require_manual_registration" : false, - "balance_engine_throughputs" : false, + "use_cross_approval": false, + "require_login_to_view": false, + "require_manual_registration": false, + "balance_engine_throughputs": false, - "books" : [ + "books": [ "2moves_v1.epd", "3moves_FRC.epd", "4moves_noob.epd", @@ -22,26 +22,5 @@ "UHO_4060_vT.epd" ], - "engines" : [ - "4ku", - "Berserk", - "Bit-Genie", - "BlackMarlin", - "Demolito", - "Drofa", - "Equisetum", - "Ethereal", - "FabChess", - "Halogen", - "Igel", - "Koivisto", - "Laser", - "RubiChess", - "Seer", - "Stash", - "Stockfish", - "Weiss", - "Winter", - "Zahak" - ] -} \ No newline at end of file + "engines": ["BlackMarlin", "Ethereal", "Stockfish", "Toad"] +} diff --git a/Engines/Akimbo.json b/Engines/Akimbo.json deleted file mode 100644 index 0841f7c0..00000000 --- a/Engines/Akimbo.json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "private" : false, - "nps" : 1075000, - "source" : "https://github.com/jw1912/akimbo", - - "build" : { - "path" : "", - "compilers" : ["cargo>=1.70.0"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "main", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[0.00, 3.00]" - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC regression" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-5.00, 0.00]" - }, - - "LTC regression" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-5.00, 0.00]" - }, - - "STC progtest" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "book_name" : "8moves_v3.epd", - "test_max_games" : 4000 - }, - - "LTC progtest" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "book_name" : "8moves_v3.epd", - "test_max_games" : 2000 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Alexandria.json b/Engines/Alexandria.json deleted file mode 100644 index 7f37bee4..00000000 --- a/Engines/Alexandria.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "private" : false, - "nps" : 1025000, - "source" : "https://github.com/PGG106/Alexandria", - - "build" : { - "path" : "", - "compilers" : ["g++"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 3.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC regression" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-3.00, 1.00]" - }, - - "LTC regression" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-3.00, 1.00]" - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "4.0+0.04", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "16.0+0.16", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Altair.json b/Engines/Altair.json deleted file mode 100644 index 6a91583c..00000000 --- a/Engines/Altair.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "private" : false, - "nps" : 990000, - "source" : "https://github.com/Alex2262/AltairChessEngine", - - "build" : { - "path" : "", - "compilers" : ["clang++"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC Simple" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-5.00, 0.00]" - }, - - "LTC Simple" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-5.00, 0.00]" - }, - - "STC Prog" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "book_name" : "8moves_v3.epd", - "test_max_games" : 3000 - }, - - "LTC Prog" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "book_name" : "8moves_v3.epd", - "test_max_games" : 1000 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Berserk.json b/Engines/Berserk.json deleted file mode 100644 index 7c7b0ca9..00000000 --- a/Engines/Berserk.json +++ /dev/null @@ -1,105 +0,0 @@ -{ - "private" : false, - "nps" : 750000, - "source" : "https://github.com/jhonnold/berserk", - - "build" : { - "path" : "src", - "compilers" : ["clang", "gcc"], - "cpuflags" : ["AVX2", "FMA", "POPCNT"], - "systems" : ["Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "main", - "book_name" : "UHO_4060_vB.epd", - "test_bounds" : "[0.00, 2.00]", - "test_confidence" : "[0.1, 0.05]", - "win_adj" : "movecount=4 score=300", - "draw_adj" : "movenumber=32 movecount=6 score=6" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "10.0+0.1", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "test_bounds" : "[0.00, 2.50]" - }, - - "STC Simplify" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "10.0+0.1", - "workload_size" : 32, - "test_bounds" : "[-2.00, 0.00]" - }, - - "LTC Simplify" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "test_bounds" : "[-2.00, 0.00]" - }, - - "STC Fixed" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "10.0+0.1", - "workload_size" : 32, - "test_max_games" : 20000 - }, - - "LTC Fixed" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "test_max_games" : 20000 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "30.0+0.30", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "UHO_4060_vB.epd", - "win_adj" : "movecount=4 score=300", - "draw_adj" : "movenumber=32 movecount=6 score=6" - }, - - "STC" : { - "dev_options" : "Threads=1 Hash=8", - "dev_time_control" : "10.0+0.10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Bit-Genie.json b/Engines/Bit-Genie.json deleted file mode 100644 index c28384dd..00000000 --- a/Engines/Bit-Genie.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1992000, - "source" : "https://github.com/Aryan1508/Bit-Genie", - - "build" : { - "path" : "src", - "compilers" : ["g++"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Caissa.json b/Engines/Caissa.json deleted file mode 100644 index 461504c9..00000000 --- a/Engines/Caissa.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "private" : false, - "nps" : 1340000, - "source" : "https://github.com/Witek902/Caissa", - - "build" : { - "path" : "src", - "compilers" : ["g++"], - "cpuflags" : ["AVX2", "FMA", "POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "UHO_Lichess_4852_v1.epd", - "test_bounds" : "[0.00, 2.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=32 movecount=8 score=5" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "10.0+0.1", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "60.0+0.6", - "workload_size" : 8 - }, - - "LTC Fixed" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "test_max_games" : 20000 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "30.0+0.30", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "UHO_4060_v2.epd", - "win_adj" : "movecount=4 score=500", - "draw_adj" : "movenumber=32 movecount=6 score=6" - }, - - "STC" : { - "dev_options" : "Threads=1 Hash=8", - "dev_time_control" : "10.0+0.10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Carp.json b/Engines/Carp.json deleted file mode 100644 index 7ad3cb3c..00000000 --- a/Engines/Carp.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "private" : false, - "nps" : 975000, - "source" : "https://github.com/dede1751/carp", - - "build" : { - "path" : "", - "compilers" : ["cargo>=1.70.0"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "dev", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC Reg" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-4.00, 1.00]" - }, - - "LTC Reg" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-4.00, 1.00]" - }, - - "STC Prog" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_max_games" : 3000 - }, - - "LTC Prog" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "test_max_games" : 1000 - }, - - "SMP STC" : { - "both_options" : "Threads=4 Hash=16", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "SMP LTC" : { - "both_options" : "Threads=4 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Clover.json b/Engines/Clover.json deleted file mode 100644 index 401155bd..00000000 --- a/Engines/Clover.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 850000, - "source" : "https://github.com/lucametehau/CloverEngine", - - "build" : { - "path" : "src", - "compilers" : ["g++"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 3.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "4.0+0.04", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "16.0+0.16", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Demolito.json b/Engines/Demolito.json deleted file mode 100644 index 89662915..00000000 --- a/Engines/Demolito.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1382000, - "source" : "https://github.com/lucasart/Demolito", - - "build" : { - "path" : "src", - "compilers" : ["clang", "gcc"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "32.0+0.32", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=32", - "both_time_control" : "4.0+0.04", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=128", - "both_time_control" : "16.0+0.16", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Drofa.json b/Engines/Drofa.json deleted file mode 100644 index 91501868..00000000 --- a/Engines/Drofa.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1165000, - "source" : "https://github.com/justNo4b/Drofa", - - "build" : { - "path" : "", - "compilers" : ["g++"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "4moves_noob.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "4moves_noob.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Equisetum.json b/Engines/Equisetum.json deleted file mode 100644 index a1b2db22..00000000 --- a/Engines/Equisetum.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1100000, - "source" : "https://github.com/justNo4b/Equisetum", - - "build" : { - "path" : "", - "compilers" : ["g++"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "main", - "book_name" : "Pohl.pgn", - "test_bounds" : "[0.00, 4.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.pgn", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Halogen.json b/Engines/Halogen.json deleted file mode 100644 index 3800e003..00000000 --- a/Engines/Halogen.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1893000, - "source" : "https://github.com/KierenP/Halogen", - - "build" : { - "path" : "src", - "compilers" : ["g++>=9.0.0", "clang++>=10.0.0"], - "cpuflags" : ["AVX2", "FMA", "POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "UHO_4060_v2.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8 OutputLevel=Minimal", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64 OutputLevel=Minimal", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64 OutputLevel=Minimal", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256 OutputLevel=Minimal", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "UHO_4060_v2.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Koivisto.json b/Engines/Koivisto.json deleted file mode 100644 index c5137a24..00000000 --- a/Engines/Koivisto.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1327000, - "source" : "https://github.com/Luecx/Koivisto", - - "build" : { - "path" : "src_files", - "compilers" : ["g++"], - "cpuflags" : ["AVX2", "FMA", "POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 2.50]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Laser.json b/Engines/Laser.json deleted file mode 100644 index be393376..00000000 --- a/Engines/Laser.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 933000, - "source" : "https://github.com/jeffreyan11/uci-chess-engine", - - "build" : { - "path" : "src", - "compilers" : ["g++"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Midnight.json b/Engines/Midnight.json deleted file mode 100644 index 0bf3ffbb..00000000 --- a/Engines/Midnight.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "private" : false, - "nps" : 912000, - "source" : "https://github.com/archishou/MidnightChessEngine", - - "build" : { - "path" : "", - "compilers" : ["clang++", "g++"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC Simple" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-5.00, 0.00]" - }, - - "LTC Simple" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-5.00, 0.00]" - }, - - "STC Prog" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "book_name" : "8moves_v3.epd", - "test_max_games" : 3000 - }, - - "LTC Prog" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "book_name" : "8moves_v3.epd", - "test_max_games" : 1000 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Pytteliten.json b/Engines/Pytteliten.json deleted file mode 100644 index 2eef9f96..00000000 --- a/Engines/Pytteliten.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "private" : false, - "nps" : 5288029, - "source" : "https://github.com/crippa1337/Pytteliten", - - "build" : { - "path" : "", - "compilers" : ["clang++", "g++"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "4moves_noob.epd", - "test_bounds" : "[0.00, 10.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC regression" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-10.00, 0.00]" - }, - - "LTC regression" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-10.00, 0.00]" - }, - - "STC progtest" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "10.0+0.1", - "workload_size" : 32, - "book_name" : "8moves_v3.epd", - "test_max_games" : 4000 - }, - - "LTC progtest" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "book_name" : "8moves_v3.epd", - "test_max_games" : 2000 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "4moves_noob.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/RubiChess.json b/Engines/RubiChess.json deleted file mode 100644 index 0245fe7c..00000000 --- a/Engines/RubiChess.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 760000, - "source" : "https://github.com/Matthies/RubiChess", - - "build" : { - "path" : "src", - "compilers" : ["g++"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "10.0+0.1", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "60.0+0.6", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Seer.json b/Engines/Seer.json deleted file mode 100644 index 803cbf62..00000000 --- a/Engines/Seer.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 785000, - "source" : "https://github.com/connormcmonigle/seer-nnue", - - "build" : { - "path" : "build", - "compilers" : ["g++>=9.0.0"], - "cpuflags" : ["AVX2", "FMA", "POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "main", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Stash.json b/Engines/Stash.json deleted file mode 100644 index 37b713e2..00000000 --- a/Engines/Stash.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 1615000, - "source" : "https://github.com/mhouppin/stash-bot", - - "build" : { - "path" : "src", - "compilers" : ["gcc", "clang"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "4moves_noob.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "4moves_noob.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Svart.json b/Engines/Svart.json deleted file mode 100644 index 7e2d947e..00000000 --- a/Engines/Svart.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "private" : false, - "nps" : 1350000, - "source" : "https://github.com/crippa1337/svart", - - "build" : { - "path" : "", - "compilers" : ["cargo>=1.70.0"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC regression" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-5.00, 0.00]" - }, - - "LTC regression" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-5.00, 0.00]" - }, - - "STC progtest" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "10.0+0.1", - "workload_size" : 32, - "book_name" : "8moves_v3.epd", - "test_max_games" : 4000 - }, - - "LTC progtest" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "60.0+0.6", - "workload_size" : 8, - "book_name" : "8moves_v3.epd", - "test_max_games" : 2000 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Toad.json b/Engines/Toad.json new file mode 100644 index 00000000..0fc707b9 --- /dev/null +++ b/Engines/Toad.json @@ -0,0 +1,117 @@ +{ + "private": false, + "nps": 12709307, + "source": "https://github.com/dannyhammer/toad", + + "build": { + "path": "", + "compilers": ["cargo>=1.80.1"], + "cpuflags": [], + "systems": ["Linux", "Windows", "Darwin"] + }, + + "test_presets": { + "default": { + "base_branch": "main", + "dev_branch": "dev", + "book_name": "Pohl.epd", + "test_bounds": "[0.00, 3.00]", + "test_confidence": "[0.05, 0.05]", + "win_adj": "movecount=3 score=400", + "draw_adj": "movenumber=40 movecount=8 score=10" + }, + + "STC": { + "both_options": "Threads=1 Hash=16", + "both_time_control": "8.0+0.08", + "workload_size": 32 + }, + + "LTC": { + "both_options": "Threads=1 Hash=128", + "both_time_control": "40.0+0.4", + "workload_size": 8 + }, + + "STC regression": { + "both_options": "Threads=1 Hash=16", + "both_time_control": "8.0+0.08", + "workload_size": 32, + "test_bounds": "[-5.00, 0.00]" + }, + + "LTC regression": { + "both_options": "Threads=1 Hash=128", + "both_time_control": "40.0+0.4", + "workload_size": 8, + "test_bounds": "[-5.00, 0.00]" + }, + + "STC progtest": { + "both_options": "Threads=1 Hash=16", + "both_time_control": "8.0+0.08", + "workload_size": 32, + "test_max_games": 3000 + }, + + "LTC progtest": { + "both_options": "Threads=1 Hash=128", + "both_time_control": "60.0+0.6", + "workload_size": 8, + "test_max_games": 1000 + }, + + "SMP STC": { + "both_options": "Threads=4 Hash=16", + "both_time_control": "8.0+0.08", + "workload_size": 32 + }, + + "SMP LTC": { + "both_options": "Threads=4 Hash=128", + "both_time_control": "40.0+0.4", + "workload_size": 8 + } + }, + + "tune_presets": { + "default": { + "book_name": "UHO_4060_v2.epd", + "win_adj": "movecount=3 score=400", + "draw_adj": "movenumber=40 movecount=8 score=10" + }, + + "STC": { + "dev_options": "Threads=1 Hash=8", + "dev_time_control": "10.0+0.10" + }, + + "MTC": { + "dev_options": "Threads=1 Hash=32", + "dev_time_control": "30.0+0.30" + }, + + "LTC": { + "dev_options": "Threads=1 Hash=64", + "dev_time_control": "60.0+0.60" + }, + + "VLTC": { + "dev_options": "Threads=1 Hash=128", + "dev_time_control": "180.0+1.80" + } + }, + + "datagen_presets": { + "default": { + "win_adj": "None", + "draw_adj": "None", + "workload_size": 128 + }, + + "40k Nodes": { + "both_options": "Threads=1 Hash=16", + "both_time_control": "N=40000" + } + } +} diff --git a/Engines/Wahoo.json b/Engines/Wahoo.json deleted file mode 100644 index 9777215a..00000000 --- a/Engines/Wahoo.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "private" : false, - "nps" : 2680000, - "source" : "https://github.com/spamdrew128/Wahoo", - - "build" : { - "path" : "", - "compilers" : ["cargo>=1.60.0"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "dev", - "book_name" : "noob_4moves.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "None", - "draw_adj" : "None" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC Simple" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-5.00, 0.00]" - }, - - "LTC Simple" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-5.00, 0.00]" - }, - - "STC Prog" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "book_name" : "8moves_v3.epd", - "test_max_games" : 3000 - }, - - "LTC Prog" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "book_name" : "8moves_v3.epd", - "test_max_games" : 1000 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "noob_4moves.epd", - "win_adj" : "None", - "draw_adj" : "None" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Weiss.json b/Engines/Weiss.json deleted file mode 100644 index 923b9d5b..00000000 --- a/Engines/Weiss.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "private" : false, - "nps" : 1090000, - "source" : "https://github.com/TerjeKir/weiss", - - "build" : { - "path" : "src", - "compilers" : ["gcc"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "UHO_4060_v2.epd", - "test_bounds" : "[0.00, 3.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=32 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "STC Simplify" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32, - "test_bounds" : "[-3.00, 0.00]" - }, - - "LTC Simplify" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "40.0+0.4", - "workload_size" : 8, - "test_bounds" : "[-3.00, 0.00]" - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=128", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=512", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "UHO_4060_v2.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=32 movecount=8 score=10" - }, - - "STC" : { - "dev_options" : "Threads=1 Hash=32", - "dev_time_control" : "8.0+0.08" - }, - - "LTC" : { - "dev_options" : "Threads=1 Hash=128", - "dev_time_control" : "40.0+0.4" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Willow.json b/Engines/Willow.json deleted file mode 100644 index 3c4e6d31..00000000 --- a/Engines/Willow.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "private" : false, - "nps" : 850000, - "source" : "https://github.com/Adam-Kulju/Willow", - - "build" : { - "path" : "", - "compilers" : ["clang++", "g++"], - "cpuflags" : [], - "systems" : ["Linux", "Windows", "Darwin"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "main", - "book_name" : "4moves_noob.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=32", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=128", - "both_time_control" : "60.0+0.6", - "workload_size" : 8 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "4moves_noob.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Winter.json b/Engines/Winter.json deleted file mode 100644 index cd6aced4..00000000 --- a/Engines/Winter.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 360000, - "source" : "https://github.com/rosenthj/Winter", - - "build" : { - "path" : "", - "compilers" : ["clang++", "g++"], - "cpuflags" : ["POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} diff --git a/Engines/Zahak.json b/Engines/Zahak.json deleted file mode 100644 index 8fc0b73b..00000000 --- a/Engines/Zahak.json +++ /dev/null @@ -1,71 +0,0 @@ -{ - "private" : false, - "nps" : 949000, - "source" : "https://github.com/amanjpro/zahak", - - "build" : { - "path" : "", - "compilers" : ["go"], - "cpuflags" : ["AVX", "POPCNT"], - "systems" : ["Windows", "Linux"] - }, - - "test_presets" : { - - "default" : { - "base_branch" : "master", - "book_name" : "Pohl.epd", - "test_bounds" : "[0.00, 5.00]", - "test_confidence" : "[0.05, 0.05]", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - }, - - "STC" : { - "both_options" : "Threads=1 Hash=8", - "both_time_control" : "8.0+0.08", - "workload_size" : 32 - }, - - "LTC" : { - "both_options" : "Threads=1 Hash=64", - "both_time_control" : "40.0+0.4", - "workload_size" : 8 - }, - - "SMP STC" : { - "both_options" : "Threads=8 Hash=64", - "both_time_control" : "5.0+0.05", - "workload_size" : 64 - }, - - "SMP LTC" : { - "both_options" : "Threads=8 Hash=256", - "both_time_control" : "20.0+0.2", - "workload_size" : 16 - } - }, - - "tune_presets" : { - - "default" : { - "book_name" : "Pohl.epd", - "win_adj" : "movecount=3 score=400", - "draw_adj" : "movenumber=40 movecount=8 score=10" - } - }, - - "datagen_presets" : { - - "default" : { - "win_adj" : "None", - "draw_adj" : "None", - "workload_size" : 128 - }, - - "40k Nodes" : { - "both_options" : "Threads=1 Hash=16", - "both_time_control" : "N=40000" - } - } -} From 658586e256e471759ec9d6222d986dfe8b440597 Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Tue, 8 Oct 2024 15:32:09 -0600 Subject: [PATCH 2/7] chore: set up configs for Toad --- Engines/Toad.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Engines/Toad.json b/Engines/Toad.json index 0fc707b9..49d2cf1d 100644 --- a/Engines/Toad.json +++ b/Engines/Toad.json @@ -1,6 +1,6 @@ { "private": false, - "nps": 12709307, + "nps": 1605879, "source": "https://github.com/dannyhammer/toad", "build": { @@ -15,10 +15,10 @@ "base_branch": "main", "dev_branch": "dev", "book_name": "Pohl.epd", - "test_bounds": "[0.00, 3.00]", + "test_bounds": "[0.00, 10.00]", "test_confidence": "[0.05, 0.05]", - "win_adj": "movecount=3 score=400", - "draw_adj": "movenumber=40 movecount=8 score=10" + "win_adj": "None", + "draw_adj": "None" }, "STC": { From 0ebc47866889eb6ca27be0486b32c8fcbd60b4da Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Fri, 18 Oct 2024 12:06:12 -0600 Subject: [PATCH 3/7] feat: added webhook for test completion --- OpenBench/utils.py | 80 +++++++++++++++++++++++++++++++++++++++++++++- webhook | 1 + 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 webhook diff --git a/OpenBench/utils.py b/OpenBench/utils.py index 7a9eed44..96452a8a 100644 --- a/OpenBench/utils.py +++ b/OpenBench/utils.py @@ -18,6 +18,8 @@ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +import sys + import datetime import hashlib import json @@ -420,6 +422,11 @@ def update_test(request, machine): test = Test.objects.select_for_update().get(id=test_id) + # Send update to webhook, if it exists + if test.finished and os.path.exists('webhook'): + print("---------------------------------------------------------Notifying webhook!", file=sys.stderr) + notify_webhook(request, test, test_id) + if test.finished or test.deleted: return { 'stop' : True } @@ -502,5 +509,76 @@ def update_test(request, machine): Machine.objects.filter(id=machine_id).update( updated=timezone.now() ) - + return [{}, { 'stop' : True }][test.finished] + +def notify_webhook(request, test, test_id): + + with open('webhook') as webhook_file: + webhook = webhook_file.readlines()[0] + + lower, elo, upper = OpenBench.stats.ELO(test.wins, test.losses, test.draws) + error = max(upper - elo, elo - lower) + elo = OpenBench.templatetags.mytags.twoDigitPrecision(elo) + error = OpenBench.templatetags.mytags.twoDigitPrecision(error) + h0 = OpenBench.templatetags.mytags.twoDigitPrecision(test.elolower) + h1 = OpenBench.templatetags.mytags.twoDigitPrecision(test.eloupper) + tokens = test.devoptions.split(' ') + threads = tokens[0].split('=')[1] + hash = tokens[1].split('=')[1] + outcome = 'passed' if test.passed else 'failed' + if test.test_mode == 'GAMES': + mode_string = f'{test.max_games} games' + else: + mode_string = f'SPRT [{h0}, {h1}]' + if test.passed: + color = 0x37F769 + elif test.wins < test.losses: + color = 0xFA4E4E + else: + color = 0xFEFF58 + + + msg = { + 'username': test.engine, + 'embeds': [{ + 'title': f'Test `{test.dev.name}` vs `{test.base.name}` {outcome}', + 'url': request.build_absolute_uri(f'/test/{test_id}'), + 'color': color, + 'author': { "name": test.author }, + 'fields': [ + { + 'name': 'Configuration', + 'value': f'{test.timecontrol}s Threads={threads} Hash={hash}MB', + }, + { + 'name': 'Mode', + 'value': mode_string, + }, + { + 'name': 'Wins', + 'value': f'{test.wins}', + 'inline': True, + }, + { + 'name': 'Losses', + 'value': f'{test.losses}', + 'inline': True, + }, + { + 'name': 'Draws', + 'value': f'{test.draws}', + 'inline': True, + }, + { + 'name': 'Elo', + 'value': f'{elo} ± {error} (95%)', + }, + ] + }] + } + print("--------------------------------------------------------------------------------------------------------------------------------", file=sys.stderr) + print(msg, file=sys.stderr) + print("--------------------------------------------------------------------------------------------------------------------------------", file=sys.stderr) + print(f"-----------------------------------------------Sending msg to {webhook}", file=sys.stderr) + requests.post(webhook, json=msg) diff --git a/webhook b/webhook new file mode 100644 index 00000000..70cbda81 --- /dev/null +++ b/webhook @@ -0,0 +1 @@ +https://discord.com/api/webhooks/1296891056419508327/nERyVqOUw3slLz5gUok1MNIUWzPaJ67vsVRm6-1buE8Nhr5Vg-2mXJMoBz1MjCXnesL4 \ No newline at end of file From 60bd61829043322fc552b2079d0133f0bd4fcbd2 Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Mon, 21 Oct 2024 16:35:35 -0600 Subject: [PATCH 4/7] fix: fixed invalid webhook format --- Engines/Toad.json | 4 +-- OpenBench/utils.py | 74 +++++++++++++++------------------------------- webhook | 2 +- 3 files changed, 27 insertions(+), 53 deletions(-) diff --git a/Engines/Toad.json b/Engines/Toad.json index 49d2cf1d..a243d0fc 100644 --- a/Engines/Toad.json +++ b/Engines/Toad.json @@ -12,8 +12,8 @@ "test_presets": { "default": { - "base_branch": "main", - "dev_branch": "dev", + "base_branch": "random-move", + "dev_branch": "main", "book_name": "Pohl.epd", "test_bounds": "[0.00, 10.00]", "test_confidence": "[0.05, 0.05]", diff --git a/OpenBench/utils.py b/OpenBench/utils.py index 96452a8a..268172ed 100644 --- a/OpenBench/utils.py +++ b/OpenBench/utils.py @@ -43,6 +43,7 @@ from OpenBench.config import OPENBENCH_CONFIG from OpenBench.models import * from OpenBench.stats import TrinomialSPRT, PentanomialSPRT +from OpenBench.templatetags.mytags import longStatBlock import OpenBench.views @@ -422,11 +423,6 @@ def update_test(request, machine): test = Test.objects.select_for_update().get(id=test_id) - # Send update to webhook, if it exists - if test.finished and os.path.exists('webhook'): - print("---------------------------------------------------------Notifying webhook!", file=sys.stderr) - notify_webhook(request, test, test_id) - if test.finished or test.deleted: return { 'stop' : True } @@ -510,6 +506,16 @@ def update_test(request, machine): updated=timezone.now() ) + # Send update to webhook, if it exists + if test.finished and os.path.exists('webhook'): + response = notify_webhook(request, test, test_id) + + # print(f'Text: {response.text}') + # print(f'JSON: {response.json()}') + # print(f'Status Code: {response.status_code}') + # print(f'Reason: {response.reason}') + # print(f'Url: {response.url}') + return [{}, { 'stop' : True }][test.finished] def notify_webhook(request, test, test_id): @@ -517,68 +523,36 @@ def notify_webhook(request, test, test_id): with open('webhook') as webhook_file: webhook = webhook_file.readlines()[0] - lower, elo, upper = OpenBench.stats.ELO(test.wins, test.losses, test.draws) + lower, elo, upper = OpenBench.stats.Elo(test.results()) error = max(upper - elo, elo - lower) elo = OpenBench.templatetags.mytags.twoDigitPrecision(elo) error = OpenBench.templatetags.mytags.twoDigitPrecision(error) - h0 = OpenBench.templatetags.mytags.twoDigitPrecision(test.elolower) - h1 = OpenBench.templatetags.mytags.twoDigitPrecision(test.eloupper) - tokens = test.devoptions.split(' ') - threads = tokens[0].split('=')[1] - hash = tokens[1].split('=')[1] outcome = 'passed' if test.passed else 'failed' - if test.test_mode == 'GAMES': - mode_string = f'{test.max_games} games' - else: - mode_string = f'SPRT [{h0}, {h1}]' + + color = 0xFEFF58 if test.passed: color = 0x37F769 elif test.wins < test.losses: color = 0xFA4E4E - else: - color = 0xFEFF58 - - msg = { - 'username': test.engine, + return requests.post(webhook, json={ + 'username': test.dev_engine, 'embeds': [{ + 'author': { 'name': test.author }, 'title': f'Test `{test.dev.name}` vs `{test.base.name}` {outcome}', 'url': request.build_absolute_uri(f'/test/{test_id}'), 'color': color, - 'author': { "name": test.author }, + 'description': f'```\n{longStatBlock(test)}\n```', 'fields': [ { - 'name': 'Configuration', - 'value': f'{test.timecontrol}s Threads={threads} Hash={hash}MB', - }, - { - 'name': 'Mode', - 'value': mode_string, - }, - { - 'name': 'Wins', - 'value': f'{test.wins}', - 'inline': True, - }, - { - 'name': 'Losses', - 'value': f'{test.losses}', - 'inline': True, + 'name': 'Stats', + 'value': f'```\n{longStatBlock(test)}\n```', }, { - 'name': 'Draws', - 'value': f'{test.draws}', + 'name': 'User', + 'value': test.author, 'inline': True, - }, - { - 'name': 'Elo', - 'value': f'{elo} ± {error} (95%)', - }, + } ] }] - } - print("--------------------------------------------------------------------------------------------------------------------------------", file=sys.stderr) - print(msg, file=sys.stderr) - print("--------------------------------------------------------------------------------------------------------------------------------", file=sys.stderr) - print(f"-----------------------------------------------Sending msg to {webhook}", file=sys.stderr) - requests.post(webhook, json=msg) + }) diff --git a/webhook b/webhook index 70cbda81..2a857a68 100644 --- a/webhook +++ b/webhook @@ -1 +1 @@ -https://discord.com/api/webhooks/1296891056419508327/nERyVqOUw3slLz5gUok1MNIUWzPaJ67vsVRm6-1buE8Nhr5Vg-2mXJMoBz1MjCXnesL4 \ No newline at end of file +https://discord.com/api/webhooks/1298046962657923094/AxHqlm4MHA2LcApY-hMOGsmlR83adwhA2abjyvtYkywpCl6DUVubhEe1Uokhnzv7DTgh From 848923f009de854023f61267fe5450ee1a65b239 Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Mon, 21 Oct 2024 17:19:32 -0600 Subject: [PATCH 5/7] feat: added code to notify webhook on test completion --- OpenBench/utils.py | 79 +++++++++++++++++----------------------------- 1 file changed, 29 insertions(+), 50 deletions(-) diff --git a/OpenBench/utils.py b/OpenBench/utils.py index 268172ed..db39fe19 100644 --- a/OpenBench/utils.py +++ b/OpenBench/utils.py @@ -18,14 +18,10 @@ # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # -import sys - import datetime import hashlib -import json import math import os -import random import re import requests @@ -399,6 +395,34 @@ def network_edit(request, engine, network): return OpenBench.views.redirect(request, '/networks/%s' % (network.engine), status='Applied changes') +def notify_webhook(request, test_id): + webhook = open('webhook').read().strip() # Remove trailing whitespace/newline, if present + test = Test.objects.get(id=test_id) + + # Compute stats + lower, elo, upper = OpenBench.stats.Elo(test.results()) + error = max(upper - elo, elo - lower) + elo = OpenBench.templatetags.mytags.twoDigitPrecision(elo) + error = OpenBench.templatetags.mytags.twoDigitPrecision(error) + outcome = 'passed' if test.passed else 'failed' + + # Green if passing, red if failing. + color = 0xFEFF58 + if test.passed: + color = 0x37F769 + elif test.wins < test.losses: + color = 0xFA4E4E + + return requests.post(webhook, json={ + 'username': test.dev_engine, + 'embeds': [{ + 'author': { 'name': test.author }, + 'title': f'Test `{test.dev.name}` vs `{test.base.name}` {outcome}', + 'url': request.build_absolute_uri(f'/test/{test_id}'), + 'color': color, + 'description': f'```\n{longStatBlock(test)}\n```', + }] + }) def update_test(request, machine): @@ -508,51 +532,6 @@ def update_test(request, machine): # Send update to webhook, if it exists if test.finished and os.path.exists('webhook'): - response = notify_webhook(request, test, test_id) - - # print(f'Text: {response.text}') - # print(f'JSON: {response.json()}') - # print(f'Status Code: {response.status_code}') - # print(f'Reason: {response.reason}') - # print(f'Url: {response.url}') + notify_webhook(request, test_id) return [{}, { 'stop' : True }][test.finished] - -def notify_webhook(request, test, test_id): - - with open('webhook') as webhook_file: - webhook = webhook_file.readlines()[0] - - lower, elo, upper = OpenBench.stats.Elo(test.results()) - error = max(upper - elo, elo - lower) - elo = OpenBench.templatetags.mytags.twoDigitPrecision(elo) - error = OpenBench.templatetags.mytags.twoDigitPrecision(error) - outcome = 'passed' if test.passed else 'failed' - - color = 0xFEFF58 - if test.passed: - color = 0x37F769 - elif test.wins < test.losses: - color = 0xFA4E4E - - return requests.post(webhook, json={ - 'username': test.dev_engine, - 'embeds': [{ - 'author': { 'name': test.author }, - 'title': f'Test `{test.dev.name}` vs `{test.base.name}` {outcome}', - 'url': request.build_absolute_uri(f'/test/{test_id}'), - 'color': color, - 'description': f'```\n{longStatBlock(test)}\n```', - 'fields': [ - { - 'name': 'Stats', - 'value': f'```\n{longStatBlock(test)}\n```', - }, - { - 'name': 'User', - 'value': test.author, - 'inline': True, - } - ] - }] - }) From b6e9bf6a87de7d079211b1f7d3e5296807c834c0 Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Mon, 21 Oct 2024 18:09:17 -0600 Subject: [PATCH 6/7] feat: allow webhook to be stored in WEBHOOK_URL env var --- OpenBench/utils.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/OpenBench/utils.py b/OpenBench/utils.py index db39fe19..b1f5f705 100644 --- a/OpenBench/utils.py +++ b/OpenBench/utils.py @@ -395,8 +395,7 @@ def network_edit(request, engine, network): return OpenBench.views.redirect(request, '/networks/%s' % (network.engine), status='Applied changes') -def notify_webhook(request, test_id): - webhook = open('webhook').read().strip() # Remove trailing whitespace/newline, if present +def notify_webhook(request, webhook, test_id): test = Test.objects.get(id=test_id) # Compute stats @@ -424,6 +423,16 @@ def notify_webhook(request, test_id): }] }) +def get_webhook(): + # Fetch the webhook from the environment variable, if it exists + webhook = os.getenv('WEBHOOK_URL') + + # If the env var doesn't exist, but the `webhook` file does, read from that + if not webhook and os.path.exists('webhook'): + webhook = open('webhook').read().strip() # Removing trailing whitespace/newline, if present + + return webhook + def update_test(request, machine): # Extract error information @@ -531,7 +540,8 @@ def update_test(request, machine): ) # Send update to webhook, if it exists - if test.finished and os.path.exists('webhook'): - notify_webhook(request, test_id) + webhook = get_webhook() + if test.finished and webhook: + notify_webhook(request, webhook, test_id) return [{}, { 'stop' : True }][test.finished] From b353b5b74474e2f691c00989c4160b6a7fdf9b5c Mon Sep 17 00:00:00 2001 From: Danny Hammer Date: Mon, 21 Oct 2024 19:02:23 -0600 Subject: [PATCH 7/7] chore: removed ability to use webhook env var --- OpenBench/utils.py | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/OpenBench/utils.py b/OpenBench/utils.py index b1f5f705..997a204c 100644 --- a/OpenBench/utils.py +++ b/OpenBench/utils.py @@ -395,7 +395,8 @@ def network_edit(request, engine, network): return OpenBench.views.redirect(request, '/networks/%s' % (network.engine), status='Applied changes') -def notify_webhook(request, webhook, test_id): +def notify_webhook(request, test_id): + webhook = open('webhook').read().strip() # Removing trailing whitespace/newline, if present test = Test.objects.get(id=test_id) # Compute stats @@ -423,16 +424,6 @@ def notify_webhook(request, webhook, test_id): }] }) -def get_webhook(): - # Fetch the webhook from the environment variable, if it exists - webhook = os.getenv('WEBHOOK_URL') - - # If the env var doesn't exist, but the `webhook` file does, read from that - if not webhook and os.path.exists('webhook'): - webhook = open('webhook').read().strip() # Removing trailing whitespace/newline, if present - - return webhook - def update_test(request, machine): # Extract error information @@ -540,8 +531,7 @@ def update_test(request, machine): ) # Send update to webhook, if it exists - webhook = get_webhook() - if test.finished and webhook: - notify_webhook(request, webhook, test_id) + if test.finished and os.path.exists('webhook'): + notify_webhook(request, test_id) return [{}, { 'stop' : True }][test.finished]