markv@kuhub.cc.ukans.edu (04/23/91)
As promised, here are my benchmarks from the AdSpeed. The figures given are a percentage increase in speed from a base machine to a machine with the AdSpeed turned on. Note the machine was an Amiga 2000 with ECS, Supra Wordsync, and 3MB of FAST ram on a RAM Works 2000. Speed Comparisons: Light DMA -Run w/CHIP only and 4 color std workbench, nothing else. Heavy DMA - " " " 16 Color HiRes Screen in full foreground. FAST RAM -From FAST RAM w/all program and data in fast. CHIP/FAST -Slow machine, Hvy CHIP versus FAST, just for interest... Note these categories are important as the AdSpeed does NOT cache CHIP RAM (it properly handles both 512K and 1MB of CHIP). The categories are pretty simple. All operations work on two 40K arrays (enough to overrun most any on chip cache I've ever seen), from array to array, and from variable to variable. Temp vars are register variable, so each arithmatic category involves 100,000 iterations of each operation with an assignment, both memory to memory, and memory to register, register to register, and signed and unsigned. The Str/Mem category is a short and long based involving a memory to memory copy with the arrays, a memory to register compare, and a memory to memory compare. Function call is a dummy function call with 3 params (1 ea of byte, short, and long, plus one indirection fetch) with a long return. Okay, here goes: Category Light DMA Heavy DMA FAST RAM Hvy CHIP/FAST -------------- ---------- ---------- --------- -------------- 16 Bit Add/Sub 2.5 % 6.0 % 86.0 % 124.0 % " Mul/Div 55.0 % 53.0 % 102.0 % 94.0 % -------------- ---------- ---------- --------- -------------- 16 Bit Total 31.0 % 31.0 % 96.0 % 105.0 % ============== ========== ========== ========= ============== 32 Bit Add/Sub 5.4 % 10.0 % 72.0 % 126.0 % " Mul/Div 24.0 % 14.0 % 83.0 % 101.0 % -------------- ---------- ---------- --------- -------------- 32 Bit Total 20.0 % 14.0 % 81.0 % 105.0 % ============== ========== ========== ========= ============== Arith Total 24.0 % 19.0 % 86.0 % 105.0 % ============== ========== ========== ========= ============== String/Memory 26.0 % 21.0 % 89.0 % 107.0 % ============== ========== ========== ========= ============== Function Call 7.4 % 5.0 % 59.0 % 129.0 % ============== ========== ========== ========= ============== TOTAL 23.0 % 18.0 % 85.0 % 107.0 % ============== ========== ========== ========= ============== Note also the total results are not too valid, since they are unweighted and the artihmatic total accounts for over 75% of the time in each. The program I used I wrote in C, so it is usable for many single variable comparisons, and is effected by the quality of the code generated by the compiler. Note also this program generates a "Performance Index" relative to a 4.77 MHz 8088 PC/XT w/MSC 5.1. These results follow: State Arith String Function Overall ------------------ --------- ---------- ----------- ---------- Slow, Light Chip 3.82 3.73 11.59 3.86 Slow, Hvy. Chip 1.90 1.81 5.41 1.90 Slow, Fast RAM 3.89 3.77 12.44 3.93 Fast, Light Chip 4.74 4.73 12.44 4.75 Fast, Hvy. Chip 2.26 2.21 5.70 2.25 Fast, Fast RAM 7.25 7.14 19.76 7.28 The results reflect the differing architectures. Note that the arith results show that Mul/Div is twice as costly as Ad/Sub. On Intel machines with 286 and even 386 the difference is much less, since Intels CPUs have excellent Mul/Div speed relative to most arithmatic operations. On the otherhand, Intel CPUs suffer for lack of some bit instructions, and 8088/86 code is a PIG on function call because of lack of a stack frame instruction, and limits on operands for PUSH/POP. Note a 3000/16 weighs in an overall index of 13-14 versus an index of 16-18 for a Zenith 386/16MHz (likely because the Zenith has 0ws interleaved RAM). Now, to wrap up quickly, given that the AdSpeed can be found for well under $250, it is an excellent value. Note that if you include a RAM board with 4MB of FAST RAM versus the 2630 or GVP 3001/28 w/4MB, the Cost/MIPs ratio is just about the same. This is good news since it means that Amiga owners can pick the performance point they want with a relativly even cost factor. Also, these results should show you that if you do a lot of CHIP intensive work, getting some fast RAM is more important for a first step. (You should have more than 1MB anyways...). Well, 'nuff said, -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Mark Gooderum Only... \ Good Cheer !!! Academic Computing Services /// \___________________________ University of Kansas /// /| __ _ Bix: mgooderum \\\ /// /__| |\/| | | _ /_\ makes it Bitnet: MARKV@UKANVAX \/\/ / | | | | |__| / \ possible... Internet: markv@kuhub.cc.ukans.edu ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~