Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: computer chess tidbits: arena, crafty, intel compiler and pocket pc

Author: Mike Byrne

Date: 21:21:05 05/20/02

Go up one level in this thread


On May 20, 2002 at 12:01:32, Robert Hyatt wrote:

>On May 19, 2002 at 18:05:36, Mike Byrne wrote:
>
>>I have been away from computer chess for a while and was glad there is still a
>>large interest in computerchess.  Many thanks to those who wrote the "Arena"
>>software --  it's nice work and has room for many more improvements.
>>
>>It is good to see Crafty is  alive and well - the latest version 18.14 is very
>>solid.  I am able to get 1,000,000 nodes per second using MVC++ 6.0 and the
>>Intel "plug in" compiler.  However my intel license is the of the demo variety
>>and will expire in 30 days or so.   The intel compiler does have a nifty option
>>that uses the
>>a Profile-guided Optimizations - here's a brief overview:
>
>
>You overlooked a _key_ issue.  If you are using the compiler non-commercially,
>then you can get a permanent license at no cost.  I am using it on my Linux box
>in fact...
>
>They only charge if you are using it to develop/distribute commercial software.
>

Thanks for the info, Bob - I saw your note and sent an email to Intel write away
- it would be nice if they send me a non expiring license.

Back to tinkering with Crafty - NOT sure if it plays better after my "changes" -
but it sure is fun!

Rignt now playing a 100 game blitz match vs YACE at TC 2 3.  After 21 games -
modified Crafty is up 12.5-8.5.




>>
>>"
>>Profile-guided optimizations (PGO) tell the compiler which areas of an
>>application are most frequently executed. By knowing these areas, the compiler
>>is able to be more selective in optimizing the application. For example, the use
>>of PGO often enables the compiler to make better decisions about function
>>inlining, thereby increasing the effectiveness of interprocedural optimizations.
>>
>>Instrumented Program
>>Profile-guided optimization creates an instrumented program from your source
>>code and special code from the compiler. Each time this instrumented code is
>>executed, the instrumented program generates a dynamic information file. When
>>you compile a second time, the dynamic information files are merged into a
>>summary file. Using the profile information in this file, the compiler attempts
>>to optimize the execution of the most heavily travelled paths in the program.
>>
>>Unlike other optimizations, such as those used strictly for size or speed, the
>>results of IPO and PGO vary. This is due to each program having a different
>>profile and different opportunities for optimizations. The guidelines provided
>>here help you determine if you can benefit by using IPO and PGO.
>>
>>In this version of the IntelĀ® C++ Compiler, PGO is improved in the following
>>ways:
>>
>>Register allocation uses the profile information to optimize the location of
>>spill code.
>>
>>For indirect function calls, branch prediction is improved by identifying the
>>most likely targets. With the PentiumĀ® 4 processor's longer pipeline, improved
>>branch prediction translates to higher performance gains.
>>
>>The compiler detects and does not vectorize loops that execute only a small
>>number of iterations, reducing the run time overhead that vectorization might
>>otherwise add.
>>"
>>
>>
>>My fastest compiler options using the Intel were as follows:
>>
>>CFLAGS   =  /G7 /Gr /O3 /Ob2 /Ot /Oi /Oa /GA /Zm200 /QxW /Qip  /Qprof_gen
>>
>>G7 & QxW is for Pentium 4, /03 is an aggressive use of optimazitions,
>>
>>You must then run the program and play a few games then repeat the compliation
>>process using
>>
>>CFLAGS   =  /G7 /Gr /O3 /Ob2 /Ot /Oi /Oa /GA /Zm200 /QxW /Qip  /Qprof_use
>>
>>I gained roughly 10% more nodes with the Intel compiler over MSVC 6- although I
>>have heard Visual.net is also faster than MSVC 6.
>>
>>There are now multiple hundreds of free chess programsthat run the winboard or
>>UCI protocols - that is also very good for computer chessn enthusiasts.
>>
>>Later this year - Pocket Pc's will be running 400 Mhz CPU's - that will make for
>>very a solid portable chess machine.
>>
>>Best wishes to all.
>>
>>Mike Byrne



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.