Search found 164 matches

by dragontamer5788
Wed Dec 11, 2019 5:53 pm
Forum: Computer Chess Club: General Topics
Topic: The Mac Pro is back - finally
Replies: 17
Views: 2539

Re: The Mac Pro is back - finally

A major advantage to the Mac Pro is that its consistently a Skylake-X CPU + AMD Vega GPU. Anyone writing programs for a Mac Pro can very specifically tailor their application for that combination. In particular, we know that SkylakeX has PDEP, PEXT, and AVX512 implemented. AMD Vega GPUs have differe...
by dragontamer5788
Wed Dec 11, 2019 4:23 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PEXT/PDEP are even slower than you think on Zen
Replies: 12
Views: 647

Re: PEXT/PDEP are even slower than you think on Zen

At the moment I do a second calculation to get passed-pawn locations that I need to calculate their interactions with pieces Passed Pawn actually seems like an ideal candidate for pdep. Pull all the bits where pawns could block. Ex: White has pawn on E4. Check for black pawns on D5, E5, F5, D6, E6 ...
by dragontamer5788
Wed Dec 11, 2019 4:23 am
Forum: Computer Chess Club: General Topics
Topic: BootChess (minimal chess engine)
Replies: 38
Views: 6643

Re: BootChess (minimal chess engine)

mar wrote:
Fri Jan 30, 2015 12:29 am
Actually the program could always resign, making it even smaller (17 bytes):

Code: Select all

org 100h
mov ah, 9
mov dx, msg
int 21h
retn

msg db 'I resign$'
But yours is clearly stronger.
Mine is even shorter. Mine will wait out the clock, losing by time-out. The code is as follows:

Code: Select all

jmp $
by dragontamer5788
Tue Dec 10, 2019 9:09 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PEXT/PDEP are even slower than you think on Zen
Replies: 12
Views: 647

Re: PEXT/PDEP are even slower than you think on Zen

At the moment I do a second calculation to get passed-pawn locations that I need to calculate their interactions with pieces Passed Pawn actually seems like an ideal candidate for pdep. Pull all the bits where pawns could block. Ex: White has pawn on E4. Check for black pawns on D5, E5, F5, D6, E6 ...
by dragontamer5788
Tue Dec 10, 2019 7:21 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PEXT/PDEP are even slower than you think on Zen
Replies: 12
Views: 647

Re: PEXT/PDEP are even slower than you think on Zen

Another consideration is noise, the 180W thermals from the 10980XE can be cooled down very quietly with a Noctua NH-D15, I have two systems with these running and I can hardly hear that they are turned on. For a TR3-3970X you will start at 280W (probably even more), a 64 core TR3 will be like 500W,...
by dragontamer5788
Tue Dec 10, 2019 4:46 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PEXT/PDEP are even slower than you think on Zen
Replies: 12
Views: 647

Re: PEXT/PDEP are even slower than you think on Zen

Pext/Pdep is not only very handy for sliding move generation, in the evaluation function you can also make good use of it, for instance to look at pawn configurations. Could you elaborate on that? Most of the pawn-configuration ideas (backwards pawn, isolated pawn, etc. etc.) seem like simple masks...
by dragontamer5788
Tue Dec 10, 2019 4:45 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Misprediction-poor looping
Replies: 9
Views: 359

Re: Misprediction-poor looping

GCC still needs the #pragma omp simd to see that this loop is vectorizable for some reason why? the code you posted is auto-vectorized by gcc regardless of any pragma, clang even unrolls the loop as well as msc Interesting. I stand corrected. I tested it earlier, but maybe I herp-derp'd and messed ...
by dragontamer5788
Tue Dec 10, 2019 3:05 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Misprediction-poor looping
Replies: 9
Views: 359

Re: Misprediction-poor looping

Yes, but only if you assume that Action() is trivial without side effects and the compiler can see its guts. Indeed, I used the function calls only as a means to write compact pseudo-code; they were supposed to be simple code sections. BTW, all calls to Action are done in the same order as they wou...
by dragontamer5788
Mon Dec 09, 2019 11:42 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: PEXT/PDEP are even slower than you think on Zen
Replies: 12
Views: 647

Re: PEXT/PDEP are even slower than you think on Zen

Since I don't have access to a PEXT / PDEP machine, I figure I might as well publish my basic idea here, and maybe someone else will want to run with it. The basic idea is that sliding-piece attacks , that is rook, queen, and bishop, may be optimized even further than magic-bitboards, using PEXT / P...
by dragontamer5788
Mon Dec 09, 2019 10:25 pm
Forum: Computer Chess Club: Programming and Technical Discussions
Topic: Misprediction-poor looping
Replies: 9
Views: 359

Re: Misprediction-poor looping

Comment: For some reason, I couldn't grok your code in the first pass. My brain understands the following more: for(i=0; i<MAX; i++) { todo[n] = i; n += (Condition(i) ? 1 : 0); } Condition(i) ? 1 : 0 will probably compile into a cmov instruction, so you won't have any branches either. In fact, you p...