Scorpio 3.0

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

Re: Scorpio 3.0

Post by carldaman »

...
Last edited by carldaman on Tue Aug 20, 2019 2:13 am, edited 1 time in total.
carldaman
Posts: 2283
Joined: Sat Jun 02, 2012 2:13 am

Re: Scorpio 3.0

Post by carldaman »

Does it work with non-cuda GPUs? I have a Radeon GPU. All the files are in place, but it doesn't want to run...
Top


Re: Scorpio 3.0

Post by Daniel Shawul » Mon Aug 19, 2019 11:49 pm
Unfortunately not right now. But it should be possible to support OpenCL via tensorflow backend.
I will consider this for the next version.

Daniel
OK, thanks Daniel. :)
User avatar
pohl4711
Posts: 2433
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: Scorpio 3.0

Post by pohl4711 »

Daniel Shawul wrote: Sat Aug 17, 2019 6:33 pm
Dokterchen wrote: Sat Aug 17, 2019 12:09 pm Hi Daniel,

thanks for your new release! :-)

I have tested it on my WIN10 4 core machine with a GTX 2070. The install.bat works very well, all paths and parameters in the ini file are fine and everythinbg works as expected. Also the change to INT8 works well:

Code: Select all

HALF and delay=0
# nodes = 2003616 <0% qnodes> time = 10641ms nps = 188292 eps = 0 nneps = 19990

INT8 and delay=0
# nodes = 2587105 <0% qnodes> time = 9172ms nps = 282065 eps = 0 nneps = 28796
I did my tests before your answer to Stefan. In your answer to Stefan this step is missing.:
Once that is done change the "float_type" to "INT8" in scorpio.ini and run scorpio one more time:

scorpio.bat float_type INT8 go quit
Is this not necessary anymore?

KR
Torsten
Hi Torsten,

Indeed that is necessary, I forgot about it!

I have now put up a document for the installation steps with an example on a Linux GPU machine. If someone could follow similar instruction on a Windows machine from the command line, I would be happy to include the example run in the document.

Btw, you get really good speedup even using HALF precision while is like 2x slower for reasons I don't understand yet.
I suspect it is in the way TensorRT optimizes the network because i sometimes get a 2x speedup with FP16.

reards,
Daniel
I did all steps and all works (LittleBlitzerGUI accepts the .bat-file). BUT: Overnight I had 6 timelosses in 220 games (that is not acceptable, so I aborted the testrun). It seems, the wb2uci-adpater has a time-overhead. I need to set a large move overhead in Scorpio, otherwise a testrun is not possible. But I dont know how to do this (which Scorpio-option to set and how to set in wb2uci.eng file?). Need help!

Stefan (SPCC)
Daniel Shawul
Posts: 4185
Joined: Tue Mar 14, 2006 11:34 am
Location: Ethiopia

Re: Scorpio 3.0

Post by Daniel Shawul »

Unfortunately there is no option to set move overhead in scorpio itself, so i guess it can only be done from the GUI or adaptor.
I am not an expert in Wb2UCI but you can try and set a larger initialization time. It takes about 9 sec to load the network on my machine
so put a 15 sec init time under [OPTIONS] in Wb2Uci.eng

Code: Select all

[OPTIONS]
InitTime=15
I have played thousands of games in cutechess-cli using game in 1min time controls and no move overhead.
I have a few questions: Is Scorpio loaded once and then plays all games ? If the 6 losses you observed are when it being loaded from scratch
then the InitTime could solve the problem.
What time control are you using ?
Also what nps are you getting on your machine?

Thanks
Daniel
User avatar
pohl4711
Posts: 2433
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: Scorpio 3.0

Post by pohl4711 »

I use the LittleblitzerGUI. With 50“+500ms thinking-time.
The 6 timelosses happened randomly overnight. The first 35 games (before I went to bed) were all OK.
And as far as I know, the LBG loads engines fresh into memory with each game. But I am not sure about that.
The nps displayed by LBG were around 26000 n/s. Except the timelosses, Scorpio worked. The score out of the 220 games was around 41% (vs. 6 engines with average Elo of 3363) which means a performance of around 3300 Elo (Fire 7.1 has 3290 Elo in my ratinglist). So, not bad at all.
But without a move overhead parameter or (better) rewritten for UCI-protocol, Scorpio is untestable for me.
Winboard is totally outdated. And does not run in Fritz/Chessbase. The most important GUI for chessplayers. And not in the LittleBlitzerGUI, the most stable GUI for testers.And no other modern top-engine uses winboard anymore. So, please, use UCI !!!
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: Scorpio 3.0

Post by Max »

pohl4711 wrote: Wed Aug 21, 2019 8:50 am So, please, use UCI !!!
+1!

Dear Daniel, it would be highly appreciated if Scorpio supports the UCI protocol (in addition to wb). Please give it a serious consideration if your time allows.

In fact, the same hopeful request goes to the great authors of Crafty, Phalanx, ExChess ... :!:
Hope we're not just the biological boot loader for digital super intelligence. Unfortunately, that is increasingly probable - Elon Musk
tmokonen
Posts: 1296
Joined: Sun Mar 12, 2006 6:46 pm
Location: Kelowna
Full name: Tony Mokonen

Re: Scorpio 3.0

Post by tmokonen »

Max wrote: Wed Aug 21, 2019 12:58 pm
+1!

Dear Daniel, it would be highly appreciated if Scorpio supports the UCI protocol (in addition to wb). Please give it a serious consideration if your time allows.

In fact, the same hopeful request goes to the great authors of Crafty, Phalanx, ExChess ... :!:
None of Daniel's engines over the last 14 years have ever been UCI, so it seems not to be a priority for him. You will never in a million years see an official UCI version of Crafty. Bob has expressed his distaste for the UCI protocol on numerous occasions. Somehow I think Phalanx and ExChess will always be Winboard, too.
User avatar
pohl4711
Posts: 2433
Joined: Sat Sep 03, 2011 7:25 am
Location: Berlin, Germany
Full name: Stefan Pohl

Re: Scorpio 3.0

Post by pohl4711 »

tmokonen wrote: Wed Aug 21, 2019 9:08 pm
Max wrote: Wed Aug 21, 2019 12:58 pm
+1!

Dear Daniel, it would be highly appreciated if Scorpio supports the UCI protocol (in addition to wb). Please give it a serious consideration if your time allows.

In fact, the same hopeful request goes to the great authors of Crafty, Phalanx, ExChess ... :!:
None of Daniel's engines over the last 14 years have ever been UCI, so it seems not to be a priority for him. You will never in a million years see an official UCI version of Crafty. Bob has expressed his distaste for the UCI protocol on numerous occasions. Somehow I think Phalanx and ExChess will always be Winboard, too.
That has changed !!!

“There is now a uci version of Scorpio that you may want to try. Please install again from scratch since there are changes in the ini file.“

https://github.com/dshawul/Scorpio/releases

I will restart the testrun tomorrow. Hopefully, it will work properly in the LittleBlitzerGUI, now. I will report here in 2 days...fingers crossed!
tmokonen
Posts: 1296
Joined: Sun Mar 12, 2006 6:46 pm
Location: Kelowna
Full name: Tony Mokonen

Re: Scorpio 3.0

Post by tmokonen »

Well, that's a surprise for sure. Nice of Daniel to add that UCI support.
Max
Posts: 247
Joined: Tue Apr 13, 2010 10:41 am

Re: Scorpio 3.0

Post by Max »

Thanks a lot Daniel, what a nice surprise!

While Scorpio version 3.0 compiles fine on a mac, there are issues compiling the new uci version 3.0.1 from Scorpio-master.

Code: Select all

$ ./build.sh clang
rm -rf attack.o scorpio.o eval.o hash.o moves.o parallel.o probe.o search.o mcts.o see.o magics.o util.o ../bin/scorpio core.* cluster.* *.gcda
/Library/Developer/CommandLineTools/usr/bin/make ../bin/scorpio strip
clang++ -Wall -fstrict-aliasing -fno-exceptions -fno-rtti -Wno-unused-variable -Wno-unused-result  -Wno-unused-result  -std=c++11 -msse -Ofast -fomit-frame-pointer  -DPARALLEL -DARC_64BIT -DHAS_POPCNT -DHAS_PREFETCH -DUSE_SPINLOCK -DTHREAD_POLLING -DLOG_FILE -DBOOK_PROBE -DBOOK_CREATE -DEGBB -c -o attack.o attack.cpp
clang++ -Wall -fstrict-aliasing -fno-exceptions -fno-rtti -Wno-unused-variable -Wno-unused-result  -Wno-unused-result  -std=c++11 -msse -Ofast -fomit-frame-pointer  -DPARALLEL -DARC_64BIT -DHAS_POPCNT -DHAS_PREFETCH -DUSE_SPINLOCK -DTHREAD_POLLING -DLOG_FILE -DBOOK_PROBE -DBOOK_CREATE -DEGBB -c -o scorpio.o scorpio.cpp
scorpio.cpp:249:29: error: implicit instantiation of undefined template
      'std::__1::basic_string<char, std::__1::char_traits<char>,
      std::__1::allocator<char> >'
                std::string s(buffer);
                            ^
/Library/Developer/CommandLineTools/usr/include/c++/v1/iosfwd:193:32: note: 
      template is declared here
    class _LIBCPP_TEMPLATE_VIS basic_string;
                               ^
scorpio.cpp:250:48: error: implicit instantiation of undefined template
      'std::__1::basic_string<char, std::__1::char_traits<char>,
      std::__1::allocator<char> >'
                while (s.find("value") != std::string::npos)
                                               ^
/Library/Developer/CommandLineTools/usr/include/c++/v1/iosfwd:193:32: note: 
      template is declared here
    class _LIBCPP_TEMPLATE_VIS basic_string;
                               ^
2 errors generated.
make[1]: *** [scorpio.o] Error 1
make: *** [default] Error 2
Hope we're not just the biological boot loader for digital super intelligence. Unfortunately, that is increasingly probable - Elon Musk