PalmOS Device

Processor Speeds

 

P

almOS 4·x (and lower) devices use derivatives of the Motorola / Freescale Dragonball processor, clocked at a variety of speeds from 16 MHz up to 66 MHz.  The Dragonball, or MC68328, is based on the 68000 processor core, which powered the Amiga 500 and Atari ST back in the day.  The 16 MHz model is reputed to be capable of 2∙7 MIPS (million instructions per second), which is slightly quicker than my old Amiga A1200 with additional fast RAM.  The 66 MHz DragonBall Super VZ clocked at 66 MHz is reputed to be capable of 10∙8 MIPS.  These raw computing numbers pale in comparison with the reputed 800 MIPS for the 624 MHz version of the Intel (now Marvell Technology Group) XScale PXA270 processor, also used in PDAs.

 

Faster is Better?

For these types of device and the majority of users, it’s important to establish that raw computing power is simply not required.  PalmOS is a resource-efficient operating system, at least compared with the Microsoft offerings of Windows on a desktop or PDA platform.  Comparing the 66 MHz Super VZ processor with the 16 MHz or 20 MHz devices, yes, the Super VZ is quicker – but most of the difference is down to the screen refresh rates.  The user isn’t exactly kept waiting for most applications.  When using Graffiti with the ROM applications, the Palm IIIxe can keep up even when underclocked to 10 MHz and all CPU optimisations switched off.

What is of more relevance is how quickly the device can keep the screen up to date.

Wait States

The Dragonball EZ uses “wait states” when accessing memory.  This, essentially, means that the processor hangs around for a little bit before it continues to access memory.  By removing the wait states, you can accelerate the performance by a significant amount - ten to twenty percent.  The later Dragonball VZ doesn’t appear to use wait states, so running something like Cruise Control, or using the relevant Afterburner settings, appears to make no difference to processor performance.

Clock Speed

In simplistic terms, the clock speed of a given processor family determines the speed of the chip.  Although ultimately, the operating speed of the device is determined by other factors (including the speed of memory access and the screen speed), processor performance has a major impact on the overall running speed of the device.

By changing the clock speed of the device, you change the speed at which the processor handles data.  Increasing the clock speed will accelerate the chip, whereas reducing the clock speed will reduce the performance.

Taking the Palm IIIxe as an example, which is clocked at 16 MHz at the factory, increasing the clock speed from 16 MHz to 20 Mhz will produce a theoretical processor performance increase of 25%, in other words, at the new clock speed the processor’s performance should be 125% of the original speed.

Similarly, reducing the clock speed from 16 MHz to 13 MHz should reduce the processor’s speed down to 81¼% of the original speed.

It is also true that both the power consumption and the heat produced by the processor is determined by the clock speed.  The higher the clock speed, the greater the power consumption and the heat output from the processor.

It is important to consider that although the power consumption of the processor follows a broadly linear relationship with the clock speed, the power consumption of the overall device will follow a different rule.  If the clock speed is set to be too low, the processor will be working hard for a long with the user being unable to do anything - thus the screen will be switched on for a longer period than necessary.  This is especially significant where the device relies on a backlight, and you are performing a processor-intensive operation!

The Results

It’s important for me to establish that every PDA is more or less unique, and if you’re attempting to obtain the following benchmarks with what appear to be identical devices, you may or may not get quite the same results.

Palm IIIxe – Clock Speed Comparison

This table illustrates the relative performance of the Palm IIIxe’s Dragonball EZ processor – with all other optimisations activated – with clock speeds between 10 MHz and 24 MHz.

Clock Speed (MHz)

10

13

16

20

24

BenchMark 2·0

88%

113%

145%

178%

220%

Speedy 2·0

61%

77%

99%

121%

149%

yCPU scrn_write

645 Kbs-1

879 Kbs-1

1126 Kbs-1

1379 Kbs-1

1702 Kbs-1

 

 

Click here to see the Benchmark 2·0 scores illustrated on a graph.

Palm IIIc – Device Optimisation

This table below illustrates the impact of processor and memory acceleration on the Palm IIIc.  In order to optimise the device, we remove all wait states and use the Fast MPx and Fast Page modes in Afterburner.

Device

IIIc Standard

IIIc Optimised

Accel-

eration

BenchMark 2·0

127%

188%

48%

Speedy 2·0

105%

119%

13·3%

yCPU scrn_write

898 Kbs-1

1000 Kbs-1

11·4%

 

 

 

As you can see, three different benchmarking applications report different levels of overall system acceleration, and the tangible acceleration is almost certainly somewhere between 11·4% and 48·0% - it’s enough to notice that the unit is a bit quicker, but not by much.  From my experience with my Dragonball EZ devices, this fits in – you do notice a tangible performance improvement, but it’s not especially significant.  However, as “something for nothing,” it’s worth doing.

One point to make is that the IIIc’s screen write speed is sluggish as standard – just under 900 Kbs.  That’s only marginally quicker than the optimised IIIxe underclocked to 13 MHz.  This explains why the IIIc feels sluggish in use: the user is waiting for the screen to redraw.

Overall Device Comparison

Device

IIIxe Optimised

IIIc Optimised

m515 Standard

Visor Pro Standard

m130 Standard

SJ33 Standard

Benchmk 2·0

145%

188%

156%

160%

156%

273%

yCPU scrn_write

1126 Kbs-1

1000 Kbs-1

3710 Kbs-1

1568 Kbs-1

1815 Kbs-1

30117 Kbs

yCPU ManBrot32

21·89 s

17·09 s

12·78 s

15·31 s

13·5 s

7∙94 s

 

 

 

The Benefits Of A Quicker Processor

I’ve thought long and hard about this and I’ve reached the conclusion that whilst there is a certain advantage to having a quicker processor under the hood of the PalmOS device, but in the majority of cases it shouldn’t be a deciding factor in buying one.  It’s the opposite with a Windows Mobile device: you really do want that 500 MHz processor!

The Palm IIIxe is a good example of a relatively slow device.  With the help of memory and CPU optimisation, it’s quick enough to deliver good enough performance for almost all applications.  By this, I mean that I’m not noticeably kept waiting for the device.  The exceptions are when handling with large spreadsheets or word processor documents using QuickOffice.  Some scrolling activities can be a little bit slow, but not too bad.

The Palm IIIc has an ostensibly quicker processor, but the effect is often negated by a slower screen.  In most circumstances, there’s very little between the two devices, the exception being the noticeably quicker recalculation of spreadsheet files, but the slower screen redraw in certain games.  But the slower screen redraw is only noticeable if you’ve used other PalmOS devices...

The Palm m515 has a dedicated display chip and this shows in the dramatically quicker Screen Write figures.  It’s 3·7 times quicker than the Palm IIIc, and this means that you very, very rarely have to wait for the screen.  So although the processor is quoted as being slower than the IIIc, in the real world the device feels a lot snappier.

The Sony Clié SJ33 is benchmarked at the fastest DragonBall PalmOS device.  It blazes through the benchmarks above, being nearly twice as quick as the 33 MHz DragonBall VZ powered devices – just as you’d expect from a 66 MHz DragonBall Super VZ powered device.  However, where the SJ33 really shines is in its screen performance.  Over 30,000 Kbs compared with the m515’s 3,700 Kbs!

The Benchmarking Applications

Benchmark 2·0

© Neal Bridges, results taken from 2·0 (d’oh!), where a score of 100% is that of the Palm IIIxe.

Speedy

©Laurent Duveau, http://www.aldweb.com/, results taken from v3·1, where a score of 100% is that of the Palm Vx.

YCPU

©2002 RH Nicholson, all tests were computed using version 0·8i.