A complete 2000 lines of code engine
Moderators: hgm, Rebel, chrisw
-
- Posts: 1871
- Joined: Sat Nov 25, 2017 2:28 pm
- Location: France
Re: A complete 2000 lines of code engine
I will upload binaries soon, last week it has evolved quite often so I was too lazy to make "real" releases ... just changed the version number.
-
- Posts: 919
- Joined: Tue Nov 24, 2015 9:11 pm
- Location: upstate
Re: A complete 2000 lines of code engine
Here are the bins for v0.6:
minic-06-tp.zip (Mediafire)
minic-06-tp.zip (Filedropper)
Static MinGW builds, 32- and 64-bit. I don't have a 32-bit OS to test on at the moment but the "32-old" build one should run on anything as old as a Pentium III.
I just realized that I'd forgotten to strip symbols on my previous releases, which resulted in the files being unnecessarily large. This has been been corrected for this release.
minic-06-tp.zip (Mediafire)
minic-06-tp.zip (Filedropper)
Static MinGW builds, 32- and 64-bit. I don't have a 32-bit OS to test on at the moment but the "32-old" build one should run on anything as old as a Pentium III.
I just realized that I'd forgotten to strip symbols on my previous releases, which resulted in the files being unnecessarily large. This has been been corrected for this release.
Tirsa Poppins
CCRL
CCRL
-
- Posts: 160
- Joined: Tue Jan 23, 2018 10:18 am
- Location: Rotterdam
- Full name: Ronald Friederich
Re: A complete 2000 lines of code engine
I saw you added some code to try the hash move first, some remarks to use this part probably even more:
- The hash entry is read with a depth, if the found entry has a lower depth then the current depth no entry is returned. You will get much more hash moves if you always return the hash entry, no matter the depth. You can not use the entry to return the hash score (so you have to check the depth for that) but you still can use the stored hash move and try that first.
- It will also help with IID 2 times, because first of all at this moment you will never get a hash entry / hash move after the IID search. IID is searched with depth/2 after which the result is read from hash with the check for "depth" And by always returning the entry you will also execute much less IID searches.
- I would try to integrate the hash move in the regular move loop(basic staged loop)
- Better not use a killer slot for the hash, the hash move already has it's own slot, the "hash move" slot and you might push out a valuable killer move with it
- The hash entry is read with a depth, if the found entry has a lower depth then the current depth no entry is returned. You will get much more hash moves if you always return the hash entry, no matter the depth. You can not use the entry to return the hash score (so you have to check the depth for that) but you still can use the stored hash move and try that first.
- It will also help with IID 2 times, because first of all at this moment you will never get a hash entry / hash move after the IID search. IID is searched with depth/2 after which the result is read from hash with the check for "depth" And by always returning the entry you will also execute much less IID searches.
- I would try to integrate the hash move in the regular move loop(basic staged loop)
- Better not use a killer slot for the hash, the hash move already has it's own slot, the "hash move" slot and you might push out a valuable killer move with it
-
- Posts: 1871
- Joined: Sat Nov 25, 2017 2:28 pm
- Location: France
Re: A complete 2000 lines of code engine
Thanks ! I'll try that. I also added SEE and LMP last night with a great elo boost.
Best regards
Best regards
-
- Posts: 4606
- Joined: Wed Oct 01, 2008 6:33 am
- Location: Regensburg, Germany
- Full name: Guenther Simon
Re: A complete 2000 lines of code engine
I miss a 64-oldtpoppins wrote: ↑Fri Oct 26, 2018 7:00 pm Here are the bins for v0.6:
minic-06-tp.zip (Mediafire)
minic-06-tp.zip (Filedropper)
Static MinGW builds, 32- and 64-bit. I don't have a 32-bit OS to test on at the moment but the "32-old" build one should run on anything as old as a Pentium III.
I just realized that I'd forgotten to strip symbols on my previous releases, which resulted in the files being unnecessarily large. This has been been corrected for this release.
-
- Posts: 919
- Joined: Tue Nov 24, 2015 9:11 pm
- Location: upstate
Re: A complete 2000 lines of code engine
I should have remembered. Graham also has a non-POPCNT box, although he's unlikely to run anything under 2000 Elo, which has lately been my domain.
minic-06-64-old-tp.zip
I expect that your h/w supports SSE2 at least, let me know if this won't run.
minic-06-64-old-tp.zip
I expect that your h/w supports SSE2 at least, let me know if this won't run.
Tirsa Poppins
CCRL
CCRL
-
- Posts: 1871
- Joined: Sat Nov 25, 2017 2:28 pm
- Location: France
Re: A complete 2000 lines of code engine
Minic 0.8 is available with binaries for linux (64bits, sse4.2, stripped) and windows (x86_64-w64-mingw32-g++ and strip)
You'll find both inside "Dist" directory on the github repo.
Last additions : SEE, LMP, bug fixes thanks to Ronald
Now probably >2000elo
and still under 2000sloc .
You'll find both inside "Dist" directory on the github repo.
Last additions : SEE, LMP, bug fixes thanks to Ronald
Now probably >2000elo
Code: Select all
Rank Name Elo +/- Games Score Draws
1 minic 148 48 129 70.2% 39.5%
2 fairymax 41 51 128 55.9% 28.9%
3 tscp -200 61 129 24.0% 20.2%
-
- Posts: 1142
- Joined: Thu Dec 28, 2017 4:06 pm
- Location: Argentina
Re: A complete 2000 lines of code engine
Nice progress!
Follow my tournament and some Leela gauntlets live at http://twitch.tv/ccls
-
- Posts: 1871
- Joined: Sat Nov 25, 2017 2:28 pm
- Location: France
Re: A complete 2000 lines of code engine
Thanks ! great boost from SEE and using PST in move sorting.
-
- Posts: 919
- Joined: Tue Nov 24, 2015 9:11 pm
- Location: upstate
Re: A complete 2000 lines of code engine
Last edited by tpoppins on Mon Oct 29, 2018 6:46 pm, edited 2 times in total.
Tirsa Poppins
CCRL
CCRL