
These DOS/Win executables are  provided  as  a  courtesy.  I make no
guarantees of any sort about them.  Use them at your  own  risk.   I
accept no responsibility for any damage that may occur.  If you wish
to  compile  these  yourself, the specific options I used to compile
them are described in the file descriptions below.

These executables are 32 bit  DOS  executables.  They require a DPMI
extender.  Windows, OS/2 and  Linux  do  provide  limited  extenders
built into the OS.

DOS  does  not.   You will need to use a seperate extender program /
loader to run these pi programs.  One common extender is CWSDPMI, by
C. Sandmann.   This  is  found  in  many  locations, including DJGPP
sites.  The C/C++ User's Group also has it on their CUG 496 volume.

Although I've compiled them with the compiler I  normally  use,  you
may  get  better  results with a version compiled with optimizations
for your particular  processor.   Also,  other,  newer compilers may
give better results.  As I said, these executables are provided as a
courtesy to people who do not have a compiler.

The reason there are  so  many  executables  for a single program is
because the program has so  many  different  modules  and  versions.
What  runs  well on your system may be different from what runs well
on mine.   As an example, on Pentium-II systems, several people have
told me the Hartley version works best for 1 million digits.  But on
my  Pentium/MMX  166, pi23v54.exe works best.  On a 486 system, or a
pentium clone with a slow FPU, the 486 version may work best.

Plus, you may want to only compute a few million, or you may want to
compute  many  millions.  My pi program is designed for performance,
and has  to  be  compiled  with  different  options  to do different
things.  It's a little unreasonable to expect a program compiled for
quick 1 million digit runs will  run  just  as  well  when  you  are
computing 1 billion digits.

I am including  only  a  few  of  the  more likely desired versions.
There are other program options and versions that can be  made  from
the source code.

For  more  information  on the source code, the format of the pi.ini
file, etc., see the source code archive.


Below are virtual memory versions, suitable for small runs.
'Small' is typically 4 million digits or less, but depends
upon your system and the amount of physical memory.
-----------------------------------------------------------
pi23hart.exe : Hartley version.  Specially compiled
               for 686 class (pentium-II+) processors
               Supplied by Dara Hazeghi.
Time: Win98=337 Dos1=338 Dos2=336

pi23v44.exe  : gcc486 version.  4 primes.
               djgpp v2.8.1.
Time: Win98=639 Dos1=589 Dos2=562

pi23v54.exe  : gcc586 version.  4 primes.
               djgpp v2.8.1.  djgpp.bat w/ -mpentium
               Suitable only for 4m digits or less.
Time: Win98=292 Dos1=284 Dos2=275

pi23v58.exe  : gcc586 version.  8 primes.
               djgpp v2.8.1.  djgpp.bat w/ -mpentium
               Suitable for large runs if you have lots
               of physical memory.  Typically the 'limit'
               will be phys_mem/8 digits.
Time: Win98=355 Dos1=346 Dos2=339


Below are disk number versions, suitable for large runs.
--------------------------------------------------------
pi23d48.exe  : gcc486 version.  8 primes.
               djgpp v2.8.1.

pi23d58.exe  : gcc586 version.  8 primes.  Disk numbers
               djgpp v2.8.1.  djgpp.bat w/ -mpentium

(Times are for a Pentium/MMX 166,  with DOS 6.22 & Win98.  Times for
disk number version aren't provided since they will depend upon  the
speed of your drive, etc.)

Win98=Windows 98 dos box.  No other tasks running.
Dos1 =DOS 6.22, emm386, cwsdpmi dos extender
Dos2 =DOS 6.22, emm386, cwsdpr0 dos extender

cwsdpmi is Charles Sandmann's dos extender mentioned above.

cwsdpr0 is his 'physical memory only' version.  To use it, just copy
it into this directory and name  it  'cwsdpmi.exe'.   It's  slightly
faster due to no overhead for the virtual memory system.



Carey Bloodworth

