Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
a54bc37
So it begins
TheRealGioviok Nov 20, 2025
fea63ea
Bench: 12044152
TheRealGioviok Nov 21, 2025
ded6eb1
Cleanup
TheRealGioviok Nov 21, 2025
16a3283
Cleanup2
TheRealGioviok Nov 21, 2025
8ce66c3
Cleanup3
TheRealGioviok Nov 21, 2025
e6a25f8
Format
TheRealGioviok Nov 21, 2025
0249718
Cleanup + slight optim
TheRealGioviok Nov 21, 2025
3b014eb
Useless comment begone
TheRealGioviok Nov 21, 2025
b0b9621
[[nodiscards]] are back on the menu
TheRealGioviok Nov 21, 2025
f68e3e0
f128 is evil
TheRealGioviok Nov 21, 2025
b06cd29
Format
TheRealGioviok Nov 21, 2025
648d811
run meaner.py
TheRealGioviok Nov 21, 2025
d409b96
Weird stuff
TheRealGioviok Nov 21, 2025
144fe3e
SoA + pointer for backward loop
TheRealGioviok Nov 22, 2025
b21e922
8 epochs for testing
TheRealGioviok Nov 22, 2025
20b4ffc
inline Graph::get
TheRealGioviok Nov 22, 2025
71bd2ab
Bench: 12044152
TheRealGioviok Nov 22, 2025
4c68180
Lazy node addition
TheRealGioviok Nov 22, 2025
69a78fd
f64x2 are back on the menu
TheRealGioviok Nov 22, 2025
df02d72
inline allocs
TheRealGioviok Nov 22, 2025
6691b76
tentative make op node 16 bytes
TheRealGioviok Nov 22, 2025
6697062
alignas(16)
TheRealGioviok Nov 22, 2025
7462470
16 bytes aligned operation node
TheRealGioviok Nov 22, 2025
fe23d85
Bugfix + unreachable
TheRealGioviok Nov 22, 2025
e774189
Format and prep for pgo tests
TheRealGioviok Nov 23, 2025
9817acf
Merge branch 'main' into tuner_rewrite
TheRealGioviok Dec 2, 2025
32317c5
Fix merge fuckery and format
TheRealGioviok Dec 2, 2025
b6dc03b
Bench: 11856625
TheRealGioviok Dec 3, 2025
f06a4ff
Bench: 11856625
TheRealGioviok Dec 3, 2025
52d8006
ahahhhahahahahHAhAhahhahahAHHaHaHAHAHAHAH
TheRealGioviok Dec 3, 2025
a36f77c
Bench: 11856625
TheRealGioviok Dec 3, 2025
cd7b6b3
format yay
TheRealGioviok Dec 3, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
123 changes: 65 additions & 58 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -72,73 +72,80 @@ function(target_add_flags target)
# Libraries
target_link_libraries(${target} PUBLIC git_hash lps)

# LTO
message(STATUS "LTO is set to: ${lto}")
# LTO
if (lto)
set_target_properties(${target} PROPERTIES INTERPROCEDURAL_OPTIMIZATION TRUE)
endif()



endfunction()

# Sorted list of source files
set(srcs
src/bench.cpp
src/bench.hpp
src/board.cpp
src/board.hpp
src/cuckoo.cpp
src/cuckoo.hpp
src/common.hpp
src/dbg_tools.cpp
src/dbg_tools.hpp
src/eval_constants.hpp
src/eval_types.hpp
src/evaluation.cpp
src/evaluation.hpp
src/geometry.cpp
src/geometry.hpp
src/history.cpp
src/history.hpp
src/move.cpp
src/move.hpp
src/movegen.cpp
src/movegen.hpp
src/movepick.cpp
src/movepick.hpp
src/perft.cpp
src/perft.hpp
src/position.cpp
src/position.hpp
src/psqt_state.hpp
src/repetition_info.cpp
src/repetition_info.hpp
src/search.cpp
src/search.hpp
src/speedtest.cpp
src/speedtest.hpp
src/square.hpp
src/tm.cpp
src/tm.hpp
src/tt.cpp
src/tt.hpp
src/tuned.cpp
src/tuned.hpp
src/tuning/globals.hpp
src/tuning/graph.cpp
src/tuning/graph.hpp
src/tuning/loss.hpp
src/tuning/optim.hpp
src/tuning/value.cpp
src/tuning/value.hpp
src/uci.cpp
src/uci.hpp
src/util/bit.hpp
src/util/parse.hpp
src/util/pretty.hpp
src/util/static_vector.hpp
src/util/types.hpp
src/util/vec/sse2.hpp
src/zobrist.cpp
src/zobrist.hpp
src/bench.cpp
src/bench.hpp
src/board.cpp
src/board.hpp
src/common.hpp
src/cuckoo.cpp
src/cuckoo.hpp
src/dbg_tools.cpp
src/dbg_tools.hpp
src/eval_constants.hpp
src/eval_types.hpp
src/evaluation.cpp
src/evaluation.hpp
src/geometry.cpp
src/geometry.hpp
src/history.cpp
src/history.hpp
src/move.cpp
src/move.hpp
src/movegen.cpp
src/movegen.hpp
src/movepick.cpp
src/movepick.hpp
src/perft.cpp
src/perft.hpp
src/position.cpp
src/position.hpp
src/psqt_state.hpp
src/repetition_info.cpp
src/repetition_info.hpp
src/search.cpp
src/search.hpp
src/speedtest.cpp
src/speedtest.hpp
src/square.hpp
src/tm.cpp
src/tm.hpp
src/tt.cpp
src/tt.hpp
src/tuned.cpp
src/tuned.hpp
src/tuning/arena.hpp
src/tuning/globals.hpp
src/tuning/graph.cpp
src/tuning/graph.hpp
src/tuning/info.hpp
src/tuning/loss.hpp
src/tuning/operations.hpp
src/tuning/optim.hpp
src/tuning/value.cpp
src/tuning/value.hpp
src/uci.cpp
src/uci.hpp
src/util/bit.hpp
src/util/parse.hpp
src/util/pretty.hpp
src/util/static_vector.hpp
src/util/types.hpp
src/util/vec/sse2.hpp
src/zobrist.cpp
src/zobrist.hpp
)

if(CLOCKWORK_ENABLE_EVALTUNE)
Expand Down
31 changes: 22 additions & 9 deletions src/eval_types.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,10 @@
#endif

namespace Clockwork {
#ifndef EVAL_TUNING

#ifndef EVAL_TUNING
using Score = i16;

class PScore {
private:
i32 m_score;
Expand Down Expand Up @@ -109,20 +110,32 @@ using PParam = PScore;

#else

using Score = Autograd::ValuePtr;
using PScore = Autograd::PairPtr;
using PParam = Autograd::PairPlaceholder;
using Score = Autograd::ValueHandle;
using PScore = Autograd::PairHandle;
using PParam = Autograd::PairPlaceholder; // Handle for the TUNABLE parameter

#endif


#ifdef EVAL_TUNING
#define S(a, b) Autograd::PairPlaceholder::create_tunable((a), (b)) // Defines a tunable pscore
// Tunable scalar pair (mg, eg)
#define S(a, b) Autograd::PairPlaceholder::create_tunable((a), (b))

// Constant scalar pair (mg, eg)
#define CS(a, b) Autograd::PairPlaceholder::create((a), (b))
#define PSCORE_ZERO Autograd::Pair::create(0, 0)

// Zero pair FOR PARAMETERS (e.g., in an array)
#define PPARAM_ZERO Autograd::PairPlaceholder::create(0, 0)

// Zero pair FOR INTERMEDIATES (e.g., scores)
#define PSCORE_ZERO Autograd::PairHandle::create(0, 0)

#else
#define S(a, b) PScore((a), (b)) // Defines a constant pscore when not tuning
#define CS(a, b) S((a), (b))
#define PSCORE_ZERO CS(0, 0)
// ... (non-tuning definitions) ...
#define S(a, b) PScore((a), (b))
#define CS(a, b) PScore((a), (b))
#define PPARAM_ZERO PScore(0, 0)
#define PSCORE_ZERO PScore(0, 0)
#endif

} // namespace Clockwork
Loading
Loading