"
Hi Mike,
Apple have just released a whole bunch of developer performance tools at:
ftp://ftp.apple.com/developer/Tool_Chest/Testing_-_Debugging
/Performance_tools/CHUD_1.1.1.pkg.tar.gz
What I thought might interest your readers is the bashpack.dmg that is installed in Developer/Applications. This disk image contains a suite of four benchmarking applications; CacheBasher for testing cache/memory bandwidth, DiskBasher for testing drive performance, GraphicsBasher for testing Quickdraw performance and Skidmarks GT for basic processor performance.
Here are the results for my machine, a 500MHz 7400, 100MHz bus with both a RagePro128 and GEForce2mx (1055 rom) and Maxtor ST159300H 30Gig 7200 hard drive:
Skidmarks results:
Skidmarks GT - Processor Performance Benchmark
(c) 2002 Apple Computer, Inc.
Note: Power Mac G4/400 (PCI Graphics) = 1000 for all tests.
Gathering system information...
Starting performance tests...
Integer: 1291
Floating Point: 1288
Vector: 1268
Cachebasher result - here's results for a basic integer load and stores:
Results assume 500.0 MHz processor(s), 99.6 MHz bus, and 32 byte cache line size.
Data Type = Integer, Memory Access = Load
SIZE (bytes) STRIDE (bytes) BUS CYCLES CPU CYCLES BANDWIDTH (MB/s) THREAD
16384 32 0.21 1.06 1891.04 0
28672 32 0.21 1.03 1941.50 0
32768 32 0.25 1.25 1594.39 0
36864 32 1.61 8.09 1978.96 0
40960 32 1.61 8.08 1981.04 0
49152 32 1.61 8.08 1981.06 0
61440 32 1.61 8.06 1984.94 0
65536 32 1.61 8.07 1983.48 0
102400 32 1.60 8.05 1988.00 0
204800 32 1.60 8.04 1990.32 0
249856 32 1.60 8.04 1990.87 0
262144 32 1.60 8.03 1991.31 0
270336 32 1.60 8.04 1991.00 0
302114 32 1.60 8.04 1991.29 0
503808 32 1.60 8.04 1990.63 0
524288 32 1.60 8.04 1990.71 0
540672 32 1.60 8.05 1986.60 0
786432 32 1.64 8.23 1943.30 0
827392 32 1.64 8.24 1942.75 0
909312 32 1.64 8.24 1941.31 0
1007616 32 1.86 9.36 1709.54 0
1048576 32 1.87 9.37 1708.29 0
1089536 32 2.35 11.78 1357.66 0
1572864 32 4.23 21.22 753.93 0
2056192 32 4.24 21.28 751.71 0
2097152 32 4.24 21.29 751.56 0
4194304 32 4.24 21.29 751.36 0
6291456 32 4.27 21.41 747.23 0
8388608 32 4.29 21.53 743.05 0
Results assume 500.0 MHz processor(s), 99.6 MHz bus, and 32 byte cache line size.
Data Type = Integer, Memory Access = Store To Memory
SIZE (bytes) STRIDE (bytes) BUS CYCLES CPU CYCLES BANDWIDTH (MB/s) THREAD
16384 32 4.55 22.82 701.22 0
28672 32 4.55 22.83 700.86 0
32768 32 4.57 22.92 698.20 0
36864 32 4.56 22.88 699.33 0
40960 32 4.56 22.87 699.75 0
49152 32 4.56 22.88 699.19 0
61440 32 4.56 22.89 699.11 0
65536 32 4.56 22.90 698.80 0
102400 32 4.56 22.90 698.79 0
204800 32 4.56 22.91 698.41 0
249856 32 4.57 22.91 698.40 0
262144 32 4.57 22.91 698.27 0
270336 32 4.57 22.91 698.28 0
302114 32 4.57 22.91 698.25 0
503808 32 4.57 22.92 698.09 0
524288 32 4.57 22.92 698.19 0
540672 32 4.57 22.93 697.85 0
786432 32 4.58 22.99 696.01 0
827392 32 4.58 22.99 695.94 0
909312 32 4.58 22.99 695.89 0
1007616 32 4.58 22.99 695.90 0
1048576 32 4.58 22.99 695.85 0
1089536 32 4.58 22.99 695.85 0
1572864 32 4.58 22.99 696.00 0
2056192 32 4.60 23.07 693.47 0
2097152 32 4.60 23.08 693.15 0
4194304 32 4.60 23.08 693.17 0
6291456 32 4.62 23.18 690.26 0
8388608 32 4.62 23.20 689.70 0
Diskbasher results; 4k to 32Meg, Random, no chache, R/W, 100 iterations, 1 file
Results assume 500.0 MHz processor(s), 99.6 MHz bus
/
Volume: OSX, Disk Cache: 0 bytes
Carbon Version: 1.4.0, Number of iterations: 100
HFS, Alternate Read/Write, Random, File multiple: 1
SIZE (bytes) MAX (MB/s) MIN (MB/s) AVG (MB/s)
4096 70.22 46.04 66.21
8192 109.94 46.58 102.02
16384 149.57 72.25 144.04
32768 194.05 87.75 186.85
65536 224.37 101.78 215.89
131072 162.58 14.25 126.02
262144 106.83 31.86 74.51
524288 134.68 55.58 84.37
1048576 108.80 52.57 69.49
2097152 70.80 44.35 57.80
4194304 65.27 34.87 60.58
8388768 59.64 41.80 57.46
16777536 53.36 44.60 52.02
33554432 50.77 44.43 49.87
GraphicsBasher results:
GEForce2mx results:
2D (Quickdraw) graphics performance
ONSCREEN at 32 bit depth and 1600 x 1200 resolution:
TEST CALLS PER SECOND
Paint Rectangles 2010.3
Erase Rectangles 2368.8
Fill Rectangles 82.3
Frame Rectangles 1483.8
Invert Rectangles 7.6
Paint Ovals 98.1
Erase Ovals 96.6
Fill Ovals 97.5
Frame Ovals 1361.8
Invert Ovals 9.6
Paint Rounded Rect's 77.4
Erase Rounded Rect's 77.4
Fill Rounded Rect's 76.4
Frame Rounded Rect's 2068.6
Invert Rounded Rect's 7.6
Paint Arcs 176.4
Erase Arcs 173.2
Fill Arcs 174.2
Frame Arcs 1997.1
Invert Arcs 18.1
Paint Polygons 81.8
Erase Polygons 81.7
Fill Polygons 81.6
Frame Polygons 3439.0
Invert Polygons 8.0
Paint Regions 42.5
Erase Regions 42.4
Fill Regions 42.5
Frame Regions 1576.9
Invert Regions 4.2
Diagonal Lines 9860.9
Horizontal Lines 7703.8
Vertical Lines 12354.6
Strings 658.2
Characters 917.5
CopyBits - SrcCopy 3120.6
CopyBits - SrcOr 178.8
CopyBits - SrcXor 177.5
CopyBits - SrcBic 180.3
CopyBits - NotSrcCopy 179.4
CopyBits - NotSrcOr 177.5
CopyBits - NotSrcXor 179.1
CopyBits - NotSrcBic 175.0
CopyBits - Blend 169.3
CopyBits - AddPin 172.4
CopyBits - AddOver 176.5
CopyBits - SubPin 171.8
CopyBits - AddMax 175.0
CopyBits - SubOver 176.6
CopyBits - AddMin 179.0
CopyBits - Transparent 178.0
DrawPicture - Unscaled 250.9
DrawPicture - Scaled 238.6
ScrollRect 445.7
ATI RagePro128
2D (Quickdraw) graphics performance
ONSCREEN at 32 bit depth and 1600 x 1200 resolution:
TEST CALLS PER SECOND
Paint Rectangles 1679.7
Erase Rectangles 1675.5
Fill Rectangles 65.5
Frame Rectangles 1844.5
Invert Rectangles 9.2
Paint Ovals 78.9
Erase Ovals 77.1
Fill Ovals 79.0
Frame Ovals 1704.2
Invert Ovals 11.6
Paint Rounded Rect's 61.6
Erase Rounded Rect's 61.5
Fill Rounded Rect's 61.5
Frame Rounded Rect's 2400.9
Invert Rounded Rect's 9.1
Paint Arcs 144.4
Erase Arcs 144.5
Fill Arcs 142.3
Frame Arcs 1543.9
Invert Arcs 21.7
Paint Polygons 64.7
Erase Polygons 65.5
Fill Polygons 66.2
Frame Polygons 2318.7
Invert Polygons 9.6
Paint Regions 34.1
Erase Regions 34.2
Fill Regions 34.0
Frame Regions 2108.3
Invert Regions 5.0
Diagonal Lines 9824.8
Horizontal Lines 8473.1
Vertical Lines 12202.7
Strings 600.2
Characters 819.3
CopyBits - SrcCopy 3868.9
CopyBits - SrcOr 223.3
CopyBits - SrcXor 223.4
CopyBits - SrcBic 223.3
CopyBits - NotSrcCopy 219.3
CopyBits - NotSrcOr 224.0
CopyBits - NotSrcXor 223.3
CopyBits - NotSrcBic 219.2
CopyBits - Blend 211.0
CopyBits - AddPin 212.7
CopyBits - AddOver 223.7
CopyBits - SubPin 216.5
CopyBits - AddMax 220.1
CopyBits - SubOver 219.0
CopyBits - AddMin 220.5
CopyBits - Transparent 223.5
DrawPicture - Unscaled 237.1
DrawPicture - Scaled 231.8
ScrollRect 416.0
As we can see, neither of these cards accelerates many of the Quickdraw calls - they both seem to be doing the bare essentials -- lines and SrcCopy CopyBits. You can argue whether QuickDraw results are important in these days of Quartz, but a lot of ported OS 8/9 apps will almost certainly be using it.
Best regards,
Stu. "