Another status update.
**We have a new Lc0 version:**
* After more than a year of concentrated effort and several more of discussions, Lc0 v0.32.0 was [released](
https://discord.com/channels/425419482568196106/425419581713154049/1408162487936745562) a few weeks ago with major parts of the refactoring merged.
* This includes the introduction of selectable search algorithms which allowed us to include the dag search that was living in a branch for a very long time.
* We were hoping to use the release version for TCEC (after several years of sending variations of the dag branch) but testing revealed some scaling issues that required fixes (thanks <@1396833489025892352>), so the current master branch is participating instead.
* The current performance at TCEC shows that not everything is smooth there — but this is not unexpected with large code changes we are undergoing.
* We already have tentative fixes for TCEC (i.e. extreme) scaling, with more in the pipeline (extra thanks to <@1396833489025892352>).
**Training pipeline rewrite progress:**
* I spent the last month rewriting the RL training pipeline:
* Initially targeting BT4 network — that's what we're planning to run RL on.
* Starting with RL mode only. Supervised learning support will come later.
* Built a TUI that nobody will ever see! (But we're planning to expose it on the website too).
* The BT4 model is reimplemented in JAX (and checked to be working)
* As of today, I'm writing the the training loop — the complicated parts are already behind so we should be able to start testing soon.
* Some features:
* Models will be compiled once and kept in memory between networks — this is actually a key reason for the rewrite.
* Training script now supports `.tar` files without unpacking.
* The data loader has been rewritten in C++.
* The rescorer will be integrated directly into the data loader pipeline.
* Getting off the old tensorflow dependency also allows us to use more up-to-date Python.
* This new training script is also a step toward more streamlined model and training experimentation in the future.
**lc3:**
* The `lc3` work hasn't moved at all since the last update — rewriting the training pipeline is more urgent as it may deliver improvements in relatively short term and better utilize our compute resources.
* There's some overlap between training and `lc3` work — the statistics module originally intended for lc3, turned out to be useful in the training pipeline, and got improvements from there.
**What's next:**
* Once RL training of BT4 kicks off, I'll return to `lc3` development.
* The tuning and benchmarking infrastructure update is pushed back until `lc3` reaches a usable state.