Author: Drexel,Michael
Date: 01:17:43 01/01/03
Go up one level in this thread
On January 01, 2003 at 00:55:21, Robert Hyatt wrote:
>On December 31, 2002 at 21:00:43, Mike Byrne wrote:
>
>
>If you have the source for that, or if anyone has executables that they
>downloaded from my ftp site, would you see if you can upload them? You
>should be able to log in anonymously, and immediately cd to /incoming and
>put files there. You will not be able to see them nor download them until
>I move them to the right place, but _any_ "missing" files from the ftp machine
>would be greatly appreciated, particularly a recent read.me or anything else
>that has been lost...
>
>Bob
>
>
Sorry, I have only readme of v18.10 and old FAQ:
Crafty version 18.10
-----------------------------------------------------------------------------
What's new?
Mainly some evaluation tweaks. main.c has comments describing the
changes made for each new version.
-----------------------------------------------------------------------------
The Crafty mailing list
Specific questions can be directed to majordomo@cis.uab.edu, and in the
body of this email, put the text "subscribe crafty-list" (without the
quotes) which will subscribe to the crafty-list@cis.uab.edu mailing list,
which covers lots of questions about the current goings-on in crafty, from
problems, to installation questions, to future development goals.
-----------------------------------------------------------------------------
How does Crafty work?
Download the file "crafty.doc" which is a complete description of all of
the commands for Crafty along with examples where needed. This covers
*every* command in the current version of Crafty.
-----------------------------------------------------------------------------
executable choices.
wcrafty-*.exe is the executable you need to run crafty under
windows, or under windows in a dos box.
if you want tablebase support the standard executables provide this,
but you must add egtb to the crafty.rc/.craftyrc file.
The Macintosh port of Crafty is available in the macintosh directory.
-----------------------------------------------------------------------------
book database choices.
All of these book choices are in the common directory. Each book has its
own sub-directory so that you can cd into the appropriate directory and then
"mget *" to get everything you need.
large.zip, medium.zip and small.zip are the raw input files to make the three
different sized books. large produces a 60mb opening database with 100K GM
games; medium produces a 30MB database, and small will produce a 1MB database.
On my sparc-20, large takes about 7 minutes to build, medium around 3 minutes,
and small is under minute. Note that you will need at least double this space
to create the files, as temporary stuff is written to disk along the way, and
then deleted later.
There are two new files available, "rock.pgn" and "wall.pgn". These files
are still .gz compressed archives, but because they are so large (rock.pgn
has over 660,000 games in it) they are broken into pieces. These pieces
must be combined before they are unzipped. In windows, use a dos box and
enter this: copy rock.01+rock.02+...+rock.10 rock.gz. Then ungzip rock.gz
and you should be set. "wall" is about one-third the size of "rock" if you
want something smaller.
There is a newer book, called 'enormous' that can be downloaded in
pieces (this from Dan's FTP site). The pieces are a,b,c,d,e and
correspond to ECO classifications. Altogether this is roughly one
gigabyte after it unzipped, which can make a truly huge book if you
are not careful.
Note that small.txt was made from opening textbooks, and, as a result,
does not have the PGN "Result" tag. This causes some book random modes
to not work correctly because crafty won't play an opening that has no
wins to its credit. Either don't use small for the present, or else make
your own from a select group of pgn games, maybe the first 5000 games from
medium.zip as an example. (for more specific info, see crafty.doc)
crafty
book create <filename> 60 3
quit
<filename> should be replaced by what you get when you unzip the book file
of your choice.
start.zip contains a small file that is used to create books.bin.
books.bin is created as follows:
crafty
books create start.pgn 60
quit
this file contains suggested openings that fit Crafty's "open" style of
play better. You can edit/modify this at will, and it takes a fraction of
a second to re-build after modification, so the big book file can be left
alone.
Note that the "60" is arbitrary, and is used to cut book lines off at roughly
60 plies. you "can" say 500, so that the entire games will be stored, but you
need even more disk space. you can also reduce this number to 30 (15 moves for
each side to conserve disk space as needed, since the book will contain far
fewer positions.
Note that you can also look in the current directory (v15 at present) and
you will find a book.bin and books.bin file already built from rock.pgn
and ready to use. These are under 10mb together and are ready to use.
You only have to put them in the same directory with crafty and you will
be set to play.
-----------------------------------------------------------------------------
crafty.zip is a zip file that contains a complete set of source and
header files for crafty and a Linux makefile that you will have to tweak for
your machine. ditto for crafty.tar.gz just using gzip and tar instead for
those that don't have plain zip.
Note that you probably need only change the #define LINUX to #define SUN
for example, and it will self-configure for SUN. Any of the machines in
the comments can be done like this. others may take some playing, but the
options are commented to help.
If you are using gcc/Linux, the included Makefile should fit your needs
perfectly, since linux uses gcc. NOTICE: if you are running linux, and
have a gcc earlier than 2.6.3, crafty probably will compile cleanly but
won't run. Early versions seem to have a defective implementation of the
long long data type, which breaks crafty completely. Note that there is
a linux version of crafty (crafty.linux) here compiled with gcc-i 2.6.3, if
you have this problem. You will get an error when you start it, about the
wrong version of ld.so.n, but it seems to run correctly. Note also, that
I use gcc-i2.6.3, the pentium-specific version of gcc that is kept on
most linux archive sites in the development directory. If you are
not using this, you will have to modify CFLAGS to get rid of the pentium
optimization options and simply use -On where n=the level that produces
the fastest code (you'll have to try several to find the best usually.)
-----------------------------------------------------------------------------
It is highly recommended that you use the latest version of Xboard
or Winboard from Tim Mann.
http://www.research.digital.com/SRC/personal/Tim_Mann/chess.html
To use Crafty with xboard, you do the following:
xboard -fcp crafty
This will let you play using the mouse, etc.
To set the time control, try this:
xboard -fcp crafty -tc nm -mps mvs
replace nm by the number of minutes in the time control you'd like to
play under, mvs should be the number of moves in a time control. Blitz
might be something like -tc 5 -mvs 60 to play 60 moves in 5 minutes, then 60
more moves in 5 minutes, etc.
to use it to play on ics/fics/etc, you can
xboard -ics -zp -fcp "crafty ..." and create a .icsrc file, first line is
login id, second line is password, remaining lines are simple force-fed to
the server to set things like your formula, etc.
Frequently asked questions (FAQ) on Crafty.
Last modified on 1996.06.17
Send corrections/additions/comments to:
Anil Mungal (amungal@vnet.ibm.com)
-----
[1] What is Crafty?
[1.1] What platforms can Crafty run on?
[1.2] What is Crafty's rating/strength?
[1.3] Where can I get Crafty?
[1.4] How do I build Crafty?
[1.5] How do I build Crafty's Book?
[1.6] How can I maximize Crafty's performance?
[1.7] What are "tablebases" and how do I use 'em?
[1.8] How can I get a graphical interface with Crafty?
[1.9] How can I use both Crafty and XBoard to analyze positions/games?
-----
[1] What is Crafty?
Crafty is a chess program written by Bob Hyatt (hyatt@cis.uab.edu).
It is modeled after Cray Blitz (also written by Bob).
Crafty has the following features:
- written in C
- can be compiled with the GNU C compiler on various platforms
- has a customizable opening book
- supports tablebases (Steven Edward's endgame database)
- text interface
Crafty is a work in progress, and is frequently updated/enhanced by Bob.
-----
[1.1] What platforms can Crafty run on?
The decision to write Crafty so that it compiles with the GNU C compiler
allows it to run on many platforms without the hassle of porting.
(Thanks Bob)
Currently Crafty runs on:
- DEC alpha running OSF/1-Digital Unix
- any Cray-1 compatible architecture including XMP, YMP, C90, etc.
- HP workstation running HP_UX operating system (unix)
- PC running DOS, Windows, or OS/2 Warp, using DJGPP port of gcc to compile
- RS/6000 running AIX (unix)
- Sun SparcStation running Solaris (SYSV/R4) Unix
- Sun SparcStation running SunOX (BSD) Unix
- Any architecture running the Linux operating system
- Microsoft Win95/WinNT, when compiled with Microsoft Visual C++
- Macintosh and other MacOS-compatible computers
Storage requirements range from 1Mb (small book and no tablebase) to 60Mb
(largest book and no tablebases) to 300Mb (largest book and all tablebases).
-----
[1.2] What is Crafty's rating/strength?
Crafty's strength is directly dependant upon processor speed, hash table size,
size and content of it's opening book, and it's use of an endgame database.
Versions of Crafty running on ICC and FICS have ratings around 2500-2700.
This does not necessarily mean that Crafty will perform at this level
under tournament conditions.
Crafty's computational power in nodes/sec has been measured as follows:
Platform Nodes/sec
-------- ---------
DEC alpha running OSF/1-Digital Unix 75,000
Cray-1 XMP, YMP, C90, etc. ??????
HP workstation running HP_UX operating system 35,000
80X86 architecture running LINUX (unix) 30,000 (P5/133)
Pentium 100 PC 24,000
Pentium Pro 200 PC 75,000
RS/6000 running AIX (unix) ??????
Sun SparcStation running Solaris (SYSV/R4) Unix 30,000 (Sparc-20)
According to the Louget Chess test, Crafty has been given the following ratings:
Platform Hash table Louget rating (comparable to FIDE rating)
======== ========== =============
Crafty v9.21 PP200 56 MB 2395
Crafty v9.21 PP150 56 MB 2365
Crafty v9.21 P133 14 MB 2305
Crafty v9.21 P90 7 MB 2235
Where the platforms were:
PP200 = Pentium Pro 200 Mhz, 16+256KB internal caches, Aurora Intel motherboard
PP150 = Pentium Pro 150 Mhz, 16+256KB internal caches, Asustek motherboard
P133 = Pentium 133 Mhz, 256 KB pipeline burst synchronous L2 cache
P90 = Pentium 90 Mhz, 256 KB asynchronous cache (Intel Zappa, Triton Chipset)
For more info on the Louget Chess test, you can contact:
Frederic Louguet (louguet@worldnet.net)
----
[1.3] Where can I get Crafty?
You can get Crafty by anonymous FTP at: ftp://news.cis.uab.edu/pub/hyatt
Here is a description of the files that you will probably see.
read.me : Read me file that Bob updates
crafty.exe : PC DOS executable. (needs DPMI)
craftyt.exe : PC DOS executable with tablebases support. (needs DPMI)
crafty.faq : this file
crafty.linux : Linux executable
crafty.sun : Sun Sparc-20 executable
crafty.zip : Crafty source code
crafty.tar.Z : Crafty source code
crafty.tar.gz : Crafty source code
cwsdpmi.exe : DPMI provider
large1.zip : Large PGN file used to create an opening book (1/4)
large2.zip : Large PGN file used to create an opening book (2/4)
large3.zip : Large PGN file used to create an opening book (3/4)
large4.zip : Large PGN file used to create an opening book (4/4)
medium.zip : Medium PGN file used to create an opening book
small.zip : Small PGN file used to create an opening book
start.zip : Tiny PGN file used to create an opening book
probs.Z : A test suite of chess problems
wcrafty.exe : Windows executable.
wcraftyt.exe : Windows executable with tablebases support.
The Macintosh port of Crafty is available from <ftp://ftp.limunltd.com/crafty/>.
The Mac versions are supported from <http://www.limunltd.com/crafty/>.
-----
[1.4] How do I build Crafty?
If you wish to build Crafty for yourself, you need a copy of the source
and the GNU C compiler (or the djgpp compiler for DOS) to compile.
a) Unzip/uncompress the source code.
b) Follow the instructions in the Makefile. You will probably have to:
- comment/uncomment sections based on your hardware platform.
- edit the directory paths.
- add whatever optimization flags that you want.
c) type make
-----
[1.5] How do I build Crafty's Book?
You need an executable version of Crafty and a PGN file to build it's book.
Choose between large (unzip large1.zip, large2.zip, large3.zip, large4.zip
and append them into one file), medium (unzip medium.zip), or small.zip
(unzip small.zip).
Large produces a 90Mb-60Mb opening database with 100K GM games; medium produces
a 30Mb database, and small will produce a 1Mb database. Note that you will
need at least double this space to create the files, since temporary files
are written to disk, and then later deleted. Use the following commands to
build the book:
crafty
book create <filename> 60
quit
<filename> should be replaced by the PGN filename that is created when you unzip
the book file of your choice.
Start.zip contains a small file that is used to create books.bin.
books.bin is created as follows:
crafty
books create start.pgn 60
quit
This file contains suggested openings that fit Crafty's "open" style of
play better. You can edit/modify this at will, and it takes a fraction of
a second to re-build after modification, so the big book file can be left
alone.
Note that the "60" is arbitrary, and is used to cut book lines off at roughly
60 plies. You "can" say 500, so that the entire games will be stored,
but you need even more disk space. You can also reduce this number to 30
(15 moves for each side) to conserve disk space as needed, since the book
will contain far fewer positions.
-----
[1.6] How can I maximize Crafty's performance?
a) Compile with different combinations of the following options:
-DCOMPACT_ATTACKS, and -DUSE_SPLIT_SHIFTS. Then check the performance
of Crafty. The best test is to simply let it search to a fixed depth
(say sd=8 for example) from the opening position and pick the compiler
/optimizer options that minimize this time. Pick SD=n so that the search
takes at least 2 minutes.
b) Increase the size of hash and hashp based on the following
observations:
- hash is more important that hashp. the only guidance is that
you don't want to make hash so large things slow down due to
excessive paging or swapping.
- there's a compile option -DFAST. if you use this, crafty won't
report any hashing statistics, making it harder to decide when
to make things bigger.
-----
[1.7] What are tablebases and how do I use 'em?
tablebases are endgame databases distributed freely by Steven Edwards
(sje@mv.mv.com). If you are downloading an executable, for dos you'll
want craftyt.exe, and for Win95/WinNT, you'll want wcraftyt.exe. If
you compile your own, -DTABLEBASES will do the trick.
Once you have an executable that expects tablebases, you typically
put them in a sub-directory TB that should be in the directory where
you normally run crafty. You can change this by editing the Makefile
and changing TBDIR to point to where you want 'em.
Next, you need the tablebase files. These are available from ftp.onenet.net
and other ftp sites. The files are named like this: KBNK.tbb and KBNK.tbw
for the KBN vs K tablebases. On some ftp machines the "." is replaced by a
"_". after downloading them, rename them to replace the _ by . or crafty
will not recognize them. These files are also available from the primary
Crafty site ftp.cis.uab/edu/pub/hyatt/TB.
The complete set takes about 260Mb, for all 4-man endings. We are working
on new ones for frequently encountered endings like KRP vs KR. These will
be made available as they are completed. There are 10 5-piece files now
available, KRPKR, KRNKR, KRBKR, KRRKR and KQRKR, where each has a .tbb
and .tbw pair. These files require about 500mb zipped, but will expand
to about 2.3 gigabytes when unzipped. So be prepared for a large disk
space requirement.
Note that these databases are "mate in n" type databases, so you'll see
some interesting mate announcements from Crafty, with Mate in 30 a very
common occurrence. :)
-----
[1.8] How can I get a graphical interface with Crafty?
On Unix systems, you can use XBoard with Crafty. On Windows systems, you
can use WinBoard. For more information on XBoard and WinBoard, check out:
http://www.research.digital.com/SRC/personal/Tim_Mann/chess.html
-----
[1.9] How can I use both Crafty and XBoard to analyze positions/games?
It is now possible to use XBoard and Crafty together to perform
interactive analysis of positions and stored (PGN, etc.) games.
To do this, you need a recent version of Crafty (12.3 or up) and
xboard/winboard version 3.6.1 or later.
For instructions, see the winboard/xboard faq, which explains how to use
this powerful and interesting facility.
-----
** End of Crafty FAQ **
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.