Commit Graph

  • 941897ff2c Optimize trainer clipped relu backpropagate. Tomasz Sobczyk 2020-10-28 15:03:09 +01:00
  • c96743c5bd Optimize feature transformer backpropagation stats. Tomasz Sobczyk 2020-10-28 14:59:18 +01:00
  • 2c10b1babc Optimize feature transformer clipped relu. Tomasz Sobczyk 2020-10-27 17:36:50 +01:00
  • 7bedf6c5ab Specify the whole evalsave message because otherwise the first evalsave/0 triggers it. Tomasz Sobczyk 2020-10-30 10:37:03 +01:00
  • 8c81bbd3db Fix the counter in for_each_index_with_workers going out of scope before workers finish. Tomasz Sobczyk 2020-10-30 10:36:39 +01:00
  • a56d8124d8 Replace non-blas parts of trainers with our own blas-like routines. Tomasz Sobczyk 2020-10-28 14:52:27 +01:00
  • c56a4a36eb Add our own blas-like routines that use stockfish's thread pool for parallelization. Tomasz Sobczyk 2020-10-28 14:41:51 +01:00
  • ee0917a345 Pass ThreadPool to update_parameters, propagate, and backpropagate. Tomasz Sobczyk 2020-10-26 15:06:15 +01:00
  • f1e96cab55 Align trainer arrays to cache line. Tomasz Sobczyk 2020-10-27 19:37:19 +01:00
  • 8fac468259 Add a cache line aligned allocator. Tomasz Sobczyk 2020-10-27 19:37:06 +01:00
  • ec9e49e875 Add a HalfKA architecture (a product of K - king, and A - any piece) along with all required infrastructure. HalfKA doesn't discriminate kings compared to HalfKP. Keep old architecture as the default one. Tomasz Sobczyk 2020-10-28 15:24:29 +01:00
  • 0f6c08c73f Do not skip non-recapture ttMove when in check syzygy1 2020-10-27 19:22:41 +01:00
  • 317fda2516 Cleanup eval saving and lr scheduling. Tomasz Sobczyk 2020-10-24 23:56:29 +02:00
  • 6328135264 Update default net to nn-2eb2e0707c2b.nnue SFisGOD 2020-10-28 04:24:55 +08:00
  • bde3505758 Bishop Pawns based on Files FauziAkram 2020-10-24 02:01:04 +03:00
  • 680654b254 Add dots to output every epoch for progress visualization. Tomasz Sobczyk 2020-10-27 20:58:58 +01:00
  • f81fa3d712 Replace global_learning_rate with learning_rate local to the learner and passed to update_parameters as a parameter. Tomasz Sobczyk 2020-10-24 23:35:34 +02:00
  • cde6ec2bf2 Make all grad related functions in learn static. Pass calc_grad as a parameter. Tomasz Sobczyk 2020-10-24 23:29:32 +02:00
  • e4868cb59e Move setting learn search limits to learner. Tomasz Sobczyk 2020-10-24 23:17:56 +02:00
  • c229929d26 Remove the position parameter from learn. Tomasz Sobczyk 2020-10-24 22:58:09 +02:00
  • a8066cd4a9 Rename elmo lambdas Tomasz Sobczyk 2020-10-24 23:22:47 +02:00
  • f7de49eb66 Create a collective parameter struct for learner. Tomasz Sobczyk 2020-10-24 23:16:11 +02:00
  • ba390a7f9a Print the used factorizer when intializing training. Tomasz Sobczyk 2020-10-26 13:52:35 +01:00
  • e01397c674 Remove multi_think Tomasz Sobczyk 2020-10-25 10:43:45 +01:00
  • e515f1f61f Move SfenWriter to a separate file Tomasz Sobczyk 2020-10-24 22:56:42 +02:00
  • 65e443954a Update expected gensfen finished responses. Tomasz Sobczyk 2020-10-25 19:14:19 +01:00
  • 03abfae41f Reorder members, renaming. Tomasz Sobczyk 2020-10-24 22:53:14 +02:00
  • 6d4d20c4be Cleaner printing and some renaming. Tomasz Sobczyk 2020-10-24 22:44:02 +02:00
  • d77b3d176e Always flush sfen writer at the end of gensfen and when it is destroyed. Tomasz Sobczyk 2020-10-24 22:30:08 +02:00
  • 21fac7c53c A collective struct for gensfen parameters. Tomasz Sobczyk 2020-10-24 22:27:01 +02:00
  • cb61dc9c9b Make sfen writer a part of gensfen. Tomasz Sobczyk 2020-10-24 22:00:52 +02:00
  • 3f289546da Make some gensfen members private. Tomasz Sobczyk 2020-10-24 21:53:16 +02:00
  • 821b655bc6 Move gensfen progress reporting from sfen writer to gensfen Tomasz Sobczyk 2020-10-24 21:51:22 +02:00
  • af238fe132 Rewrite gensfen to use stockfish's thread pool. Tomasz Sobczyk 2020-10-24 21:18:06 +02:00
  • 0e528995c2 Print avg bias/weight for affine trasform and feature transformer during training. Tomasz Sobczyk 2020-10-24 20:03:40 +02:00
  • fe766f4f42 Additional output from layers during training. Tomasz Sobczyk 2020-10-24 16:51:31 +02:00
  • 2c477d76ec Cleaner and more outputs during training initialization. Tomasz Sobczyk 2020-10-24 14:21:59 +02:00
  • b882423005 Bring back info for finished evalsave. Update tests with the new message. Tomasz Sobczyk 2020-10-24 13:46:34 +02:00
  • 4b72658409 Synchronize printed info regions in the learner and sfen reader. Tomasz Sobczyk 2020-10-24 13:34:10 +02:00
  • d824bd8ec5 Add an overload for io manip in the logger. Tomasz Sobczyk 2020-10-24 13:31:40 +02:00
  • 54dd6a2407 Add logger with synchronized regions. Tomasz Sobczyk 2020-10-24 13:13:10 +02:00
  • cf3edfed82 Improve info messages. Tomasz Sobczyk 2020-10-24 13:12:32 +02:00
  • c49ae541c4 Add layer info for check_health. Print subsequent infos from the same scope with "-->" instead of "INFO:" for clarity. Tomasz Sobczyk 2020-10-24 11:58:53 +02:00
  • 8ddef320e6 Print an additional new line before calc_loss progress instead of after check_health in the feature transformer layer. Tomasz Sobczyk 2020-10-24 11:42:30 +02:00
  • d70408f204 Add docs entry for the verbose flag. Tomasz Sobczyk 2020-10-24 11:40:26 +02:00
  • a351c1d65e Add verbose flag to learn. Only print update parameters info when vebose=true Tomasz Sobczyk 2020-10-24 11:39:16 +02:00
  • ec436d3dfd Print some weight update stats Tomasz Sobczyk 2020-10-24 11:15:59 +02:00
  • be3937c37b Print layers and their indices during training initialization. Tomasz Sobczyk 2020-10-24 10:52:49 +02:00
  • 3bf397a569 Update instrumented_learn for the current codebase. Tomasz Sobczyk 2020-10-24 14:54:00 +02:00
  • 47a82bfc91 Document new options. Tomasz Sobczyk 2020-10-24 14:52:50 +02:00
  • 371acaa0b5 Allow changing sfen reader buffer sizes for the learn command. Tomasz Sobczyk 2020-10-24 14:51:28 +02:00
  • d31169bab5 Update CI to use epochs instead of loops. Tomasz Sobczyk 2020-10-24 13:44:19 +02:00
  • 8fb208598b pass shuffle flag in the constructor Tomasz Sobczyk 2020-10-23 22:19:50 +02:00
  • 31f94a18b3 Update readme and docs after change from loop to epochs. Tomasz Sobczyk 2020-10-22 15:57:46 +02:00
  • fc3788f630 Use cyclic sfen reader for learning, change loop option to epochs. Tomasz Sobczyk 2020-10-22 15:45:33 +02:00
  • ad3d1b42e4 Make sfen reader only stop when it's destroyed. Now it is fully RAII. Tomasz Sobczyk 2020-10-22 14:46:19 +02:00
  • c58aa9696a Start sfen reader worker thread in the constructor. Tomasz Sobczyk 2020-10-22 14:43:38 +02:00
  • 0636e1256d Add cyclic mode to the sfen reader. Make sfen reader take all files at construction Tomasz Sobczyk 2020-10-18 14:51:38 +02:00
  • e4a38c18dd Don't test syzygi Tomasz Sobczyk 2020-10-23 22:03:01 +02:00
  • e4e9f7e39b Reduce bench depth for testing with valgrind to prevent timeouts in CI. Tomasz Sobczyk 2020-10-23 17:14:59 +02:00
  • c7ac3688a7 Move the old convert stuff from learn to their own commands. Tomasz Sobczyk 2020-10-18 14:51:38 +02:00
  • f7530de20d Fix assertion in trainer Tomasz Sobczyk 2020-10-22 15:39:43 +02:00
  • 9564a52523 Remove whole file shuffling as it does not change learning behaviour, only works for bin, and is considered harmful for binpack. Tomasz Sobczyk 2020-10-18 14:29:12 +02:00
  • 2046d5da30 More incremental accumulator updates syzygy1 2020-10-20 21:06:06 +02:00
  • 258af8ae44 Add net as dependency of config Joost VandeVondele 2020-10-18 15:01:19 +02:00
  • f5dfad5d72 Reduce big time spikes by reducing PV re-searches. xoto10 2020-10-21 14:52:13 +01:00
  • 7b4a769cca Fix base_dir not being applied to singular filenames. Tomasz Sobczyk 2020-10-22 11:26:59 +02:00
  • af138d1937 Fix crashes when trying to open a file of unknown type. Increase robustness of error handling. Tomasz Sobczyk 2020-10-22 11:20:31 +02:00
  • 886467e09f Fix crash when trying to read a non existing .binpack file. Tomasz Sobczyk 2020-10-22 11:16:41 +02:00
  • 11b28ad3b5 Don't treat unknown options in learn as file names. Add targetfile to specify individual files. Tomasz Sobczyk 2020-10-18 14:25:39 +02:00
  • 8f3e64a6d5 move sfen reader to separate file Tomasz Sobczyk 2020-10-18 13:36:32 +02:00
  • ff06d1e0ad Rewrite learner to be based on stockfish's thread pool. Reduce coupling along the way Tomasz Sobczyk 2020-10-18 11:23:58 +02:00
  • f2ad307de3 Clarify the behaviour of execute_with_worker[s] Tomasz Sobczyk 2020-10-20 10:50:59 +02:00
  • 74af287637 Fix execute_with_workers test call in uci Tomasz Sobczyk 2020-10-19 15:27:33 +02:00
  • 71862e2ebb remove incorrect move in execute_with_workers Tomasz Sobczyk 2020-10-19 13:27:39 +02:00
  • fd229c0768 Fix races and UBs Tomasz Sobczyk 2020-10-18 22:35:16 +02:00
  • 97fb9a89e4 allow waiting for task completion. Tomasz Sobczyk 2020-10-18 10:34:48 +02:00
  • 5188c26b20 Allow execution of tasks on the global thread pool. Tomasz Sobczyk 2020-10-17 23:26:29 +02:00
  • 146a6b056e PascalCase -> snake_case for consistency with the rest of the codebase. Tomasz Sobczyk 2020-10-14 22:42:58 +02:00
  • 2398d34e87 Move string split to misc Tomasz Sobczyk 2020-10-14 22:35:35 +02:00
  • 69ea3d30b2 Move the extra new line to after check health. Tomasz Sobczyk 2020-10-14 21:58:25 +02:00
  • 9023edc3c8 Add missing includes. Tomasz Sobczyk 2020-10-14 21:48:31 +02:00
  • 77624addf2 Cleanup last ".." in include paths. Tomasz Sobczyk 2020-10-14 21:46:40 +02:00
  • 497f689aa3 Cleanup nnue Tomasz Sobczyk 2020-10-14 21:45:38 +02:00
  • c286f9cd7d Cleanup trainer. Tomasz Sobczyk 2020-10-14 21:26:03 +02:00
  • ea8eb415de Cleanup trainer features. Tomasz Sobczyk 2020-10-14 21:00:05 +02:00
  • 560c776397 Do more reductions for late quiet moves in case of consecutive fail highs. Vizvezdenec 2020-10-17 13:40:10 +02:00
  • 281d520cc2 Update default net to nn-eba324f53044.nnue mstembera 2020-10-18 04:23:28 -07:00
  • 3041adb080 Cleanup layers. Tomasz Sobczyk 2020-10-14 20:55:35 +02:00
  • 0d4c3014ca Cleanup features. Tomasz Sobczyk 2020-10-14 20:44:47 +02:00
  • ca760c3a5b Cleanup architecture files. Tomasz Sobczyk 2020-10-14 20:24:26 +02:00
  • c93f8732bf Force Use NNUE to pure when learning. Tomasz Sobczyk 2020-10-16 19:40:05 +02:00
  • 3cf193a90e Properly handle cases in verify and init when SkipLoadingEval is set. Tomasz Sobczyk 2020-10-16 19:37:53 +02:00
  • 5db46d0c82 Verify whether there is a network being used during training. Tomasz Sobczyk 2020-10-14 20:20:10 +02:00
  • e503cc4ea8 Add one more empty line between progress reports. Tomasz Sobczyk 2020-10-14 19:59:41 +02:00
  • 5856237e3f Rename hirate to startpos Tomasz Sobczyk 2020-10-14 19:59:31 +02:00
  • 904adb9a32 Indentation consistency in learn folder Tomasz Sobczyk 2020-10-14 19:53:41 +02:00
  • 880d23af1c Move sfen input/output streams to sfen_stream.h Tomasz Sobczyk 2020-10-14 19:44:15 +02:00
  • 14f83ad7b9 Move public search/qsearch interface from namespace Learner to namespace Search Tomasz Sobczyk 2020-10-14 19:24:41 +02:00
  • 0494adeb2c Move nnue evaluation stuff from evaluate.h to nnue/evaluate_nnue.h Tomasz Sobczyk 2020-10-14 19:06:47 +02:00