AminetAminet
Search:
85465 packages online
About
Recent
Browse
Search
Upload
Setup
Services

util/moni/amibench-1.0.lha

Mirror:Random
Showing: ppc-morphos icongeneric icon
No screenshot available
Short:CPU and memory speed benchmark
Author: thomas at amiga-imager.com (Thomas Luebker)
Uploader:thomas amiga-imager com (Thomas Luebker)
Type:util/moni
Version:1.0
Architecture:m68k-amigaos >= 2.0
Date:2026-08-08
Distribution:Aminet
URL:https://amiga-imager.com
Download:util/moni/amibench-1.0.lha - View contents
Readme:util/moni/amibench-1.0.readme
Downloads:9

amibench answers "how much faster is machine A than machine B" with numbers
that survive scrutiny. Four phases: integer ALU (dependency-chained, so it
cannot be pipelined away), memcpy, memset, and a linear read. It runs in about
ten seconds and needs nothing else installed.

It prints reps and ticks, not rates. Divide reps by (ticks/50) for operations
per second; for the memory phases multiply reps by the buffer size first. Doing
that arithmetic on the Amiga would drag in soft-float or an FPU dependency and
change what is being measured, and the byte totals overflow 32 bits on a fast
machine - so the numbers come out raw.

THREE THINGS IT DOES DELIBERATELY

  Self-calibrating. Timing comes from DateStamp, which resolves to 1/50 s. A
  fixed workload is useless across a wide speed range: on a PiStorm an earlier
  version finished an entire 50 MB memcpy phase inside a SINGLE tick, while
  sizing that phase for a PiStorm would leave a 68060 grinding for minutes.
  Each phase quadruples its rep count until it runs at least two seconds.

  Buffers bigger than any cache in play - 4 MB each. At 256 KB the whole
  working set sat inside a Raspberry Pi's L2, so an emulated Amiga was clocking
  cache bandwidth against a 68060 clocking main memory.

  Fast RAM explicitly. MEMF_ANY could land in Chip on a machine short of Fast,
  measuring the chipset bus instead of the CPU.

COMPARING TWO MACHINES

  Run the SAME BINARY on both. This build targets 68020, so one executable
  covers an 020, an 040, an 060 and Emu68's JIT. Rebuilt for 68000 its numbers
  are not comparable with these - that would measure the compiler too.

SOME RESULTS

  A1200 + PiStorm32-lite (Emu68 on a Pi 4 at 1.8 GHz) vs A4000/060 at 50 MHz:

      ALU      151.7 M iter/s  vs   2.8 M iter/s     54x
      memcpy      1.19 GB/s    vs  17.6 MB/s         67x
      memset      1.09 GB/s    vs  16.5 MB/s         66x
      read        3.98 GB/s    vs  35.5 MB/s        112x

  Geometric mean about 72x, which cross-checks against SysInfo 4.4 putting the
  same two machines 50.1x apart on Dhrystones and MIPS.

  Chip RAM does NOT follow: the PiStorm reaches the real chipset across its bus
  and measures 1.54x an A600 against the A4000's 2.25x. Anything Chip-bound
  will not see that CPU win and may run slower. Synthetic ratios are not
  application ratios.

Source (tools/amibench), and the amimcp project it comes from:

      https://github.com/thomas-luebker/amimcp

Distributed under the licence in the archive.


Contents of util/moni/amibench-1.0.lha
 PERMSSN    UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP          NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                 4073   11358  35.9% -lh5- 19ee Aug  7 12:52 license
[generic]                 1803    3387  53.2% -lh5- 9d5a Aug  7 12:52 README.txt
[generic]                 6907   11696  59.1% -lh5- 5cad Aug  7 12:52 amibench
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total         3 files   12783   26441  48.3%            Aug  8 00:53
Page generated in 0.03 seconds
Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>