Geschrieben von:/Posted by: Bryan Hofmann at 15 April 2004 14:05:46:
Als Antwort auf:/In reply to: More ways of building Crafty using free tools geschrieben von:/posted by: Paul Hunter at 15 April 2004 00:08:36:
I now have added ways of building crafty using Borland C/C++ and Watcom C/C++ (OpenWatcom).
http://www.geocities.com/alternativecra ... landc.htmlhttp://www.geocities.com/alternativecra ... atcom.htmlThe pages give links to where you can get the free compilers.
Both require that a few files be edited for some minor adjustments. Part of this is that both have problems with the egtb source. Even MS-VC has issues with the egtb code, but you can give it a command-line option to use a bigger heap.
The Watcom-built binary works in console mode, but does not work in Winboard yet. I'm debugging that now.
I have been able to build crafty with LCC and DigitalMars C, but the resulting LCC binary crashes and the resulting DigitalMars binary outputs wrongly.
So there you go. Free crafty source. Free build tools. What more can one ask for.
For your MingW you might consider the use of the machine independent options I used below that will speed up crafty even more. The below results were attained on a AMD XP 3000+. As you can see the 2 stage profile guided optimze will give you the fastest result. I have added the "prof" file at the end that I used.
--------------------
gcc -c -DNT_i386 -O3 crafty.c
gcc -c -DNT_i386 -O3 egtb.cpp
gcc -o crafty.exe *.o
White(1): bench
Running benchmark. . .
......
Total nodes: 94189491
Raw nodes per second: 914461
Total elapsed time: 103
SMP time-to-ply measurement: 6.213592
--------------------
gcc -c -DNT_i386 -pipe -fomit-frame-pointer -fforce-mem -fno-gcse -O3 crafty.c
gcc -c -DNT_i386 -pipe -fomit-frame-pointer -fforce-mem -fno-gcse -O3 egtb.cpp
gcc -o crafty.exe *.o
Crafty v19.12
White(1): bench
Running benchmark. . .
......
Total nodes: 94189491
Raw nodes per second: 991468
Total elapsed time: 95
SMP time-to-ply measurement: 6.736842
----------------------
gcc -c -DNT_i386 -pipe -fomit-frame-pointer -fforce-mem -fno-gcse -O3 -fprofile-arcs crafty.c
gcc -c -DNT_i386 -pipe -fomit-frame-pointer -fforce-mem -fno-gcse -O3 -fprofile-arcs egtb.cpp
gcc -o crafty.exe *.o
crafty < prof
del crafty.exe
del *.o
gcc -c -DNT_i386 -pipe -fomit-frame-pointer -fforce-mem -fno-gcse -O3 -fbranch-probabilities crafty.c
gcc -c -DNT_i386 -pipe -fomit-frame-pointer -fforce-mem -fno-gcse -O3 -fbranch-probabilities egtb.cpp
gcc -o crafty.exe *.o
Crafty v19.12
White(1): bench
Running benchmark. . .
......
Total nodes: 94189491
Raw nodes per second: 1046549
Total elapsed time: 90
SMP time-to-ply measurement: 7.111111
----begin prof file------------
st=10
ponder=off
display nomoves
setboard rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq
move
book off
setboard rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq
move
setboard 1k1r4/pp1b1R2/3q2pp/4p3/2B5/4Q3/PPP2B2/2K5 b
move
setboard 3r1k2/4npp1/1ppr3p/p6P/P2PPPP1/1NR5/5K2/2R5 w
move
setboard 2q1rr1k/3bbnnp/p2p1pp1/2pPp3/PpP1P1P1/1P2BNNP/2BQ1PRK/7R b
move
setboard rnbqkb1r/p3pppp/1p6/2ppP3/3N4/2P5/PPP1QPPP/R1B1KB1R w KQkq
move
setboard r1b2rk1/2q1b1pp/p2ppn2/1p6/3QP3/1BN1B3/PPP3PP/R4RK1 w
move
setboard 2r3k1/pppR1pp1/4p3/4P1P1/5P2/1P4K1/P1P5/8 w
move
setboard 1nk1r1r1/pp2n1pp/4p3/q2pPp1N/b1pP1P2/B1P2R2/2P1B1PP/R2Q2K1 w
move
setboard 4b3/p3kp2/6p1/3pP2p/2pP1P2/4K1P1/P3N2P/8 w
move
setboard 2kr1bnr/pbpq4/2n1pp2/3p3p/3P1P1B/2N2N1Q/PPP3PP/2KR1B1R w
move
setboard 3rr1k1/pp3pp1/1qn2np1/8/3p4/PP1R1P2/2P1NQPP/R1B3K1 b
move
setboard 2r1nrk1/p2q1ppp/bp1p4/n1pPp3/P1P1P3/2PBB1N1/4QPPP/R4RK1 w
move
setboard r3r1k1/ppqb1ppp/8/4p1NQ/8/2P5/PP3PPP/R3R1K1 b
move
setboard r2q1rk1/4bppp/p2p4/2pP4/3pP3/3Q4/PP1B1PPP/R3R1K1 w
move
setboard rnb2r1k/pp2p2p/2pp2p1/q2P1p2/8/1Pb2NP1/PB2PPBP/R2Q1RK1 w
move
setboard 2r3k1/1p2q1pp/2b1pr2/p1pp4/6Q1/1P1PP1R1/P1PN2PP/5RK1 w
move
setboard r1bqkb1r/4npp1/p1p4p/1p1pP1B1/8/1B6/PPPN1PPP/R2Q1RK1 w kq
move
setboard r2q1rk1/1ppnbppp/p2p1nb1/3Pp3/2P1P1P1/2N2N1P/PPB1QP2/R1B2RK1 b
move
setboard r1bq1rk1/pp2ppbp/2np2p1/2n5/P3PP2/N1P2N2/1PB3PP/R1B1QRK1 b
move
setboard 3rr3/2pq2pk/p2p1pnp/8/2QBPP2/1P6/P5PP/4RRK1 b
move
setboard r4k2/pb2bp1r/1p1qp2p/3pNp2/3P1P2/2N3P1/PPP1Q2P/2KRR3 w
move
setboard 3rn2k/ppb2rpp/2ppqp2/5N2/2P1P3/1P5Q/PB3PPP/3RR1K1 w
move
setboard 2r2rk1/1bqnbpp1/1p1ppn1p/pP6/N1P1P3/P2B1N1P/1B2QPP1/R2R2K1 b
move
setboard r1bqk2r/pp2bppp/2p5/3pP3/P2Q1P2/2N1B3/1PP3PP/R4RK1 b kq
move
setboard r2qnrnk/p2b2b1/1p1p2pp/2pPpp2/1PP1P3/PRNBB3/3QNPPP/5RK1 w
move
setboard /k/3p/p2P1p/P2P1P///K/ w
move
setboard /k/rnn////5RBB/K/ w
move
quit
-----end prof file-----------