Developers Say the PACE Is Fast Enough
The biggest change in Palm OS 5 is the switch from Dragonball processors to ARM-based ones. This change would have required all developers to rewrite all their applications but PalmSource knew this would be a disaster for the platform so it created the Palm Application Compatibility Environment (PACE), which interprets the instructions of existing applications designed for the Dragonball processor, and makes them run on the ARM processor. There has been some concern in the Palm community that this would make OS 5 run slower than OS 4. According to developers, this isn't the case.
PACE does not emulate the 68k Dragonball chip or other hardware, nor does it run the old operating system. Instead, it interprets the 68k instructions itself, and handles 68k trap instructions (used by applications to call OS APIs) by making calls into the native Palm OS 5 system. All the OS level calls are implemented in pure ARM code, so the OS itself is running at full ARM speed.
Palm OS 5's speed will depend greatly on what processors are being used. There are quite a few ARM-based chips available to be included in OS 5 handhelds and these range widely in speed. However, the slower processors are likely to be used only on low-end devices while the first handhelds available with OS 5 will almost certainly be high-end ones. According to rumor, Palm's first OS 5 handheld will use the 175 MHz OMAP1510 from Texas Instruments.
Still, some people are worried that OS 5 will actually be slower than OS 4. However, developers that have been able to run their applications on test boards running the new operating system aren't worried.
Unfortunately, what they can say about performance on specific hardware is constrained by non-disclosure agreements. Still, several people were able to say enough that most people's fears should be allayed.
Howard Tomlinson, the CEO of Astraware, said "From the OS 5 demos done by David Fedor at both this PalmSource Developers Conference and the one before using a demo board he had there, you can be sure that PACE will run quite adequately for all normal apps. The Zap!2000 that he showed running on it had quite a bit of custom 68k in there instead of OS calls for graphics, and that was running faster than on a normal device, so I think you can safely see that 'good' apps that call into the OS will run at least as well as on current devices, and those that are 'bad' and bypass the OS to do custom code should still be fine."
Aaron Ardiri from MobileWizardry. said, "We ran tests with Lemmings at PalmSource, and PACE was emulating faster than the API's were being implemented natively."
"PalmSource themselves showed our "pie draw function" implemented under Palm OS 4 (OS 5 compliant) running on a PACE board to illustrate the incredible speed most operations now will zip along at that were sluggish ," said Mike Compeau, VP of Business Development & Planning, Cutting Edge Software. "We are confident that those customers lucky enough to buy a copy of Quickoffice for their NEW OS 5 device will NOT have in any way a bad experience due to PACE implementation."
Despite this encouraging news, there is still room for improvement. OS 5 doesn't allow developers to write completely ARM-native applications, though they can include small bits of ARM code called ARMlets. The next version of the Palm OS, generally referred to as OS 6 though PalmSource hasn't officially given it a name, allows true ARM native apps. According to PalmSource, code that has been recompiled for ARM-based chips is 61 times faster on a 200 MHz ARM processor compared to a 33 MHz Dragonball one.
I wanted to say thanks to all the developers who helped out with this article. -Ed
Related Information:
- PalmSource: More Info on PACE
- PIC: Palm OS 5 Goes Golden Master
- PIC: Rumor: Next-Gen Palm Handheld to Use OMAP1510
- PIC: Palm OS Forum
Article Comments
(61 comments)
The following comments are owned by whoever posted them. PalmInfocenter is not responsible for them in any way.
Please Login or register here to add your comments.
Comments Closed
This article is no longer accepting new comments.
I'm confused. why bother with ARM if no native compiling
and there probably will be no budget model as someone said somewhere. i will be keeping my palm III (gparents go free from charity shop) for some time longer it seems, nothing is complety worth it yet...
RE: I'm confused. why bother with ARM if no native compiling
RE: I'm confused. why bother with ARM if no native compiling
RE: I'm confused. why bother with ARM if no native compiling
RE: I'm confused. why bother with ARM if no native compiling
Michael
RE: I'm confused. HOW IT WORKS
- If no native ARM can be programed (i dont know anything about programing palm so dont get mad) so the only reason to get it would be hi res, multimedia, some optimised stuff, but no native ARM would make it a bit pointless? the clie has all but the optimised stuff.
if (detectARM processor)
execute native arm code
else
execute m68k code (as normal)
thats how you will maintain compatibility, and, take advantage of the additional processing power where ARM code can be used natively. palmos 5.0 apps should technically run on both old and new hardware provided that both code portions are made available.
// az
aaron@ardiri.com
http://www.ardiri.com/
http://www.mobilewizardry.com/
RE: I'm confused. why bother with ARM if no native compiling
-------------- huggy ---------------
RE: I'm confused. why bother with ARM if no native compiling
Yes, its me.
Why can't you have the best of both worlds?
***AND***
2. Completely NEW OS5 ARM Native Apps
?????
Just like a PC running Win2000 can mimic old DOS to run old DOS programs.
I'm confused as to why this isn't possible. Sorry if I am missing something.
RE: I'm confused. why bother with ARM if no native compiling
You are right though. OS6 or whatever it's called is the real one.
RE: I'm confused. why bother with ARM if no native compiling
By doing this, they are ensuring that most of the new OS5 software will run on older Palm devices. Also, the developers will need some time to get used to the new ARM coding. If you limit what they can do now you can control the stability of the system.
And maybe they haven't decided how full blow ARM apps should behave. They may be keeping everything tighten down until they finish the BeOS enhanced version of the PalmOS with multitasking etc... This keeps forward compatiblity.
- JV
best of both worlds
- I'm confused as to why this isn't possible. Sorry if I am missing something.
sure, you could always build two different versons of your applications (arm + 68k) - developers do this these days when it comes to color and grayscale versions of their applications. but, you must ask yourself why?
ok, first obvious answer is - you save memory (no redundant code). this is important, however, it is much more important for any joe blo user to come along and install your application, without having to say "hey, this doesn't work" simply because they installed the wrong version of your application. application developers can make their applications smart, even to the point of saying "hey, i am on an ARM unit - i can delete the 68k stuff now" (which, will prevent it from being beamable)... heaps of ideas.
to give a perfect example of the bad - consider PPC. users are not the smartest people in the world (if only some of you knew) - and, developers are not always the best at explaining things :) PPC had a huge problem with CPU types.. install the MIPS version, the ARM version, the SH3 version.. this sucks. to make it worse, palm is not going to label their units as an ARM unit, it will be a palmos unit. so, unless users know what is inside their devices - they wont know if it is a ARM or m68k CPU inside.
// az
aaron@ardiri.com
http://www.ardiri.com/
http://www.mobilewizardry.com/
RE: I'm confused. why bother with ARM if no native compiling
It's more important that they get OS 5 out the door ASAP.
Performance consistency
This looks VERY promising. Hopefully we will see some revolutionary changes in OS6, such as a dedicated gaming API. One thing is clear...the best days are ahead for PalmOS! :-)
PACE vs Native API
- Howard Tomlinson, the CEO of Astraware, said "From the OS 5 demos done by David Fedor at both this PalmSource Developers Conference and the one before using a demo board he had there, you can be sure that PACE will run quite adequately for all normal apps. The Zap!2000 that he showed running on it had quite a bit of custom 68k in there instead of OS calls for graphics, and that was running faster than on a normal device, so I think you can safely see that 'good' apps that call into the OS will run at least as well as on current devices, and those that are 'bad' and bypass the OS to do custom code should still be fine."
Aaron Ardiri from MobileWizardry. said, "We ran tests with Lemmings at PalmSource, and PACE was emulating faster than the API's were being implemented natively."
there is a bit of confusion between "good" and "bad" here. just because the use of API's doesnt happen - it doesn't mean "bad". in many cases, the API's that PalmSource provide are full of error checking, special case scenarios, "what if..." type code. this slows things down. when i make a statement that PACE was emulating faster than the native ARM API's - it is due to the fact that we have taken the API, and, optimized it specifically to what we want; taking into account known issues/scenarios such that the additional error checking is not required. these routines are also going to be faster if converted to native ARMlets (which, in our case, we didn't need to do).
applications that use API's will notice no speed problems at all, and, in many cases are much faster than previously witnessed on the m68k units.
i should note that the only true BAD thing to do is to access the screen buffer directly. in our tests and research into ARM units - doing so will not crash your application however it will not show what you want. endiness and alignment are two serious issues. when copying to the screen, we use an API to ensure compatibility on hardware we are not aware of. this is what allows our applications to remain forward compatible.
- Despite this encouraging news, there is still room for improvement. OS 5 doesn't allow developers to write completely ARM- native applications, though they can include small of ARM code called ARMlets. The next version of the Palm OS, generally referred to as OS 6 though PalmSource hasn't officially given it a name, allows true ARM native apps. According to PalmSource, code that has been recompiled for ARM-based chips is 61 times faster on a 200 MHz ARM processor compared to a 33 MHz Dragonball one.
we were fortunate to get our deity3D engine running on an ARM testing board at PalmSource and, since it uses a LOT of m68k code and close to no API's; it ran like a dog. :) deity3D [test version] ran at around 3-4 frames per second without as-is (as compared to 15-16 frames per second on a 33Mhz 68k). this is a classic example of where the use of ARMlet code will sufficiently speed up the execution time - but, not many developers will be required to do this.
PalmSource provides a lot of information to developers - and, this is great. now, off we go to convert those 25000+ lines of assembly to C so we can be ready for the new hardware when it is released. i would recommend the PACE link about for users who want to know how it will work under the "hood" - its an interesting read.
// az
aaron@ardiri.com
http://www.ardiri.com/
http://www.mobilewizardry.com/
RE: PACE vs Native API
Question: What is your overall impression of OS5?
RE: PACE vs Native API
- Question: What is your overall impression of OS5?
its palmos 4.1 + extra features *g*
there is not to get excited about in regards to the OS. its the same :) now, when your talking about the ability to run applications that were not possible before? the level of excitement is roughly that when palm upgraded their m68k CPU's from 16 Mhz -> 20 Mhz -> 33Mhz :) more processing power just means you can do more now - the os itself hasn't changed much. its still, as we know, zen of palm :)
// az
aaron@ardiri.com
http://www.ardiri.com/
http://www.mobilewizardry.com/
RE: PACE vs Native API
RE: PACE vs Native API
- ardiri, you are not getting me too excited
should i be? what do you expect me to say - that it'll have a fully blown multitasking operating system with a BeOS interface? lets not forget that this is a PDA - it will continue to function as a PDA. the improvements are definately great - but, i wouldn't go spend a million dollars in stock for it. it is definately a step in the right direction, without overstepping. palm is doing the right thing here.
// az
aaron@ardiri.com
http://www.ardiri.com/
http://www.mobilewizardry.com/
RE: PACE vs Native API
Is there a reason, PDA does not follow the general computing tradition since the beginning of mainframe? Is there a reason why PDA doens't need to be as secure, stable and able to handle computing intensive application in the era of video transaction over wireless?
People are already using PDA as a launching pad to attack network or turning PDA into a full access internet tool.
So your commment are only fitting in the era of beep beep computer game and connected organizer.
RE: PACE vs Native API
RE: PACE vs Native API
- Well, Im sure Aaron will apologise to the .01% of Palm users that do all that (with considerable cost and difficulty), for hurting your feelings with his harsh comments :)
heh, but realistically - you sure it is .01%? i would guestimate more likely 0.0001% based on sales figures *g*. palm did a great thing with 5.0, the real true move to arm will most likely occur in 6.0. palm has put priority on its users, compatibility is one of the major success stories of Palm - its good they still keep this motion going.
while we would all like a dual athlon system with 1 gig of ram and 200 gigs of harddrive space in the space of a PDA - we all know this is not going to happen in such a rush; want to plug it into a power socket? palm is balancing power and battery consumption - expanding its horizons looking forward and competing with PPC.
palmos 5.0 runs very fast natively, and, the technology palm uses to ensure compatibility with older m68k applications is also quick - most people will be happy with the migration. yes, you'll see enhanced audio, higher resolutions, networking support, internet/wireless capabilities; but, it'll still be the good old palmos we all learned to get attached to because of its simplicity.
you will see mp3, mpeg, divX players - i am sure of it. the technology isn't that limiting; it just makes the possibilities more broader.
// az
aaron@ardiri.com
http://www.ardiri.com/
http://www.mobilewizardry.com/
Developers Say the PACE Is Fast Enough
I'm Just wondering if palmsource has any plans to include an advanced version of grafitti. After all, with 200mhz of cpu speed, im sure you could write something that would kick JOT's @ss:) Do we still have to look for third party apps? I tend to dislike using third party inputs becos they tend to interfere with the functionality of some programs occasionally.
Would appreciate it if you or someone else with some info would respond.
Kumaresan Balakrishnan
aka stingray
"May the potato be with you!"
Additional Comments from Ed
In addition, I wanted to point out that I spoke to more developers than were quoted in this article and not a single one of them had any concerns about how quickly PACE and OS 5 would work. I was looking for at least one opposite opinion to make the article more balanced but I couldn't find one.
---
News Editor
RE: Additional Comments from Ed
Off-topic question: Have you dug up any new info on the "Oslo"?
RE: Additional Comments from Ed
One thing holding up the Oslo article is I can't get anyone to talk about RAM. I may run it tomorrow without this info.
---
News Editor
RE: Additional Comments from Ed
On the other hand, it also makes PalmOS5 an awkward beast: while the OS may run faster, CPU intensive application code will likely run slower. Is that worth upgrading? I don't think so.
RE: Additional Comments from Ed
Of course its worth upgrading. 3 reasons:
1 - New software and new versions of existing software will take advantage of ARM using 'Armlets' for precisely the sort of "CPU intensive application code" that you mentioned.
2 - Palm OS 5 ARM devices with FlashROM can be upgraded to OS 6 - which is where the real push in term of native ARM will happen.
3 - Native hi-res and audio support in OS 5 means new software that will support these features as standard.
...maybe its just me but these are all excellent reasons to upgrade. i love games and multimedia type apps, so OS 5 devices are exactly what im waiting for.
RE: Additional Comments from Ed
its nothing bad...in fact its kinda cool...but im just wondering if you knew.
"May the potato be with you!"
RE: Additional Comments from Ed
its nothing bad...in fact its kinda cool...but im just wondering if you knew."
If I'm not mistaken, "Foo Fighter" was the name given to UFOs by World War II aviators.
RE: Additional Comments from Ed
"May the potato be with you!"
RE: Additional Comments from Ed
meaning that they never believed that UFO's were ALF's?
Multimedia apps etc.
Does the NDA prevent developers from speaking about forthcoming OS5 apps? I ask this because I have seen several developers advertise their current apps as OS5 ready. The sneak peak page for Launcher X even shows a partial snip of this app running in high-res in OS5. If I was a programmer I would want to get people stirred up over my OS5 ready mp3/wav/wma/ogg/etc player due out in the fall as an example.
RE: Multimedia apps etc.
--
CodeWarrior for Palm OS technical lead
Programming help at www.palmoswerks.com
RE: Multimedia apps etc.
Its hard to get excited about ARM processors unless software for things like mp3 and better video will be a reality at the time devices like the Oslo ship.
Sounds like Classic & OSX
It's a good idea for users to be able to use older apps still on their new OS5 devices. But it looks like OS6 will be the ultimate upgrade for Palm users. Of course if Palm is still alive and nothing happens bad before then.
It's nice to have some more info on OS5, Ed. Now we need some secret pics of these devices. We'll see if it's all worth it in the next couple of months.
RE: Sounds like Classic & OSX
Maybe Palm will start running those "Switch" commercials too?
RE: Sounds like Classic & OSX
RE: Sounds like Classic & OSX
There are no publicly available toolchains to create ARM native application for PalmOS yet (just gcc for armlets, you get to roll your own linker...).
Click here for the full story discussion page...
Latest Comments
- I got one -Tuckermaclain
- RE: Don't we have this already? -Tuckermaclain
- RE: Palm brand will return in 2018, with devices built by TCL -richf
- RE: Palm brand will return in 2018, with devices built by TCL -dmitrygr
- Palm phone on HDblog -palmato
- Palm PVG100 -hgoldner
- RE: Like Deja Vu -PacManFoo
- Like Deja Vu -T_W
This sounds good enough for me (just a Palm-user)
For the developers it is a good way of getting used to the new processors and the succes of PalmOS PDA's is based on the software base. Powerusers (whatever that may be on the Palm-platform) will have to wait until OS 6.
Greetings, Roel.