Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > CSDb Discussions > Loader Benchmarks
2020-05-04 13:51
Sparta

Registered: Feb 2017
Posts: 35
Loader Benchmarks

I do not intend to stir up the mud, but it’s been 5 years since the performance of commonly used fast loaders was last compared in this thread. Since then, Lft has updated Spindle, Krill has practically rewritten his loader, HCL has released ByteBoozer 2.0, Bitfire is past version 0.6, and I have released Sparkle (AKA “Chinese clone” :D, apologies to the Chinese sceners). I have been running tests for my own entertainment and figured I’d update Bitbreaker’s benchmark with the latest loader versions using his test files.

The graph below compares the following loader+packer combinations: Sparkle V1.4 and Spindle 2.3 using their own packers, Krill’s loader v184 with TinyCrunch 1.2 (TC), Bitnax (BN), and ByteBoozer 2.0 (B2), BoozeLoader 1.0 with ByteBoozer 2.0, and Bitfire 0.6+ downloaded from GitHub on April 9, 2020 with Bitnax. The sole purpose of this benchmark was to examine how fast these loaders can load and decompress 728 blocks of data in 18 files under different CPU loads (i.e. it does not test disk zones separately). I spent quite some time optimizing each loader’s performance as much as I could with preliminary trial runs in VICE with warp mode to find the best parameters. Thus, Spindle disks were built with the fast serial transfer protocol and in the case of Sparkle, Krill’s loader, Bitfire, and BoozeLoader, a custom interleave was implemented. Finally, the disk drive’s motor was left running during the tests with BoozeLoader and Bitfire. For each test I used the interleave that proved to be the fastest in the preliminary runs. All tests were performed the same way: the executable installs the loader and loads a small program from track 1, sector 0 (this way, seek time to track 1 is not included in the test) with a raster IRQ routine that blocks 0%, 25%, 50%, or 75% of the screen while loading and depacking. None of the files are loaded under the I/O area. Sparkle packed the files from 728 blocks to 442 (60.7%), Spindle to 456 (62.6%), TinyCrunch to 447 (61.4%), ByteBoozer and Bitnax to 390 blocks (53.6%). D64 images were transferred to the same floppy using Luigi Di Fraia’s IECHost connected to a 1571 disk drive. Each column in the graph represents the average ± 2SD of 10 consecutive tests on my C64C PAL + 1541-II disk drive combo (except for Krill+ByteBoozer in which case for some reason the test crushed 3 times requiring additional runs).



Interleaves (note: the files only occupy the first two speed zones on the disk):
Loader		0%		25%		50%		75%
Sparkle		4-4-4-4		5-4-4-4		7-4-4-4		7-4-4-4
Spindle		default		default		default		default
Krill		4-4-4-4		5-4-4-4		7-7-7-7		11-10-10-10
Bitfire		5-5-5-5		6-6-6-6		9-9-9-9		6-6-6-6
BoozeLoader	4-4-4-4		5-5-5-5		7-7-7-7		11-11-11-11

Feel free to interpret the data the way you want. Obviously, the authors of the other loaders and packers are way out of my hobby coder league, so I will not attempt to draw conclusions or pretend to have answers. But if anyone is interested, I’d be happy to share my test disk images and spreadsheets. Also, let me know if you want to see any other loader’s performance in the benchmark.

Finally, I am sure many of us do similar tests, so please feel free to post you own benchmarks with some description here.

Cheers, stay healthy and safe,
Sparta/OMG
 
... 14 posts hidden. Click here to view all posts....
 
2020-05-05 10:01
Oswald

Registered: Apr 2002
Posts: 5007
nice to see the competetiveness still in you guys :D
2020-05-05 10:58
Krill

Registered: Apr 2002
Posts: 2804
Quoting HCL
I don't like representing the brown column in those graphs, it's not my preferred choice of color and does not reflect to Booze Design in general. .. ;)
Which of the 16 shades of brown we have on display is your preferred choice, then? :)
2020-05-05 18:05
Sparta

Registered: Feb 2017
Posts: 35
Quoting HCL
I don't like representing the brown column in those graphs, it's not my preferred choice of color and does not reflect to Booze Design in general. .. ;)

OK HCL, tell me the color of your Booze and I will... Never mind. ;)
2020-05-07 10:29
HCL

Registered: Feb 2003
Posts: 716
Despite the brown.. It would be kinda interesting to see the compression ratio in this comparison. I guess the three to the left are all using crippled compression due to tiny search window, or?
2020-05-07 11:06
Krill

Registered: Apr 2002
Posts: 2804
Quoting HCL
Despite the brown.. It would be kinda interesting to see the compression ratio in this comparison. I guess the three to the left are all using crippled compression due to tiny search window, or?
OP did mention the compression ratios for this particular corpus.

And for tinycrunch, look here: https://codebase64.org/doku.php?id=base:compression_benchmarks - it's in the 60% compressed size cluster, while ByteBoozer 2 is in the 45-ish% cluster.

But for demos, compression ratio doesn't matter so much as overall throughput. Disk images are cheap. :D
2020-05-07 11:21
Frantic

Registered: Mar 2003
Posts: 1626
Flipping disk( image)s when watching demos is hard work though.
2020-05-07 13:18
tlr

Registered: Sep 2003
Posts: 1701
Quote: Flipping disk( image)s when watching demos is hard work though.

Not compared to serial party copying using 15 Seconds Copy 35 Tracks V2.36 after being awake 48 hours. ;)
2020-05-08 12:26
Danzig

Registered: Jun 2002
Posts: 428
Quote: Not compared to serial party copying using 15 Seconds Copy 35 Tracks V2.36 after being awake 48 hours. ;)

Avantgarde houseparty 1995: Robocop and Jack Alien copying box after box after box... 25y ago already...
2020-09-20 14:49
Raistlin

Registered: Mar 2007
Posts: 548
Worth noting that the end part of Memento Mori would never have been possible if it wasn’t for the performance of Sparkle. We originally had this part running at 16.666fps (1 pixel per 3 frames). But, with Sparta’s help and the new versions of Sparkle, we were able to push it that little bit more and get 25fps (1 pixel per 2 frames).

I can’t speak enough volumes about how good this loader is. It’s really a game changer for us.

That said, it’s not just about the loader. You can’t just throw data at these loaders and expect them to do magic. Having Sparta analysing the loading patterns for us, working out the best interleave methods, the best data forms to get the best from the compression, etc etc.. that was all incredibly invaluable.
2020-09-20 15:44
Krill

Registered: Apr 2002
Posts: 2804
Now, if only i weren't busy working on that new kind of fastloader, i'd update the IRQ loader to catch up in that benchmark (also found some new tricks on the way).

But alas, first things first. :)
Previous - 1 | 2 | 3 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Dymo/G★P
Guests online: 292
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 No Bounds  (9.6)
6 Comaland 100%  (9.6)
7 Uncensored  (9.6)
8 The Ghost  (9.6)
9 Wonderland XIV  (9.6)
10 Bromance  (9.6)
Top onefile Demos
1 Party Elk 2  (9.7)
2 Cubic Dream  (9.6)
3 Copper Booze  (9.5)
4 Rainbow Connection  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Onscreen 5k  (9.5)
7 Dawnfall V1.1  (9.5)
8 Quadrants  (9.5)
9 Daah, Those Acid Pil..  (9.5)
10 Birth of a Flower  (9.5)
Top Groups
1 Booze Design  (9.3)
2 Nostalgia  (9.3)
3 Oxyron  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Organizers
1 Burglar  (9.9)
2 Sixx  (9.8)
3 hedning  (9.7)
4 Irata  (9.7)
5 MWS  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.058 sec.