Benchmarks / 2024-01-01 16:16:07

Computers

Using patches judiciously can dramatically increase the performance of a standard A1200! However, some experimentations are required because some patches may slow down some measures to the benefice of others and, of course , some patches are incompatible and–or unstable...

 

 

Chingu

Something amazing about the AmigaOS is that it allows for the "easy" extensions/replacements of many of its parts. Over the year, many patches have been proposed to improve the performance of the AmigaOS (for example PatchWP8 to replace the WritePixelArray8() and WritePixelLine8() functions of the graphics.library) or fix some of its bugs (for example CardPatch to fix bugs in the card.resource). Some of these patches may interfer with one another or other legit programs and libraries but a careful selection and ordering of patches can greatly speed up (and increase the usability) of the OS.

 

Computing Power

Two programs to measure performance are AIBB v6.5 and SysSpeed v2.6. Below are the results of these two programs for various configurations of the Startup-Sequence. The leftmost column of the table shows the patches and their ordering in the Startup-Sequence. It also shows any program run before a patch if needed. 

 

Some performance benchmark using AIBB
Tests Units Results Trends
ø BlizKick1 SetPatch
RamLibPatch
PoolMem INSTALL
CopyMem040.safe
FBlit
SystemPatch
EmuTest KoopRate  1  1.00 1.00 1.00 ---
WritePixel 3.43 3.46 12.68 ///
Sieve 1.00 1.00 1.00 ---
Dhrystone 1.00 1.00 1.00 ---
Sort 1.00 1.00 1.00 ---
EllipseTest  2.13 3.54 7.65 ///
Matrix 1.00 1.00 1.00 ---
IMath 1.00 1.00 1.00 ---
MemTest 1.00 1.00 1.00 ---
TGTest 1.57 1.73 2.47 ///
LineTest 1.10 1.46 1.50 ///
Savage 1.00 1.00 1.00 ---
FMath 1.00 1.00 1.00 ---
FMatrix 1.00 1.00 1.00 ---
BeachBall 1.20 1.20 1.30 --/
InstTest 1.00 1.00 1.00 ---
Flops 1.00 1.00 1.00 ---
TranTest 1.02 1.02 1.02 /--
FTrace 1.00 1.00 1.00 ---
CplxTest 1.00 1.00 1.00 ---

 

Some performance benchmark using SysSpeed
Tests Units Results (On Average) Trends
ø BlizKick1 SetPatch
RamLibPatch
PoolMem INSTALL
CopyMem040.safe
FBlit
SystemPatch
ADPro Sec.  119.64 33.82 30.85 31.43 \_/
ImageStudio Sec.  31.76  16.13 15.22 16.47 \_/
CygnuED Sec.  40.09  18.28 18.23 16.05 \\\
GoldEd Sec.  38.52  14.05 16.48 13.69 \/\
Cruncher Sec.  29.89  19.17 30.63 35.83 \//
Memory MB/s  195.11  339.47 339.87 340.09 ///
Drive Op/s  1652.00  5911.00 6041.00 7215.00 ///
MB/s 3.75 5.23 4.84 6.08 /\/
Intuition Op/s  94.00  333.00 397.00 458.00 ///
Graphic OP/s  14191.00  73776.00 74179.00 87554.00 ///
CPU/FPU MioOp/s  39.1  39.8 39.79 39.85 /\/

 

The two tables above shown that, with the set of patches {BlizKick, SetPatch, RamLibPatch, PoolMem, CopyMem040, FBlit, and SystemPatch}, the performance of a standard A1200 can dramatically increase! Some results collected using SysSpeed regarding ADPro and ImageStudio are a bit puzzling because they show a U-shape trend, i.e., using FBlit and SystemPatch slows them down. However, the observed decrease in performance is of only about 1 sec. and could be the results of measurement errors (threat to the construct validity of these tables ).

 

Disk Operations

The use of a modern filesystem can also greatly speed up disk operations. I recommand PFS3 (the Professional File System v5.3), which really makes a difference and is also more secure and more stable that the Fast File System. The Smart File System is a nice choice too! Below are some benchmarks comparing various disk operations between the PFS3 and the FFS.

 

Some disk-operation benchmarks
Filesystems Units SysSpeed Comments
FFS-DC Op/s 1652.00 Use of PFS really improves performance (and reliability)!
MB/s 3.75
PFS3 Op/s 5911.00
MB/s 5.23

 

Other Patches

Many other patches are available on-line of course, among these, the following were recommanded to me but I did not test them extensively as the ones above:

 

GibChingu

Interesting patches can really speed up the raw power of the Amiga! MCP and SystemPatch do make a difference in terms of million of instructions per second (MIPS) and millions of floating-point operations per second (MFLOPS):

 

Speed in Function of the Settings
Settings MIPS MFLOPS
No particular settings 49.04 36.77
All superscalar and caches (through MCP) 54.82 39.25
All superscalar and caches + SystemPatch 55.32 39.63

 

Networking

 Below are some networking benchmarks taken on some of my Amigas using AmiSpeedTest . They show some interesting trends.

    BogjeDoen Chingu GibChingu JageunChingu SangjaOppa
2023-12-23 Model FPGA Arcade A1200 A1200 A600 A4000
CPU Daughter Board 68060 Blizzard 1240 Blizzard 1260 Vampire V2 68040
Ethernet Daughter Board Ethernet PCMCIA PCMCIA ARANANET+ENC28J60 Ariadne
TCP/IP Stack RoadShow MiamiDX MiamiDX RoadShow MiamiDX
Server Altima Telecom 10G Bell Mobility TELUS Fibrenoire Internet TELUS
Units kb s kb/s kb s kb/s kb s kb/s kb s kb/s kb s kb/s
Download 100 2.760 289 100 2.240 357 100 0.832 960 100 4.861 164 100 1.518 526
200 7.520 212 250 4.932 405 400 5.820 549 150 6.443 186 300 8.335 287
300 10.520 228 375 5.319 563 600 9.738 492 225 8.126 221 450 7.272 495
      562 10.360 433 900 16.360 440 337 15.127 178 675 19.369 278
Average 230 450 488 187 334
Upload 100 1.000 800 100 2.468 324 100 0.896 891 100 2.577 310 100 0.982 814
350 2.940 952 250 3.919 510 400 3.296 970 200 1.675 954 400 4.160 796
700 5.700 982 375 3.753 799 700 6.104 917 600 4.746 1011 600 5.913 811
1050 8.520 985 562 5.650 795 1050 8.656 970 900 6.842 1052 900 9.644 746
1575 13.600 964 843 11.621 580 1575 14.317 880 1350 12.199 885 1350 14.353 752
Average 967 621 919 898 767

  

    BogjeDoen Chingu GibChingu JageunChingu SangjaOppa
2023-12-30 Model FPGA Arcade A1200 A1200 A600 A4000
CPU Daughter Board 68060 Blizzard 1240 Blizzard 1260 Vampire V2 68040
Ethernet Daughter Board Ethernet PCMCIA PCMCIA ARANANET+ENC28J60 Ariadne
TCP/IP Stack RoadShow MiamiDX MiamiDX RoadShow MiamiDX
Server Bell Mobility Bell Mobility TELUS Fibrenoire Internet TELUS Mobility
Units kb s kb/s kb s kb/s kb s kb/s kb s kb/s kb s kb/s
Download 100 0.139 5714 100 0.314 2547 100 0.373 2143 100 0.879 909 100 0.555 1441
600 0.660 7272 500 1.554 2573 500 1.949 2051 400 3.373 948 400 2.212 1507
2400 2.719 7058 1500 4.671 2568 1500 5.606 2140 700 7.358 761 1000 5.336 1499
4800 5.240 7328 2250 6.874 2618 2250 8.735 2060 1050 9.210 911 1500 7.970 1505
7200 7.960 7236 3375 10.533 2563 3375 13.979 1931 1575 12.197 1032 2250 11.967 1504
10800 12.679 6813                        
Average 7047 2580 2016 926 1502
Upload 100 0.620 1290 100 0.549 1456 100 0.600 1332 100 0.534 1498 100 0.838 953
400 2.220 1441 400 1.993 1605 400 2.349 1362 400 2.450 1564 400 4.613 693
1000 5.600 1428 1200 5.815 1650 1000 6.227 1284 1000 4.865 1644 600 7.430 681
1500 8.160 1470 1800 11.880 1298 1500 8.163 1469 1500 7.360 1630 900 9.843 731
2250 12.540 1435       2250 12.570 1492 2250 10.880 1654 1250 12.787 844
Average 1441 1439 1428 1635 762

Uptimes!

Of course, most interesting when running such a configuration constantly is its uptime! Here are some screenshots showing an uptime of up to 50 days

  • 15 days: ;
  • 20 days: ;
  • 50 days: .

 

1 BlizKick is used with the following options: KICKFILE="DEVS:Kickstarts/Kick40680.a1200" EXTRESBUF=40960 SPEEDROM HOGWAITBLIT QUIET MODULE BBlank FixMath404 LocalFast MoveVBR MuMove4k NewAlert NoClick PatchMath020 ROMFixes SpeedyIDE