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 Entries > Release id #165080 : NuCrunch 1.0.0
2018-05-30 15:38
iAN CooG

Registered: May 2002
Posts: 3132
Release id #165080 : NuCrunch 1.0.0

Just a test of modern cross-crunchers (so no charpackers involved here) to confirm NuCrunch is really superfast. Still hard to beat exomizer, especially 3.0 got a significant speedup. ALZ64 here added just for the giggles, we all know it's good at crunching but the geological decrunch time makes it useful for 4k prgs only =)
Tested program:
Commando Arcade IFFL loader ($0800-$57c6, 20425 bytes)

Crunchers tested |  cycles to enter depacker + cycles to unpack&jmp  | size  |
------------------------------------------------------------------------------
NuCrunch/ChristopherJam v1.0            |  17506 +  930588 =  948094 | 10229 |
NuCrunch/ChristopherJam v1.0 /compact   |  13746 + 1169590 = 1183336 | 10106 |
Doynamite v1.1                          | 169341 + 1214990 = 1384331 |  9972 |
T.L.R. Subsizer 0.6 / dirty             |  16176 + 1697194 = 1713370 |  9764 |
ByteBoozer v2.0                         |   2390 + 1891207 = 1893597 |  9932 |
Crush / Taboo                           | 152802 + 1765952 = 1918754 | 10207 |
Exomizer v3.0                           |  15291 + 1908936 = 1924227 |  9703 |
T.L.R. Subsizer 0.6                     |  19524 + 2277169 = 2296693 |  9753 |
ByteBoozer v1.1C                        |    817 + 2317028 = 2317845 | 10184 |
Bongo Cruncher                          | 159120 + 2178246 = 2337366 | 10469 |
Exomizer v2.0.11                        |  16130 + 2776032 = 2792162 |  9687 |
PUCrunch                                | 177397 + 2926345 = 3103742 | 10113 |
LZMPi/MartinPiper v1.x                  |   6777 + 4318773 = 4325550 | 10187 |
ALZ64/Kabuto                            | 152598 +20549394 =20701992 |  9384 |
------------------------------------------------------------------------------

Tested program:
Enforcer2 demo ($0801-$e891, 57491 bytes)

Crunchers tested |  cycles to enter depacker + cycles to unpack&jmp  | size  |
------------------------------------------------------------------------------
NuCrunch/ChristopherJam v1.0            |  17753 + 3292526 = 3310279 | 34393 |
NuCrunch/ChristopherJam v1.0 /compact   |  14525 + 4192968 = 4207493 | 34270 |
Doynamite v1.1                          | 572875 + 4317341 = 4890216 | 34889 |
T.L.R. Subsizer 0.6 / dirty             |  16254 + 5655594 = 5671848 | 32884 |
Exomizer v3.0                           |  14875 + 6301935 = 6316810 | 32483 |
Crush / Taboo                           | 527344 + 6365208 = 6892552 | 35981 |
ByteBoozer v2.0                         |   2390 + 7084099 = 7086489 | 35000 |
T.L.R. Subsizer 0.6                     |  19602 + 7757446 = 7777048 | 32873 |
Bongo Cruncher                          | 513474 + 7781493 = 8294967 | 35425 |
ByteBoozer v1.1C                        |    817 + 8618624 = 8619441 | 35863 |
Exomizer v2.0.11                        |  15911 + 9301428 = 9317339 | 32507 |
PUCrunch                                | 599301 +10194559 =10793860 | 35856 |
LZMPi/MartinPiper v1.x                  |   6777 +14269565 =14276342 | 33566 |
ALZ64/Kabuto                            | 484054 +75151934 =75635988 | 30856 |
------------------------------------------------------------------------------


all timing taken with unp64 v2.34.
2018-07-16 12:14
ChristopherJam

Registered: Aug 2004
Posts: 1370
Same Enforcer2 preview with TinyCrunch 1.0:
TinyCrunch/ChristopherJam v1.0          |   2811 + 1729541 = 1732352 | 39372 |

Ratio's not so good, but depack is screamingly fast.


TC also works nicely as a second pass after Exo or NC for this one. (I suspect neither of the latter deal well with the unrolled loops in the original file):
NuCrunch+TinyCrunch                     |  20554 + 3533694 = 3554248 | 32375 |
Exomizer v3.0+TinyCrunch                |  18725 + 6540025 = 6558750 | 31163 |
2018-07-17 18:02
iAN CooG

Registered: May 2002
Posts: 3132
for unrolled loops Rowscruncher V1.0 does miracles, sometimes even better than ALZ64
2018-07-18 10:31
Krill

Registered: Apr 2002
Posts: 2821
And i'd say if you put unrolled loops in your binary and expect some cruncher to fix that mistake for you, you're doing it wrong. :)
2018-07-18 13:09
Raistlin

Registered: Mar 2007
Posts: 548
@Krill: while I agree that self-generating code on C64 side is -usually- best, and what I've previously used for most of my demos (in the 80s), there are some advantages to unrolling code pre-compile that are too time-consuming to do on a C64.
2018-07-18 13:57
Krill

Registered: Apr 2002
Posts: 2821
I'd wager that even then, you can distill the pre-compiled code to something that is both space-efficient and quickly inflatable to native machine code. But yes, then the line becomes somewhat blurry between this very custom encoding and something slightly more generic like Rowscruncher. :)
2018-07-18 20:29
TheRyk

Registered: Mar 2009
Posts: 2047
of course code generators SHOULD be first choice.

what keeps making me use unrolled stuff time and again is mostly mere laziness and 64k being far too much RAM in many situations

And what's more, experience often showed: yeah, I'm a super coder and wrote a code generator and saved so-and-so-much RAM which makes me feel mighty 1337 \o/
but when you crunch the unrolled stuff and the stuff with the fancy code generator that twisted your brain for some hours, there's quite often not one block difference in crunched size which makes you go meh... (unless you're really in a situation where you make good use of the target area of RAM where your stuff is generated)
2018-07-18 21:17
Raistlin

Registered: Mar 2007
Posts: 548
Exactly. But it goes even further than that .. when you're using something like an IRQ loader, loading of that code in a trackmo is usually done in the background of another demo part anyway... so the balance there just comes down to disk space vs time taken to code... is it best to spend time writing a great code-generator or to write more demo effects..?

Coding intros is a different matter of course.
2018-07-18 21:39
TheRyk

Registered: Mar 2009
Posts: 2047
yup, and especially in trackmo parts the cycles wasted to generate whatever code are not significantly less than decrunching time
2018-07-18 22:37
chatGPZ

Registered: Dec 2001
Posts: 11089
you are not using enough CPU for your effect when that is true :=)
2018-07-18 22:44
Raistlin

Registered: Mar 2007
Posts: 548
True - but that’s why we make filler parts :-p ... bounce a triangle across the screen, move some raster bars around for a bit... anything to detract the viewer from the whirring of their disk drive :-)
 
... 2 posts hidden. Click here to view all posts....
 
Previous - 1 | 2 - 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
Slaxx/Q/HF
t0m3000/ibex-crew
kbs/Pht/Lxt
celticdesign/G★P/M..
daimansion
Scooby/G★P/Light
Guests online: 191
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 Wonderland XIV  (9.6)
9 The Ghost  (9.6)
10 Bromance  (9.6)
Top onefile Demos
1 It's More Fun to Com..  (9.9)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 Rainbow Connection  (9.5)
6 TRSAC, Gabber & Pebe..  (9.5)
7 Onscreen 5k  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Nostalgia  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top Diskmag Editors
1 Jazzcat  (9.4)
2 Magic  (9.4)
3 hedning  (9.2)
4 Newscopy  (9.1)
5 Elwix  (9.1)

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