New computer suggestions please

Discussion of chess software programming and technical issues.

Moderators: bob, hgm, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 3:18 am

New computer suggestions please

Post by BubbaTough » Tue Oct 17, 2017 10:54 am

Considering starting working on Hannibal again. My development computer is old and broken; any suggestions on what hardware I should purchase that gives me good bang for the buck for running lots of simultaneous test games? It would be a nice bonus if the machine was also good for online tournament play, but that is not a priority.

-Sam

jdart
Posts: 3924
Joined: Fri Mar 10, 2006 4:23 am
Location: http://www.arasanchess.org

Re: New computer suggestions please

Post by jdart » Tue Oct 17, 2017 2:57 pm

You can pick up a 16-core dual Xeon (2x Xeon e5-2670) on ebay for about $800. These are usually systems that were leased and are now being resold. The per-core performance is not stellar but is pretty decent. Most are sold with Windows but you can install Linux.

--Jon

CheckersGuy
Posts: 273
Joined: Wed Aug 24, 2016 7:49 pm

Re: New computer suggestions please

Post by CheckersGuy » Tue Oct 17, 2017 3:13 pm

Has anyone tried AMD's Threadripper yet ? Might be a good price for performance deal. 16 cores for about 1000$ which run at higher clocks than the xeon server chip

jdart
Posts: 3924
Joined: Fri Mar 10, 2006 4:23 am
Location: http://www.arasanchess.org

Re: New computer suggestions please

Post by jdart » Tue Oct 17, 2017 3:58 pm

It looks good but would be double the price of a used dual Xeon, once you add a mobo, memory, case, etc.

--Jon

BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 3:18 am

Re: New computer suggestions please

Post by BubbaTough » Tue Oct 17, 2017 7:43 pm

What kind of memory per core do others use for testing?

AlvaroBegue
Posts: 925
Joined: Tue Mar 09, 2010 2:46 pm
Location: New York
Full name: Álvaro Begué (RuyDos)

Re: New computer suggestions please

Post by AlvaroBegue » Tue Oct 17, 2017 9:28 pm

BubbaTough wrote:What kind of memory per core do others use for testing?
Not a lot. In the last computer I bought I have 8 cores and 16 GB of RAM.

Since I am going to be running very fast games (otherwise there is no hope of accumulating enough statistics), I don't need a lot of memory for hash. I usually run with 128 MB for hash per process, which only amounts to 2 GB total (128 MB/process * 2 processes/core * 8 cores = 2 GB).

AndrewGrant
Posts: 561
Joined: Tue Apr 19, 2016 4:08 am
Location: U.S.A
Full name: Andrew Grant
Contact:

Re: New computer suggestions please

Post by AndrewGrant » Tue Oct 17, 2017 9:39 pm

Just got my 1950x in the mail the other day. Waiting for the cooler to arrive before trying it out.

Plan is to abuse 31 threads (1 left to OS) to run tests...

AlvaroBegue
Posts: 925
Joined: Tue Mar 09, 2010 2:46 pm
Location: New York
Full name: Álvaro Begué (RuyDos)

Re: New computer suggestions please

Post by AlvaroBegue » Wed Oct 18, 2017 1:13 am

AndrewGrant wrote:Just got my 1950x in the mail the other day. Waiting for the cooler to arrive before trying it out.

Plan is to abuse 31 threads (1 left to OS) to run tests...
My impression is that hyper-threading doesn't work too well for chess, so I only use as many threads as I have cores (8 for Ryzen 7 1800X). But if you have evidence that what I am doing is suboptimal, I would like to hear about it.

BubbaTough
Posts: 1154
Joined: Fri Jun 23, 2006 3:18 am

Re: New computer suggestions please

Post by BubbaTough » Wed Oct 18, 2017 1:58 am

I know some people have reported issues, but on my old computer I used hyper threading while testing and it seemed to work OK.

-Sam

AndrewGrant
Posts: 561
Joined: Tue Apr 19, 2016 4:08 am
Location: U.S.A
Full name: Andrew Grant
Contact:

Re: New computer suggestions please

Post by AndrewGrant » Wed Oct 18, 2017 2:38 am

So I don't have a hyper threaded machine active at the moment, but you can test it for yourself. I use a quick script to determine time control scaling for my computers that are completing tests.

https://github.com/AndyGrant/EtherBench ... nchmark.py

Example for my engine (change the first number in the call to getBenchmark to change # of cores)

Code: Select all

Andy@POWERHOUSE ~/Desktop
$ python Benchmark.py Ethereal uci 13
Running benchmark for Ethereal
time is 8279.99997139ms
Average time is 8279.99997139ms

Andy@POWERHOUSE ~/Desktop
$ python Benchmark.py Ethereal uci 13
Running benchmark for EtherealR
unning benchmark for Ethereal
time is 8228.99961472ms
time is 8232.00106621ms
Average time is 8230.50034046ms

Andy@POWERHOUSE ~/Desktop
$ python Benchmark.py Ethereal uci 13
Running benchmark for Ethereal
Running benchmark for EtherealR
unning benchmark for Ethereal
time is 8243.99995804ms
time is 8251.9993782ms
time is 8254.9996376ms
Average time is 8250.33299128ms

Andy@POWERHOUSE ~/Desktop
$ python Benchmark.py Ethereal uci 13
Running benchmark for Ethereal
Running benchmark for Ethereal
Running benchmark for Ethereal
Running benchmark for Ethereal
time is 8523.00047874ms
time is 8577.00037956ms
time is 8632.999897ms
time is 8680.99927902ms
Average time is 8603.50000858ms
Small sample size here with just 1 run and only 4 cores, but in the 3core run you can see the benchmark times are VERY close. Different of 10ms in and 8 second run. When I throw all 4 cores at it, we see big variations in the run times.

Run this script for your engine at a few different number of cores, and see what the variances are between 7 cores, 8 cores, 14cores, 15 cores, and 16 cores. I would not mind seeing your results if you do this.

If you do try this, and on a Windows box, name your exe yourengine.exe, and when you run the program pass the argument yourengine, not yourengine.exe

I know some fishtest workers throw N-1 hyperthreaded cores, but I would imagine giving a whole core to the OS, not just 1 thread, is optimal. Hence why I asked about testing at 14 vs 15 threads.

Post Reply