
This file explains somewhat ad-hoc naming convention that evolved while we
were bencharking various systems.


Intel Based machines:

  HC386		Metaware High C/C++ R3.03 optimizing for Intel 80386 running under DOS 5.0
  HC486		Metaware High C/C++ R3.03 optimizing for Intel 80486 running under DOS 5.0
  Borland-i386  Compiled by Borland C++ 3.1 for 80386 real mode running under DOS 5.0
  Borland-i86   Compiled by Borland C++ 3.1 for 8086 running under DOS 5.0
  x86asm	Linux/gcc using fast_sieve.S implementation instead of
                fast_sieve() function from sieve.h (OBSOLETE)
  u86asm	Linux/gcc using fast_sieve.S implementation with unrolled
  		inner loop. This is for comparability with "386asm", which
  		introduced this feature. x86asm is considered obsolete since
  		then on (although fast_sieve.S can still be configured back
  		to x86asm mode by changing a constant in the source code).
  386asm	Native 80386 assembly implementation under DOS (invoked from
  		Metaware High C/C++) based on the same code as u86asm (up to
  		alignment) but stored in fast_386.asm file due to different
  		syntax of PharLap assembler.  
  86asm		DOS 8086 assembly implementation (invoked from Borland C++)
  		of the fast_sieve() function, residing in fast_86.asm. Note
  		that this implementation takes a big advantage from a design
  		decision that limits the bit array to 64 KB. Otherwise it
  		would be much slower (at least several times, I guess).
  		Nevertheless, this was considered fair against the 8bit
  		machines, which can benefit from this this assumptions too.
  AMD64asm	Linux/gcc using fast_sieve-64.S hand-tuned assembly for AMD64 architecture.
  gcc5		Using gcc-5.x.x compiler
  (none)        Linux/gcc


Amiga/Blizzard1230IV/Apollo1240/ACA500 (compiler part):

  (none)        Storm C 3.0 native Amiga code
  gcc		ixemul based unix emulation
  asm		hand-tuned assembly fast_68k.S
  00code        code targeted on 68000 CPU
  30code	code targeted on 68030 CPU


Amiga/Blizzard1230IV/Apollo1240/ACA500 (system part)

  wb3           running under Workbench 3
  wb2           running under Workbench 2


Amiga/Blizzard1230IV/Apollo1240/ACA500 (HW part)

  PAL           Running in PAL videomode
  (none)        Running in NTSC videomode
  chipRAM	Using chip RAM for the benchmark
  fastRAM	Using fast RAM (from PCMCIA RAM card)
  (none)	Using fast RAM in case of accelerators.


Apple:

  emu68k	68000 emulation running on PowerPC
  classic	Classic MacOS application compiled by Code Warrior 7.1
  carbon	Classic MacOS application carbonized to be able to run under MacOS X
  (none)	gcc under MacOS X


Acorn Archimedes:

  modeXX	video mode XX was selected
  blankYYY	blank screen after YYY seconds
  fdon		floppy disk was spinning during the test

ATARI 800

  GR0		the fast variant having the text mode (graphics 0) active 
                with the VBI disabled (the slow variant has both enabled).
  (none)	the fast variant having both the video output and VBI disabled.

General HW configuration

  noL1		L1 cache disabled
  L1wt		L1 cache switched to write-thru
  noL2		L2 cache disabled, L1 enabled
  noDcache	L1 D-cache disabled, L1 I-cache enabled
  nocaches	all caches disabled


Specials:

  julia-*    Sieve implemented in Julia language being run on
             Phenom-IIX4-980-3700MHz v04/v05 specifies the version of the
             compiler. Note that only the fast implementation is directly
             comparable, the slow one is using Bool type which translates to
             a byte array instead of a bit array.

  BBCBAS	Sieve implemented in BBC basic (using a bit array).

  QBASIC	Sieve implemented in Microsoft Quick BASIC (using a bit array).

  cQBASIC	Complied version of QBASIC version.
  
  fastsieve_on_Phenom-IIX4-980-3700MHz    A sieve with FAST_VERSION macro
                                          defined (see sieve.h for
                                          explanation) To demonstrate that
                                          the fast version is only slightly
                                          faster and that the slow version
                                          makes cache influence more visible
                                          in the plots. To be compared
                                          against Phenom-IIX4-980-3700MHz.

  ARM7TDMI-60MHz   OS-less development board. Still using sieve.h
                   implementation by the driver which does the timing, which
                   is implemented separately in sieve-ARM7TDMI.cc. The
                   resulting assembly and binary is included in
                   ASM-gallery/sieve-ARM7TDMI.s.s and
                   BIN-gallery/sieve-ARM7TDMI.bin respectively.
