Javier Ros wrote: ↑Thu Dec 31, 2020 7:06 pm
I am using Banksia GUI lately and it is very good for doing tournaments with different time control for each player.
The concurrency is another excellent feature of Banksia if you want to play several games simultaneously using a few cores per engine.
The problem of the concurrency is that you can't use it with a GPU engine. In order to do it possible I propose to implement a feature in Banksia
defining in each engine a variable that indicates whether the engine is GPU type or it is CPU type.
In the Overall options the "Cores" option must be splitted in "Cores per CPU engine" and "Cores per GPU engine" (typically equal to 2).
The games of the tournament must be organized in a way that only one GPU engine must use the GPU and when the game is finished, the GPU can be used by another GPU engine. So the concurrency of the GPU engines is 1 while the user can set the concurrency of the CPU engines greater than one.
One way to organize a tournament is to play the GPU engine games first, using the remaining cores with the concurrency set for the CPU engines. At the end of the GPU games the computer can use all the CPU engines cores plus the cores reserved for the GPU engines previously to finish the games with CPU engines.
I know that if we want to play a tournament with many GPU engines, the concurrency would lose efficiency because the GPU would always be busy while the CPU would have unused cores.
With this new feature interesting experiments can be done!
I want to thank Nguyen Hong Pham for creating Banksia GUI and wish him the best for him and his family.
Javier Ros wrote: ↑Sat May 01, 2021 6:00 pm
Many thanks for implement this new feature of concurrency for GPU and CPU in Banksia GUI.
It is a very useful feature for testing GPU vs CPU.
Best regards
Thank you too for the idea & suggestion
I have used the new feature and works perfectly if you play the whole tournament in one session, but if you Stop, Quit the program and Resume it later, the Gpu concurrency is not well computed and it plays simultaneous Gpu games at the same time, with a different schedule than the programmed originally.
Lichess bot feature still does not work properly. When my bot start a game with black pieces it never make any moves. I have to click on "Go offline" and then "Go online" to refresh it and then bot start to make moves. Command ucinewgame is not send by Banksia GUI. This command is send only when my bot starts with white pieces or I click on "Go offline" and then "Go online" button. Tested on Banksia GUI version 0.42.
Lichess Bot feature works fine with Banksia GUI version 0.29 without issues.
11:15:08 Deep HIARCS 14 WCSC< uci
11:15:09 hm::honzovy-sachy-2 1916> move f2f4
11:15:09 Deep HIARCS 14 WCSC> HIARCS by Mark John Uniacke
11:15:09 Deep HIARCS 14 WCSC> Copyright (c) 1992-2015 Mark Uniacke, Applied Computer Concepts Ltd. All rights reserved.
11:15:09 Deep HIARCS 14 WCSC> id name Deep HIARCS 14 WCSC
11:15:09 Deep HIARCS 14 WCSC> id author Mark John Uniacke
11:15:09 Deep HIARCS 14 WCSC> option name Licensed To type combo default Censored var Censored
11:15:09 Deep HIARCS 14 WCSC> option name Threads type spin min 1 max 12 default 12
11:15:09 Deep HIARCS 14 WCSC> option name CPU Usage type spin min 1 max 100 default 100
11:15:09 Deep HIARCS 14 WCSC> option name Busy Threads type check default true
11:15:09 Deep HIARCS 14 WCSC> option name OwnBook type check default true
11:15:09 Deep HIARCS 14 WCSC> option name Book Learning type check default true
11:15:09 Deep HIARCS 14 WCSC> option name Book Mode type combo default Tournament var Wild var Surprise var Dynamic var Tournament
11:15:09 Deep HIARCS 14 WCSC> option name Book Positions type combo default 28039830 var 28039830
11:15:09 Deep HIARCS 14 WCSC> option name Book Status type combo default Hiarcs14zBook.hcs OK var Hiarcs14zBook.hcs OK
11:15:09 Deep HIARCS 14 WCSC> option name Use Tablebases type combo var Often var Normally var Rarely var Never default Normally
11:15:09 Deep HIARCS 14 WCSC> option name Swindle Opponent type check default true
11:15:09 Deep HIARCS 14 WCSC> option name NalimovCache type spin min 1 max 1024 default 32
11:15:09 Deep HIARCS 14 WCSC> option name NalimovPath type string default
11:15:09 Deep HIARCS 14 WCSC> option name Hash type spin min 1 max 2048 default 128
11:15:09 Deep HIARCS 14 WCSC> option name Clear Hash type button
11:15:09 Deep HIARCS 14 WCSC> option name Retain Hash type check default true
11:15:09 Deep HIARCS 14 WCSC> option name Position Learning type check default true
11:15:09 Deep HIARCS 14 WCSC> option name Optimistic Search type check default true
11:15:09 Deep HIARCS 14 WCSC> option name Combinations type check default true
11:15:09 Deep HIARCS 14 WCSC> option name Hiarcs Draw Value type spin min -100 max 100 default 0
11:15:09 Deep HIARCS 14 WCSC> option name Search Selectivity type spin min 0 max 7 default 7
11:15:09 Deep HIARCS 14 WCSC> option name Playing Style type combo default Active var Active var Aggressive var Solid
11:15:09 Deep HIARCS 14 WCSC> option name Hyper-Modern Play type check default true
11:15:09 Deep HIARCS 14 WCSC> option name GUI Time Lag type check default false
11:15:09 Deep HIARCS 14 WCSC> option name AutoSave PGN type check default true
11:15:09 Deep HIARCS 14 WCSC> option name UCI_Elo type spin min 750 max 3228 default 2315
11:15:09 Deep HIARCS 14 WCSC> option name UCI_LimitStrength type check default false
11:15:09 Deep HIARCS 14 WCSC> option name UCI_AnalyseMode type check default false
11:15:09 Deep HIARCS 14 WCSC> option name UCI_SearchMoves type check default true
11:15:09 Deep HIARCS 14 WCSC> option name UCI_ShowCurrLine type check default false
11:15:09 Deep HIARCS 14 WCSC> option name UCI_Chess960 type check default false
11:15:09 Deep HIARCS 14 WCSC> option name MultiPV type spin min 1 max 127 default 1
11:15:09 Deep HIARCS 14 WCSC> option name Ponder type check default true
11:15:09 Deep HIARCS 14 WCSC> option name UCI_EngineAbout type string default Deep HIARCS 14 WCSC (05/03/15) Copyright (c) 1991-2015 Applied Computer Concepts Ltd. All rights reserved. 2011 World Chess Software Champion.
11:15:09 Deep HIARCS 14 WCSC> registration checking
11:15:09 Deep HIARCS 14 WCSC> registration ok
11:15:09 Deep HIARCS 14 WCSC> option name Licensed To type string default Censored
11:15:09 Deep HIARCS 14 WCSC> uciok
11:15:09 Deep HIARCS 14 WCSC< setoption name Licensed To value
11:15:09 Deep HIARCS 14 WCSC< setoption name Threads value 6
11:15:09 Deep HIARCS 14 WCSC< setoption name Hash value 2048
11:15:09 Deep HIARCS 14 WCSC< setoption name Playing Style value Aggressive
11:15:09 Deep HIARCS 14 WCSC< setoption name GUI Time Lag value true
11:15:09 Deep HIARCS 14 WCSC< setoption name Ponder value true
11:15:09 Deep HIARCS 14 WCSC< isready
11:15:09 Deep HIARCS 14 WCSC> info string Threads=6
11:15:10 Deep HIARCS 14 WCSC> info string Hash request=2097152Mb allocated=2097152Mb
11:15:10 Deep HIARCS 14 WCSC> info string Playing Style=Aggressive
11:15:10 Deep HIARCS 14 WCSC> info string GUI Time Lag ON
11:15:10 Deep HIARCS 14 WCSC> info string Ponder ON
11:15:10 Deep HIARCS 14 WCSC> readyok
The program gets better every time. Thanks a lot, excellent work!
Release .42 has 2 issues:
- Swiss tournament with 1 game per pair sometimes replays same players for a new match.
- Editing name on engine with gear icon in linux duplicates engine. One with the old name and a new copy. I reported it before and you mentioned that it should be fixed. No big deal, just press '-' on the old one...
Feature request:
- When selecting 1 game per pair in swiss tournament, swap sides checkbox is not relevant.
- Option to save epd position when blunder is detected. Suggestion to have e.g. am opcode to indicate blunder and include reference to game using custom tags. Alternatively, save pgn file with ? or ?? indicators and possibly some {comments}. (see Arena)
- Option to save engine debug info when 'fail' is registered.
- In engine setup, left align paths and commands just like engine name column (and add dots to left side if not enough space).
- In cross-table point representation, only print half-scores in details part if present. Now 1 is represented as 1.0. (I believe in the totals colomn, the presence of .0 suffix is less distracting.)
Javier Ros wrote: ↑Mon May 03, 2021 8:26 pm
I have used the new feature and works perfectly if you play the whole tournament in one session, but if you Stop, Quit the program and Resume it later, the Gpu concurrency is not well computed and it plays simultaneous Gpu games at the same time, with a different schedule than the programmed originally.
Best regards.
Thanks for the bug report. It will be fixed for the next release.
https://banksiagui.com
The most features chess GUI, based on opensource Banksia - the chess tournament manager
huanhuan wrote: ↑Tue May 04, 2021 3:03 am
Ordo is used more widely than Bayeselo. So in my opinion there should be an option to choose from, whether users will go for Ordo or Bayeselo.
Elo's calculations using Bayeselo are too compressed, which is why so many people use Ordo.
huanhuan wrote: ↑Tue May 04, 2021 3:03 am
Elo's calculations using Bayeselo are too compressed, which is why so many people use Ordo.
Thanks,
I'd say the opposite is true. Ordo's ratings are too expanded or exaggerated, take your pick. I prefer Bayeselo.
But yes offering both is a good option.
I have been working on implementing Ordo. However, it is so slow and tired since I have to rewrite/convert many things (BSG and Ordo app have very different data structures, one uses C++, one C).
https://banksiagui.com
The most features chess GUI, based on opensource Banksia - the chess tournament manager