Difference between revisions of "Tomasz Sobczyk"

From Chessprogramming wiki
Jump to: navigation, search
 
(2 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
a Polish computer scientist involved in recent [[Stockfish]] development and documentation concerning [[NNUE]]  
 
a Polish computer scientist involved in recent [[Stockfish]] development and documentation concerning [[NNUE]]  
 
<ref>[https://github.com/glinscott/nnue-pytorch/blob/master/docs/nnue.md NNUE Guide (nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub)] hosted by [[Gary Linscott]]</ref>.
 
<ref>[https://github.com/glinscott/nnue-pytorch/blob/master/docs/nnue.md NNUE Guide (nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub)] hosted by [[Gary Linscott]]</ref>.
He introduced new net architectures using the [[Stockfish NNUE#HalfKA|HalfKAv2]] feature set <ref>[https://github.com/official-stockfish/Stockfish/pull/3474 Update default net to nn-8a08400ed089.nnue by Sopel97 · Pull Request #3474 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/glinscott/nnue-pytorch/blob/master/docs/nnue.md#halfkav2-feature-set nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub - HalfKAv2 feature set]</ref>,  
+
He introduced new net architectures using the [[Stockfish NNUE#HalfKA|HalfKA]], HalfKAv2 <ref>[https://github.com/official-stockfish/Stockfish/pull/3474 Update default net to nn-8a08400ed089.nnue by Sopel97 · Pull Request #3474 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/glinscott/nnue-pytorch/blob/master/docs/nnue.md#halfkav2-feature-set nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub - HalfKAv2 feature set]</ref> and HalfKAv2_hm <ref>[https://github.com/official-stockfish/Stockfish/pull/3646 New NNUE architecture and net by Sopel97 · Pull Request #3646 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/glinscott/nnue-pytorch/blob/master/docs/nnue.md#halfkav2_hm-feature-set nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub - HalfKAv2 feature set]</ref> feature sets,  
optimized the NNUE inference code for various [[SIMD and SWAR Techniques#SIMD Instruction Sets|SIMD instruction sets]] <ref>[https://github.com/official-stockfish/Stockfish/pull/3203 Optimization of the affine transformations. by Sopel97 · Pull Request #3203 · official-stockfish/Stockfish · GitHub]</ref>,  
+
optimized the NNUE inference code for various [[SIMD and SWAR Techniques#SIMD Instruction Sets|SIMD instruction sets]] <ref>[https://github.com/official-stockfish/Stockfish/pull/3203 Optimization of the affine transformations. by Sopel97 · Pull Request #3203 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/official-stockfish/Stockfish/pull/3218 AVX-512 optimizations. by Sopel97 · Pull Request #3218 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/official-stockfish/Stockfish/pull/3663 Optimize and tidy up affine transform code. by Sopel97 · Pull Request #3663 · official-stockfish/Stockfish · GitHub]</ref>,  
and contributed to [[Gary Linscott|Gary Linscott's]] [[Gary Linscott#PyTorch NNUE|Pytorch NNUE]] project to train Stockfish  
+
and contributed to [[Gary Linscott|Gary Linscott's]] [[Gary Linscott#PyTorch NNUE|Pytorch NNUE]] project to train Stockfish, mostly working on optimizations which allowed nets to be trained within hours instead of days <ref>[https://github.com/glinscott/nnue-pytorch/pull/1 Defer data preparation to native code. Use sparse input tensors. · Pull Request #1 · glinscott/nnue-pytorch · GitHub]</ref> <ref>[https://github.com/glinscott/nnue-pytorch/pull/96 A custom kernel for the feature transformer. · Pull Request #96 · glinscott/nnue-pytorch · GitHub]</ref>
<ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77503&start=55 Re: will Tcec allow Stockfish with a Leela net to play?] by [[Connor McMonigle]], [[CCC]], June 17, 2021</ref>.  
+
<ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77503&start=55 Re: will Tcec allow Stockfish with a Leela net to play?] by [[Connor McMonigle]], [[CCC]], June 17, 2021</ref>. He also heavily contributed to the original NNUE trainer and data generator by [[Yu Nasu]], cleaning up the codebase, updating the data generator, optimizing the trainer, and adding other useful tools <ref>[https://github.com/nodchip/Stockfish/pulls?q=is%3Apr+author%3ASopel97 Pull Requests by Sopel97 · nodchip/Stockfish · GitHub]</ref> which are now available in the tools branch of the official-stockfish repository <ref>[https://github.com/official-stockfish/Stockfish/tree/tools official-stockfish tools branch · official-stockfish/Stockfish · GitHub]</ref>. He also introduced the [[Binpack]] storage format for training data <ref>[https://github.com/Sopel97/nnue_data_compress Sopel97/nnue_data_compress · GitHub]</ref> <ref>[https://github.com/nodchip/Stockfish/pull/129 Introduce sfen_format option for gensfen. Experimental support for binpack format in gensfen and learn. · Pull Request #129 · nodchip/Stockfish · GitHub]</ref>, comprising of position evaluations from chess games, which utilizes efficient delta encoding, and reduces the sizes of the datasets by 10 to 20 times compared to the previous solutions. His contributions span more than 200 pull requests over multiple repositories <ref>[https://github.com/nodchip/Stockfish/pulls?q=is%3Apr+author%3ASopel97 Pull Requests by Sopel97 · nodchip/Stockfish · GitHub]</ref> <ref>[https://github.com/official-stockfish/Stockfish/pulls?q=is%3Apr+author%3ASopel97 Pull Requests by Sopel97 · official-stockfish/Stockfish · GitHub]</ref> <ref>[https://github.com/glinscott/nnue-pytorch/pulls?q=is%3Apr+author%3ASopel97 Pull Requests by Sopel97 · glinscott/nnue-pytorch · GitHub]</ref>. He's also an author of a chess engine [[Fat Titz]], which is based on [[CFish]] and is a parody of [[Fat Fritz]] <ref>[https://github.com/Sopel97/FatTitz Sopel97/FatTitz · GitHub]</ref> <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=2&t=78026 Fat Titz 1.0 released by [[Tomasz Sobczyk|Sopel]], [[CCC]], Aug 26, 2021]</ref>.
  
 
=Forum Posts=
 
=Forum Posts=
 +
==2020 ...==
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=73319&start=30 Re: Removing Large Arrays] by [[Tomasz Sobczyk|Sopel]], [[CCC]], March 12, 2020
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=73319&start=30 Re: Removing Large Arrays] by [[Tomasz Sobczyk|Sopel]], [[CCC]], March 12, 2020
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=73638&start=21 Re: Compiler Optimization Question] by [[Tomasz Sobczyk|Sopel]], [[CCC]], April 14, 2020
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=73638&start=21 Re: Compiler Optimization Question] by [[Tomasz Sobczyk|Sopel]], [[CCC]], April 14, 2020
Line 16: Line 17:
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77095&start=5 Re: larger nets for SF?] by [[Tomasz Sobczyk|Sopel]], [[CCC]], April 16, 2021
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=77095&start=5 Re: larger nets for SF?] by [[Tomasz Sobczyk|Sopel]], [[CCC]], April 16, 2021
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=75506&start=39 Re: NNUE Question - King Placements] by [[Tomasz Sobczyk|Sopel]], [[CCC]], July 01, 2021 » [[NNUE #KingPlacements|NNUE Question]]
 
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=75506&start=39 Re: NNUE Question - King Placements] by [[Tomasz Sobczyk|Sopel]], [[CCC]], July 01, 2021 » [[NNUE #KingPlacements|NNUE Question]]
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=78026 Fat Titz 1.0 released] by [[Tomasz Sobczyk|Sopel]], [[CCC]], Aug 26, 2021
 +
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=78071 Fat Titz 1.1 released!] by [[Tomasz Sobczyk|Sopel]], [[CCC]], Aug 31, 2021
 +
==2022 ...==
 +
* [https://www.talkchess.com/forum3/viewtopic.php?f=2&t=79112 Fat Titz 2 released!] by [[Tomasz Sobczyk]], [[CCC]], January 13, 2022
  
 
=External Links=
 
=External Links=
Line 23: Line 28:
 
* [https://github.com/official-stockfish/Stockfish/pull/3474 Update default net to nn-8a08400ed089.nnue by Sopel97 · Pull Request #3474 · official-stockfish/Stockfish · GitHub]
 
* [https://github.com/official-stockfish/Stockfish/pull/3474 Update default net to nn-8a08400ed089.nnue by Sopel97 · Pull Request #3474 · official-stockfish/Stockfish · GitHub]
 
* [https://github.com/official-stockfish/Stockfish/pull/3548 Reduce the number of accumulator states from 3 to 2. Make the intent of the states clearer. by Sopel97 · Pull Request #3548 · official-stockfish/Stockfish · GitHub]
 
* [https://github.com/official-stockfish/Stockfish/pull/3548 Reduce the number of accumulator states from 3 to 2. Make the intent of the states clearer. by Sopel97 · Pull Request #3548 · official-stockfish/Stockfish · GitHub]
 +
* [https://github.com/official-stockfish/Stockfish/pull/3646 New NNUE architecture and net by Sopel97 · Pull Request #3646 · official-stockfish/Stockfish · GitHub]
 
==Pytorch NNUE==
 
==Pytorch NNUE==
 
* [https://github.com/Sopel97/nnue-pytorch GitHub - Sopel97/nnue-pytorch: NNUE (Chess evaluation) trainer in Pytorch]
 
* [https://github.com/Sopel97/nnue-pytorch GitHub - Sopel97/nnue-pytorch: NNUE (Chess evaluation) trainer in Pytorch]
* [https://github.com/glinscott/nnue-pytorch/issues/73 get rid of some nodchip code · Issue #73 · glinscott/nnue-pytorch · GitHub]
+
* [https://github.com/glinscott/nnue-pytorch/pull/1 Defer data preparation to native code. Use sparse input tensors. by Sopel97 · Pull Request #1 · glinscott/nnue-pytorch · GitHub]
 +
* [https://github.com/glinscott/nnue-pytorch/pull/96 A custom kernel for the feature transformer. by Sopel97 · Pull Request #96 · glinscott/nnue-pytorch · GitHub]
 
* [https://github.com/glinscott/nnue-pytorch/pull/109 Update and enhance information about additional feature factors. by Sopel97 · Pull Request #109 · glinscott/nnue-pytorch · GitHub]
 
* [https://github.com/glinscott/nnue-pytorch/pull/109 Update and enhance information about additional feature factors. by Sopel97 · Pull Request #109 · glinscott/nnue-pytorch · GitHub]
 
* [https://github.com/glinscott/nnue-pytorch/pull/110 Update trainer to the new architecture. by Sopel97 · Pull Request #110 · glinscott/nnue-pytorch · GitHub]
 
* [https://github.com/glinscott/nnue-pytorch/pull/110 Update trainer to the new architecture. by Sopel97 · Pull Request #110 · glinscott/nnue-pytorch · GitHub]

Latest revision as of 23:21, 14 January 2022

Home * People * Tomasz Sobczyk

Tomasz Sobczyk, (Sopel97, Sopel)
a Polish computer scientist involved in recent Stockfish development and documentation concerning NNUE [1]. He introduced new net architectures using the HalfKA, HalfKAv2 [2] [3] and HalfKAv2_hm [4] [5] feature sets, optimized the NNUE inference code for various SIMD instruction sets [6] [7] [8], and contributed to Gary Linscott's Pytorch NNUE project to train Stockfish, mostly working on optimizations which allowed nets to be trained within hours instead of days [9] [10] [11]. He also heavily contributed to the original NNUE trainer and data generator by Yu Nasu, cleaning up the codebase, updating the data generator, optimizing the trainer, and adding other useful tools [12] which are now available in the tools branch of the official-stockfish repository [13]. He also introduced the Binpack storage format for training data [14] [15], comprising of position evaluations from chess games, which utilizes efficient delta encoding, and reduces the sizes of the datasets by 10 to 20 times compared to the previous solutions. His contributions span more than 200 pull requests over multiple repositories [16] [17] [18]. He's also an author of a chess engine Fat Titz, which is based on CFish and is a parody of Fat Fritz [19] [20].

Forum Posts

2020 ...

2022 ...

External Links

Stockfish

Pytorch NNUE

References

  1. NNUE Guide (nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub) hosted by Gary Linscott
  2. Update default net to nn-8a08400ed089.nnue by Sopel97 · Pull Request #3474 · official-stockfish/Stockfish · GitHub
  3. nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub - HalfKAv2 feature set
  4. New NNUE architecture and net by Sopel97 · Pull Request #3646 · official-stockfish/Stockfish · GitHub
  5. nnue-pytorch/nnue.md at master · glinscott/nnue-pytorch · GitHub - HalfKAv2 feature set
  6. Optimization of the affine transformations. by Sopel97 · Pull Request #3203 · official-stockfish/Stockfish · GitHub
  7. AVX-512 optimizations. by Sopel97 · Pull Request #3218 · official-stockfish/Stockfish · GitHub
  8. Optimize and tidy up affine transform code. by Sopel97 · Pull Request #3663 · official-stockfish/Stockfish · GitHub
  9. Defer data preparation to native code. Use sparse input tensors. · Pull Request #1 · glinscott/nnue-pytorch · GitHub
  10. A custom kernel for the feature transformer. · Pull Request #96 · glinscott/nnue-pytorch · GitHub
  11. Re: will Tcec allow Stockfish with a Leela net to play? by Connor McMonigle, CCC, June 17, 2021
  12. Pull Requests by Sopel97 · nodchip/Stockfish · GitHub
  13. official-stockfish tools branch · official-stockfish/Stockfish · GitHub
  14. Sopel97/nnue_data_compress · GitHub
  15. Introduce sfen_format option for gensfen. Experimental support for binpack format in gensfen and learn. · Pull Request #129 · nodchip/Stockfish · GitHub
  16. Pull Requests by Sopel97 · nodchip/Stockfish · GitHub
  17. Pull Requests by Sopel97 · official-stockfish/Stockfish · GitHub
  18. Pull Requests by Sopel97 · glinscott/nnue-pytorch · GitHub
  19. Sopel97/FatTitz · GitHub
  20. Fat Titz 1.0 released by Sopel, CCC, Aug 26, 2021

Up one level