David Cook
Well-known member
The YouTuber "This Does Not Compute" posts interesting and entertaining videos. Back in April, he posted disappointing results for a DayStar 50MHz P33 Universal PowerCache accelerator card in a Macintosh IIci.
A number of people correctly pointed out the likely cause, but I haven't seen a follow-up with the test results. So, I'm doing so here.
Test Setup:
Variables:
General Notes:
Examining the raw MacBench 2.0 IIci results file is how I determined MacBench 2.0 was using System 7.5, 32 KB disk cache, and 640x480@8-bit when they tested back in October 1994. Running tests with and without the Apple 32 KB L2 cache card and matching the results is how I concluded they were using an L2 cache card. This makes sense as Apple apparently shipped the cache card as standard at some point, according to Wikipedia. So, I was able to nearly (~5%) match the 'official' MacBench IIci performance ratings. I can't explain why it doesn't exactly match.
My Mac IIci has 4 MB in Bank A. Bank A is used for internal video. For most of the tests, I use a 32 KB disk cache to match MacBench. However, it is understood that increasing the disk cache size to consume all of the remaining Bank A memory will allow the operating system and programs to run faster, as Bank B memory can be accessed independently of the built-in video. So, for some tests, I bumped up the disk cache to 4 MB to consume Bank A and ensure programs ran out of Bank B.
Naming Conventions for the Charts that Follow:
Bingo!
When using a NuBus video card or BankB memory, the DayStar 50 MHz accelerator performed extremely well and met expectations. It measures 3x the CPU performance of a no-L2-Cache IIci and on par with a IIfx. These are the results "This Does Not Compute" was looking for.
Using a smaller disk cache, such that the OS or program runs in Bank A causes contention with onboard video memory accesses. This is the result that "This Does Not Compute" encountered and was disappointed by.
In comparable situations (AppleL2 NuBus vs DayStar NuBus), why is DayStar only 58% (4.34/2.74) faster when the CPU runs twice as fast? Eventually, depending on the benchmark, the CPU is going to hit a memory location that needs to be read from the main memory bus. The 50 MHz CPU is no faster than a 25 MHz CPU if they are both waiting on the same speed of memory. So, double speed is ideal rather than a regular occurrence.
DayStar Cache Off
When using built-in video and with the DayStar cache turned off, the DayStar 50 MHz accelerator cpu performance is indeed horrible. It's 20% slower than a plain IIci. So, clearly the DayStar card fights with internal video for memory access -- which the L2 cache helps alleviate. But, it should still be at least as fast as the stock CPU. Is DayStar disabling the 68030 L1 cache as well? Are they constantly forcing a cache miss or flush in order to disable their cache? I don't know. It should not be this bad.
Now let's look at disk performance...
Ignore the "IIfx" and "IIci" because the MacBench testers were using a hard disk back in 1994.
Sizing the disk cache to be too large is rumored to actually slow disk access due to a weak Apple algorithm. For System 7.5, MacBench indeed shows moderately worse performance when using 4 MB instead of 32 KB. Use 256 KB SIMMs in Bank A and 16 MB SIMMs in Bank B if you're concerned. This gives you 64 MB of system/program memory, built-in video, and a reasonable disk cache of 1024 KB to force code into Bank B.
Lastly, video performance...
Nothing shocking here because none of these are hardware accelerated graphics. Basically, a 32KB L2 cache helps somewhat, as does a fast CPU to compute the drawing.
Conclusion
On the Mac IIci and Mac IIsi, using a graphics card or forcing most operations into Bank B will dramatically improve CPU accelerator performance.
The test result files are attached.
- David
A number of people correctly pointed out the likely cause, but I haven't seen a follow-up with the test results. So, I'm doing so here.
Test Setup:
- Macintosh IIci. Recapped motherboard.
- 20 MB RAM. 4 x 1MB in Bank A. 4 x 4MB in Bank B. 32-bit mode.
- 640x480 at 256 colors
- MacSD external SD drive. Internal SCSI terminator (no hard drive)
- AppleTalk off
- MacBench 2.0
- Fresh easy install of System 7.5 from the Apple Recovery CD. Extensions enabled. This was chosen as it most closely matched the MacBench stock test.
Variables:
- 32 KB disk cache (matches MacBench stock test) vs 4 MB disk cache to consume Bank A memory to reduce memory bus contention with built-in video.
- IIci built-in video vs Apple 8*24 unaccelerated NuBus video. Card removed when not in use. Internal video monitor connection disconnected when NuBus card is used. In other words, only one monitor used per test.
- IIci without PDS card vs Apple 32 KB L2 cache card vs DayStar P33 Universal PowerCache 50 MHz 68030 with integrated 32 KB L2 cache
- DayStar Power Central 2.2 control panel installed when using DayStar 68030 accelerator. Otherwise not installed.
General Notes:
Examining the raw MacBench 2.0 IIci results file is how I determined MacBench 2.0 was using System 7.5, 32 KB disk cache, and 640x480@8-bit when they tested back in October 1994. Running tests with and without the Apple 32 KB L2 cache card and matching the results is how I concluded they were using an L2 cache card. This makes sense as Apple apparently shipped the cache card as standard at some point, according to Wikipedia. So, I was able to nearly (~5%) match the 'official' MacBench IIci performance ratings. I can't explain why it doesn't exactly match.
My Mac IIci has 4 MB in Bank A. Bank A is used for internal video. For most of the tests, I use a 32 KB disk cache to match MacBench. However, it is understood that increasing the disk cache size to consume all of the remaining Bank A memory will allow the operating system and programs to run faster, as Bank B memory can be accessed independently of the built-in video. So, for some tests, I bumped up the disk cache to 4 MB to consume Bank A and ensure programs ran out of Bank B.
Naming Conventions for the Charts that Follow:
- The official MacBench tests are simply "IIci" and "IIfx". The remaining tests are mine and start with "IIci 2023".
- "AppleL2" means the Apple 32KB L2 cache card is installed, or "DayStar" means the DayStar 50 MHz accelerator is installed, or "NoPDS" means nothing is installed in the PDS slot.
- "BankA" means built-in video with 32KB disk cache, or "BankB" means the disk cache has been bumped to 4 MB to avoid contention with built-in video, or "NuBus" means the Apple NuBus 8*24 video card is installed instead of using built-in video
- "CachDis" means the DayStar accelerator has its cache disabled.
Bingo!
When using a NuBus video card or BankB memory, the DayStar 50 MHz accelerator performed extremely well and met expectations. It measures 3x the CPU performance of a no-L2-Cache IIci and on par with a IIfx. These are the results "This Does Not Compute" was looking for.
Using a smaller disk cache, such that the OS or program runs in Bank A causes contention with onboard video memory accesses. This is the result that "This Does Not Compute" encountered and was disappointed by.
In comparable situations (AppleL2 NuBus vs DayStar NuBus), why is DayStar only 58% (4.34/2.74) faster when the CPU runs twice as fast? Eventually, depending on the benchmark, the CPU is going to hit a memory location that needs to be read from the main memory bus. The 50 MHz CPU is no faster than a 25 MHz CPU if they are both waiting on the same speed of memory. So, double speed is ideal rather than a regular occurrence.
DayStar Cache Off
When using built-in video and with the DayStar cache turned off, the DayStar 50 MHz accelerator cpu performance is indeed horrible. It's 20% slower than a plain IIci. So, clearly the DayStar card fights with internal video for memory access -- which the L2 cache helps alleviate. But, it should still be at least as fast as the stock CPU. Is DayStar disabling the 68030 L1 cache as well? Are they constantly forcing a cache miss or flush in order to disable their cache? I don't know. It should not be this bad.
Now let's look at disk performance...
Ignore the "IIfx" and "IIci" because the MacBench testers were using a hard disk back in 1994.
Sizing the disk cache to be too large is rumored to actually slow disk access due to a weak Apple algorithm. For System 7.5, MacBench indeed shows moderately worse performance when using 4 MB instead of 32 KB. Use 256 KB SIMMs in Bank A and 16 MB SIMMs in Bank B if you're concerned. This gives you 64 MB of system/program memory, built-in video, and a reasonable disk cache of 1024 KB to force code into Bank B.
Lastly, video performance...
Nothing shocking here because none of these are hardware accelerated graphics. Basically, a 32KB L2 cache helps somewhat, as does a fast CPU to compute the drawing.
Conclusion
On the Mac IIci and Mac IIsi, using a graphics card or forcing most operations into Bank B will dramatically improve CPU accelerator performance.
The test result files are attached.
- David