Short: How to make the DKB WildFire 060 faster Uploader: dbusse@primus-online.de (Dirk Busse) Author: dbusse@primus-online.de (Dirk Busse) Type: docs/misc Date: January, 2nd 1999 Version: 1.0 This document describes how to make the DKB WildFire 060 accelerator board faster. It's not a hardware hack. It's a software solution, which brings up to 20% more speed. Use it at your own risk. ------------------------------------------------------------------------ The 68060.library V1.9 doesn't set the MMU optimal. In my Review of the DKB WildFire060 (Aminet:docs/rview/WildFire_2.txt) I wrote about the SlowRam, which has very very slow read accesses with the DKB WildFire060. The SlowRam isn't the only one which could speed up by changing the MMU settings. Also the DKB WildFire060 on board 32-bit-Ram could speeded up. How to do this: In the Enforcer-Archive on Aminet is a program called "MMU". With this program you could change the cachemode of memory ranges. If you own 16-bit FastRam you should use: mmu address xxxxxx size yyyyyy copyback in your s:Startup-Sequence. Change the "xxxxxx" to the start address of your 16-bit FastRam and the "yyyyyy" to the lenght of it. For example if you have 2MByte at $00200000, you should use: mmu address 200000 size 1fffff copyback If you own SlowRam you should use: mmu address c00000 size 1bffff nocache copyback in your s:Startup-Sequence. This solves the problem of slow read accesses descibed in "Aminet:docs/rview/WildFire_2.txt". For speeding up the write accesses on the DKB WildFire060 on board 32-bit-Ram you should use: mmu address 8000000 size 7ffffff copyback in your s:Startup-Sequence. This will speed up it by a factor of two. ------------------------------------------------------------------------ Here are the BusSpeed results: BusSpeedTest 0.07 (mlelstv) Buffer: 16384 Bytes ORIGINAL MMU | CHANGED MMU SETTINGS ========================================+========================= loop overhead: 1.0ns | 0.9ns register move: 15.2ns | 15.1ns memtype op cycle bandwidth | cycle bandwidth fast readw 41.5ns 48.2MByte/s | 41.6ns 48.0MByte/s fast readl 63.8ns 62.6MByte/s | 60.8ns 65.8MByte/s fast readm 61.8ns 64.8MByte/s | 59.4ns 67.3MByte/s fast writew 121.8ns 16.4MByte/s | 40.5ns 49.4MByte/s fast writel 121.9ns 32.8MByte/s | 73.4ns 54.5MByte/s fast writem 121.6ns 32.9MByte/s | 76.7ns 52.2MByte/s chip readw 858.0ns 2.3MByte/s | 857.5ns 2.3MByte/s chip readl 1427.0ns 2.8MByte/s | 1425.5ns 2.8MByte/s chip readm 1426.7ns 2.8MByte/s | 1426.6ns 2.8MByte/s chip writew 857.7ns 2.3MByte/s | 857.3ns 2.3MByte/s chip writel 1426.5ns 2.8MByte/s | 1426.1ns 2.8MByte/s chip writem 1427.2ns 2.8MByte/s | 1425.8ns 2.8MByte/s rom readw 40.2ns 49.8MByte/s | 40.3ns 49.7MByte/s rom readl 59.6ns 67.2MByte/s | 62.3ns 64.2MByte/s rom readm 62.9ns 63.6MByte/s | 61.0ns 65.6MByte/s $00c80000 readw 5702.9ns 0.4MByte/s | 857.5ns 2.3MByte/s $00c80000 readl 5704.6ns 0.7MByte/s | 1425.7ns 2.8MByte/s $00c80000 readm 5706.2ns 0.7MByte/s | 1426.3ns 2.8MByte/s $00c80000 writew 857.7ns 2.3MByte/s | 857.2ns 2.3MByte/s $00c80000 writel 1426.4ns 2.8MByte/s | 1426.2ns 2.8MByte/s $00c80000 writem 1426.8ns 2.8MByte/s | 1426.3ns 2.8MByte/s ----------------------------------------+------------------------- ------------------------------------------------------------------------ SysSpeed V2.3 - Testergebnisse =============================== MMUchanged : CPU: 68060 FPU: 68060 Chipsatz: ECS OS: 3.1 Org.MMU : CPU: 68060 FPU: 68060 Chipsatz: ECS OS: 3.1 981007 : CPU: 68060 FPU: 68060 Chipsatz: ECS OS: 3.1 Vergleichsbasis : MMUchanged Vergleich : Org.MMU +-------------+---------+---------+---------+---------+ | Test | MMUchang| Org.MMU | 981007 |Vergleich| +-------------+---------+---------+---------+---------+ | Packer Ergebnisse in Sek. | +-------------+---------+---------+---------+---------+ | LhaCrunch | 1.81 | 1.79 | 1.80 | 0.99 | +-------------+---------+---------+---------+---------+ | LhaTest | 0.19 | 0.21 | 0.21 | 1.08 | +-------------+---------+---------+---------+---------+ | LhaDeCrunch | 0.32 | 0.34 | 0.35 | 1.08 | +-------------+---------+---------+---------+---------+ | XPKCrunch | 4.21 | 4.31 | 4.30 | 1.02 | +-------------+---------+---------+---------+---------+ | XPKDeCrunch | 0.82 | 0.87 | 0.88 | 1.07 | +-------------+---------+---------+---------+---------+ | PPCrunch | 3.03 | 2.94 | 2.94 | 0.97 | +-------------+---------+---------+---------+---------+ | PPDeCrunch | 0.22 | 0.24 | 0.24 | 1.07 | +-------------+---------+---------+---------+---------+ | Speicher Ergebnisse in MB/s | +-------------+---------+---------+---------+---------+ | Cache Read | 189.95 | 190.12 | 188.92 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadROMb | 24.32 | 24.33 | 24.33 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadROMw | 46.92 | 47.02 | 46.95 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadROMl | 62.49 | 62.63 | 62.53 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadFastb | 26.91 | 26.90 | 26.91 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadFastw | 37.63 | 37.58 | 37.60 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadFastl | 46.97 | 46.96 | 46.98 | 1.00 | +-------------+---------+---------+---------+---------+ | WriteFastb | 21.58 | 7.80 | 7.81 | 2.77 | +-------------+---------+---------+---------+---------+ | WriteFastw | 37.35 | 15.60 | 15.60 | 2.39 | +-------------+---------+---------+---------+---------+ | WriteFastl | 37.35 | 31.13 | 31.15 | 1.20 | +-------------+---------+---------+---------+---------+ | Fast2Fastb | 12.54 | 6.75 | 6.75 | 1.86 | +-------------+---------+---------+---------+---------+ | Fast2Fastw | 18.79 | 11.89 | 11.89 | 1.58 | +-------------+---------+---------+---------+---------+ | Fast2Fastl | 22.63 | 19.15 | 19.15 | 1.18 | +-------------+---------+---------+---------+---------+ | Fast2Fastm | 20.67 | 18.61 | 18.61 | 1.11 | +-------------+---------+---------+---------+---------+ | Fast2Fast16 | 25.80 | 25.80 | 25.80 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadChipb | 1.11 | 1.11 | 1.11 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadChipw | 2.22 | 2.22 | 2.22 | 1.00 | +-------------+---------+---------+---------+---------+ | ReadChipl | 2.68 | 2.67 | 2.67 | 1.00 | +-------------+---------+---------+---------+---------+ | WriteChipb | 1.11 | 1.11 | 1.11 | 1.00 | +-------------+---------+---------+---------+---------+ | WriteChipw | 2.22 | 2.22 | 2.22 | 1.00 | +-------------+---------+---------+---------+---------+ | WriteChipl | 2.67 | 2.67 | 2.67 | 1.00 | +-------------+---------+---------+---------+---------+ | Chip2Chipb | 0.48 | 0.48 | 0.48 | 1.00 | +-------------+---------+---------+---------+---------+ | Chip2Chipw | 0.96 | 0.96 | 0.96 | 1.00 | +-------------+---------+---------+---------+---------+ | Chip2Chipl | 1.22 | 1.22 | 1.22 | 1.00 | +-------------+---------+---------+---------+---------+ | Chip2Chipm | 1.33 | 1.32 | 1.32 | 1.00 | +-------------+---------+---------+---------+---------+ | Chip2Chip16 | 1.30 | 1.30 | 1.30 | 1.00 | +-------------+---------+---------+---------+---------+ | Fast2Chipb | 1.09 | 1.09 | 1.09 | 1.00 | +-------------+---------+---------+---------+---------+ | Fast2Chipw | 2.13 | 2.13 | 2.13 | 1.00 | +-------------+---------+---------+---------+---------+ | Fast2Chipl | 2.55 | 2.55 | 2.55 | 1.00 | +-------------+---------+---------+---------+---------+ | Fast2Chipm | 2.50 | 2.50 | 2.50 | 1.00 | +-------------+---------+---------+---------+---------+ | Fast2Chip16 | 2.45 | 2.45 | 2.46 | 1.00 | +-------------+---------+---------+---------+---------+ | Laufwerk Ergebnisse in Op/s | +-------------+---------+---------+---------+---------+ | Create | 132 | 128 | 989 | 1.03 | +-------------+---------+---------+---------+---------+ | Open | 683 | 601 | 1402 | 1.14 | +-------------+---------+---------+---------+---------+ | DirScan | 1405 | 1328 | 90 | 1.06 | +-------------+---------+---------+---------+---------+ | Delete | 1156 | 1323 | 2705 | 0.87 | +-------------+---------+---------+---------+---------+ | Seek/Read | 3587 | 2900 | 2840 | 1.24 | +-------------+---------+---------+---------+---------+ | Laufwerk Ergebnisse in MB/s | +-------------+---------+---------+---------+---------+ | CreateFile | 5.85 | 5.96 | 2.14 | 0.98 | +-------------+---------+---------+---------+---------+ | WriteFile | 6.62 | 6.51 | 2.20 | 1.02 | +-------------+---------+---------+---------+---------+ | ReadFile | 7.48 | 7.47 | 4.34 | 1.00 | +-------------+---------+---------+---------+---------+ | RawRead | ---- | ---- | ---- | ---- | +-------------+---------+---------+---------+---------+ | Intuition Ergebnisse in Op/s | +-------------+---------+---------+---------+---------+ | OpenWin16 | 40 | 40 | 40 | 1.00 | +-------------+---------+---------+---------+---------+ | OpenWin256 | 40 | 40 | 40 | 1.00 | +-------------+---------+---------+---------+---------+ | OpenWinHi | 40 | 28 | 28 | 1.43 | +-------------+---------+---------+---------+---------+ | OpenWinTru | 27 | 27 | 27 | 1.00 | +-------------+---------+---------+---------+---------+ | WinLayer16 | 54 | 47 | 47 | 1.15 | +-------------+---------+---------+---------+---------+ | WinLayer256 | 46 | 45 | 45 | 1.02 | +-------------+---------+---------+---------+---------+ | WinLayerHi | 41 | 37 | 37 | 1.11 | +-------------+---------+---------+---------+---------+ | WinLayerTru | 31 | 30 | 30 | 1.03 | +-------------+---------+---------+---------+---------+ | SizeWin16 | 153 | 172 | 143 | 0.89 | +-------------+---------+---------+---------+---------+ | SizeWin256 | 123 | 146 | 146 | 0.84 | +-------------+---------+---------+---------+---------+ | SizeWinHi | 115 | 120 | 154 | 0.96 | +-------------+---------+---------+---------+---------+ | SizeWinTru | 104 | 94 | 105 | 1.11 | +-------------+---------+---------+---------+---------+ | MoveWin16 | 382 | 408 | 347 | 0.94 | +-------------+---------+---------+---------+---------+ | MoveWin256 | 353 | 316 | 335 | 1.12 | +-------------+---------+---------+---------+---------+ | MoveWinHi | 252 | 236 | 239 | 1.07 | +-------------+---------+---------+---------+---------+ | MoveWinTru | 164 | 166 | 155 | 0.99 | +-------------+---------+---------+---------+---------+ | ConOutP16 | 172 | 165 | 166 | 1.04 | +-------------+---------+---------+---------+---------+ | ConOutP256 | 171 | 165 | 166 | 1.04 | +-------------+---------+---------+---------+---------+ | ConOutPHi | 91 | 89 | 89 | 1.02 | +-------------+---------+---------+---------+---------+ | ConOutPTru | 56 | 55 | 55 | 1.02 | +-------------+---------+---------+---------+---------+ | OpenScr16 | 27 | 27 | 27 | 1.00 | +-------------+---------+---------+---------+---------+ | OpenScr256 | 20 | 20 | 20 | 1.00 | +-------------+---------+---------+---------+---------+ | OpenScrHi | 16 | 16 | 16 | 1.00 | +-------------+---------+---------+---------+---------+ | OpenScrTru | 16 | 16 | 16 | 1.00 | +-------------+---------+---------+---------+---------+ | SwapScr16 | 81 | 81 | 81 | 1.00 | +-------------+---------+---------+---------+---------+ | SwapScr256 | 81 | 81 | 81 | 1.00 | +-------------+---------+---------+---------+---------+ | SwapScrHi | 81 | 81 | 81 | 1.00 | +-------------+---------+---------+---------+---------+ | SwapScrTru | 81 | 81 | 81 | 1.00 | +-------------+---------+---------+---------+---------+ | Grafik Ergebnisse in Op/s | +-------------+---------+---------+---------+---------+ | ScrollX_16 | 243 | 241 | 241 | 1.01 | +-------------+---------+---------+---------+---------+ | ScrollX_256 | 243 | 241 | 241 | 1.01 | +-------------+---------+---------+---------+---------+ | ScrollX_Hi | 97 | 97 | 97 | 1.00 | +-------------+---------+---------+---------+---------+ | ScrollX_Tru | 47 | 47 | 47 | 1.00 | +-------------+---------+---------+---------+---------+ | ScrollY_16 | 234 | 233 | 232 | 1.00 | +-------------+---------+---------+---------+---------+ | ScrollY_256 | 234 | 233 | 232 | 1.00 | +-------------+---------+---------+---------+---------+ | ScrollY_Hi | 90 | 89 | 89 | 1.01 | +-------------+---------+---------+---------+---------+ | ScrollY_Tru | 43 | 43 | 43 | 1.00 | +-------------+---------+---------+---------+---------+ | PrintTxt16 | 4297 | 3893 | 3825 | 1.10 | +-------------+---------+---------+---------+---------+ | PrintTxt256 | 4317 | 3895 | 3799 | 1.11 | +-------------+---------+---------+---------+---------+ | PrintTxtHi | 4039 | 3676 | 3587 | 1.10 | +-------------+---------+---------+---------+---------+ | PrintTxtTru | 3034 | 2820 | 2763 | 1.08 | +-------------+---------+---------+---------+---------+ | RectFill16 | 14213 | 12257 | 12097 | 1.16 | +-------------+---------+---------+---------+---------+ | RectFill256 | 14180 | 12232 | 12094 | 1.16 | +-------------+---------+---------+---------+---------+ | RectFillHi | 8841 | 8068 | 8019 | 1.10 | +-------------+---------+---------+---------+---------+ | RectFillTru | 5361 | 5044 | 5027 | 1.06 | +-------------+---------+---------+---------+---------+ | DrwElpse16 | 5515 | 5287 | 5242 | 1.04 | +-------------+---------+---------+---------+---------+ | DrwElpse256 | 5515 | 5288 | 5242 | 1.04 | +-------------+---------+---------+---------+---------+ | DrwElpseHi | 5434 | 5223 | 5197 | 1.04 | +-------------+---------+---------+---------+---------+ | DrwElpseTru | 1920 | 1895 | 1901 | 1.01 | +-------------+---------+---------+---------+---------+ | DrwCircle16 | 5278 | 5075 | 5030 | 1.04 | +-------------+---------+---------+---------+---------+ | DrCircle256 | 5279 | 5073 | 5033 | 1.04 | +-------------+---------+---------+---------+---------+ | DrwCircleHi | 5172 | 4995 | 4970 | 1.04 | +-------------+---------+---------+---------+---------+ | DrCircleTru | 1831 | 1811 | 1803 | 1.01 | +-------------+---------+---------+---------+---------+ | WrtPixel16 | 77314 | 70620 | 69732 | 1.09 | +-------------+---------+---------+---------+---------+ | WrtPixel256 | 77500 | 70476 | 69669 | 1.10 | +-------------+---------+---------+---------+---------+ | WrtPixelHi | 77399 | 71228 | 70347 | 1.09 | +-------------+---------+---------+---------+---------+ | WrtPixelTru | 75764 | 63373 | 63006 | 1.20 | +-------------+---------+---------+---------+---------+ | HorLines16 | 21292 | 16861 | 17050 | 1.26 | +-------------+---------+---------+---------+---------+ | HorLines256 | 21291 | 16856 | 17031 | 1.26 | +-------------+---------+---------+---------+---------+ | HorLinesHi | 19413 | 15746 | 15902 | 1.23 | +-------------+---------+---------+---------+---------+ | HorLinesTru | 16469 | 13689 | 13796 | 1.20 | +-------------+---------+---------+---------+---------+ | VerLines16 | 13858 | 11782 | 11648 | 1.18 | +-------------+---------+---------+---------+---------+ | VerLines256 | 13891 | 11780 | 11704 | 1.18 | +-------------+---------+---------+---------+---------+ | VerLinesHi | 10872 | 9589 | 9532 | 1.13 | +-------------+---------+---------+---------+---------+ | VerLinesTru | 7483 | 6872 | 6843 | 1.09 | +-------------+---------+---------+---------+---------+ | DiaLines16 | 1507 | 1480 | 1485 | 1.02 | +-------------+---------+---------+---------+---------+ | DiaLines256 | 1507 | 1480 | 1484 | 1.02 | +-------------+---------+---------+---------+---------+ | DiaLinesHi | 1395 | 1376 | 1385 | 1.01 | +-------------+---------+---------+---------+---------+ | DiaLinesTru | 537 | 534 | 535 | 1.01 | +-------------+---------+---------+---------+---------+ | AreaElps16 | 234 | 191 | 191 | 1.23 | +-------------+---------+---------+---------+---------+ | AreaElps256 | 234 | 191 | 191 | 1.23 | +-------------+---------+---------+---------+---------+ | AreaElpsHi | 231 | 189 | 189 | 1.22 | +-------------+---------+---------+---------+---------+ | AreaElpsTru | 228 | 187 | 187 | 1.22 | +-------------+---------+---------+---------+---------+ | AreaCir16 | 219 | 180 | 180 | 1.22 | +-------------+---------+---------+---------+---------+ | AreaCir256 | 219 | 180 | 180 | 1.22 | +-------------+---------+---------+---------+---------+ | AreaCirHi | 217 | 178 | 178 | 1.22 | +-------------+---------+---------+---------+---------+ | AreaCirTru | 213 | 176 | 176 | 1.21 | +-------------+---------+---------+---------+---------+ | AreaFill16 | 329 | 327 | 326 | 1.01 | +-------------+---------+---------+---------+---------+ | AreaFill256 | 330 | 327 | 326 | 1.01 | +-------------+---------+---------+---------+---------+ | AreaFillHi | 322 | 320 | 319 | 1.01 | +-------------+---------+---------+---------+---------+ | AreaFillTru | 309 | 307 | 307 | 1.01 | +-------------+---------+---------+---------+---------+ | CPU/FPU Ergebnisse in MioOp/s | +-------------+---------+---------+---------+---------+ | MIPS | 66.29 | 66.22 | 66.22 | 1.00 | +-------------+---------+---------+---------+---------+ | MFLOPS | 26.50 | 26.50 | 26.49 | 1.00 | +-------------+---------+---------+---------+---------+ -------------------------------------------------------------------------- Use it with no warranty. Use it at your own risk. I'm using this options since seven days without problems. Dirk Busse