Afterburner

 

P

alm Hacks use a Hack Manager application for administration, and I use X-Master. X-Master has a great many useful (and silent) features, such as disabling Hacks when synchronising the device (so if you are installing any updated hacks, you don’t crash the Palm) and setting the order in which they must be run.

The principal hack I use is Afterburner.  Afterburner is a CPU (and RAM) optimiser and clock speed adjuster.  The Palm IIIxe’s Motorola processor has a factory specified clock speed of 16 MHz, but Afterburner allows you to specify any speed from 10 MHz all the way to 54 MHz.  Afterburner also incorporates several features, such as no wait states, which accelerates the Palm.  By optimising the CPU and RAM, but retaining the 16 MHz clock speed, the Palm runs approximately 36% quicker than normal.  You do notice this difference when using the Palm, and certain functions are much quicker.  However, to really notice a difference in running speed, playing about with the clock speeds is useful.  Afterburner allows you to specify different clock speeds for different applications, with an overall default clock speed for all applications without individual settings.

As you might expect, changing the clock speed of the processor has a direct influence on the performance of the Palm, but only to a certain point – beyond which the rest of the unit cannot keep up!  At clock speed over around 33 MHz, most software does not run any quicker than it does at 24 MHz (with a few notable exceptions).  In many cases, the difference between running an application at 16 MHz and 24 MHz is tiny.  This is because many PalmOS applications use minimal processor power and memory bandwidth - it’s only the more processor or memory intensive applications that benefit from higher clock speeds.

There are two major problems with overclocking the Palm, and one minor problem.  The first is that the faster the CPU runs, the more power it requires.  There is a noticeable difference in battery life if you clock the Palm to 24 MHz rather than 16 MHz.  The second major problem is that the serial connection will only work when the device is clocked either at, or pretty close to, the default clock speed.  In other words, either 13 MHz, 16 MHz or 20 MHz. In fairness, these are not problems as such, but they are something I need to be aware of.  Finally, the third issue with overclocking the Palm is that at higher clock speeds, it is not as stable as I would like.

Whilst it is useful to increase the running speed, and technically quite clever to do so, for the most part, the device is quick enough at the default factory speed.  With the CPU optimisation, most applications zoom along.  There is plenty of scope for reducing the clock speed, and saving battery power.  As such, almost all of my Palm applications are set to run at either 10 MHz or 13 MHz, depending on if I will use a keyboard with that application.  If I go away for any length of time and I leave my keyboard behind, I’ll also drop the default device speed to 10 MHz.

With a clock speed of 16 MHz and no CPU optimisation, the IIIxe records a benchmark rating of 100. With all CPU and RAM optimisations enabled, the IIIxe records benchmark figures of 88, 107 and 136 for 10, 13 and 16 MHz respectively.  Battery life, using high power rechargeable AAA batteries, is usually 14, 12 and 10 days for the three clock speeds.  When using the software, user time saved by overclocking is difficult to quantify. There are very few applications that make heavy demands on processor power and / or memory access.  AvantGo is probably the greediest Palm application I’ve used use.  A chart of the time taken to load the Yahdice top scores table page, with various clock speeds is shown here.  Note how the higher the clock speed, the quicker the operation takes, but go much beyond 20 MHz and you get a disproportionately small decrease in time for a large increase in clock speed.  There are lots of technical reasons for this, but rest assured that the DervMan’s Palm is demonstrating the law of diminishing returns.  Good, eh?

Finally, Afterburner is a sophisticated piece of software.  In addition to optimising the CPU and RAM of the Palm, and changing the clock speed of the processor according to blanket and individually tailored user preferences, it also features an automatic acceleration or deceleration feature.  These can be used to either speed the Palm up when there is plenty of battery power left (up to the user specified clock speed), or decelerate it to 10 MHz when power is running low (thereby extending battery life).  These two facilities are simple, yet surprisingly useful.  One problem with using these facilities is that, if the battery power falls below the preset level and the clock speed is bottomed to 10 MHz, the keyboard, infrared beaming and (depending on settings) Hotsync will not work.

Footnote

Unfortunately, Afterburner does not support the Super VZ family – the processor found in the Clié SJ33.