CherryPal, Take Two
It’s kind of funny to me that there are actually computer conspiracy theorists out there who think the CherryPal really doesn’t exist and those of us reviewing it are making it all up because we don’t have actual video of the computer in action. Well, pardon me, but I don’t have a video camera – I’m a writer, not a cinematographer! (I’m a doctor, not a mechanic, Jim!)
The CherryPal is slowing getting shipped out to those “on the list” – whether Brand Angels or those ordering the machine. There have been some other reports of glitches – people not being able to login or other bugs. Most people who get one seem to have no problem with it out of the box, fortunately, but this is definitely a machine that has some kinks to be worked out.
My thoughts on the CherryPal upon further use:
Pros: I love how absolutely quiet the machine is. I love the small footprint and the “green” aspect of saving on electricity. I love having a no-nonsense Linux box without hassling with Windows or a lot of bloatware. So on the whole, I’m really hoping that we see more machines like this in the future.
Cons: The CPU is woefully underpowered for the software. Upon testing, I discovered that the CPU often runs at about 100% just to load a large web page. Really complicated web pages can freeze the machine, even when using a leaner browse such as Epiphany. I have yet to test video on the box, but I’m not hopeful what with the current performance. I’m wondering why they went with Xubuntu as the OS instead of a more optimized Linux distro such as Puppy Linux.
Given the limitations of the CPU, I would not be able to replace my regular computers with the CherryPal at this time. I do plan on using the CherryPal, however, for writing and checking online email. I often leave my computer on all day as I like to go back and forth from the computer, and I’d much rather leave on the low-powered CherryPal than my laptop, so I don’t burn out the laptop earlier than I need to.
As for a cheap computer, though, it might be better to get an old computer and put Linux on it. I have a Pentium III I run Linux on. I just put Puppy on it and it is 10x faster than my CherryPal.
So if you want a second machine to save power with, the CherryPal might be a good option. It is not a replacement for a full-powered desktop just yet.
Tags: CherryPal, Puppy Linux, Xubuntu

Thank you for your detailed comments about your CherryPal experiences. There is clearly a shortage of useful information about the CherryPal on the web, so information like this is gold. Also, thank you for providing a discussion forum even if that wasn’t your intent.
That’s very sad news about CherryPal 0.0 performance. As an embedded processor, the MPC5121e should be a screamer. Its PowerPC is dual-issue, up to 400 MHz. I would think this would be on a par with a 1 GHz Intel processor, since PowerPC is such a better architecture. The built-in PowerVR MBX Lite graphics engine is described in the “MPC5121e Product Brief” (from Freescale.com) as having “incredible performance”. I would hope that was intended to mean “in the good sense” rather than refering to your recent observations.
So what went wrong? Well, obviously I don’t know for sure since I don’t have access to the CherryPal hardware or software designs, but here’s the list of “the usual suspects”.
1. The board level hardware design could be poor. This was certainly suggested at the Power Developer “5121e and LimePC” forum http://www.powerdeveloper.org/forums/viewtopic.php?t=1478
but it’s often hard to tell what’s fact and what’s opinion on the Internet. If the board-level design is poor, it could be manifested in several ways:
2. Is the CPU really being clocked as fast as it can go? Perhaps it isn’t for thermal reasons. CherryPal is a mostly-sealed plastic box, so any hot spots on the PC board could get so hot that things stop working. Even 2W gets really hot in a small amount of space. Try holding a 2W Christmas tree bulb in your hand for a while and see. (Better yet, don’t.) So perhaps they are deliberately underclocking the CPU so that it doesn’t overheat while they decide if they want to go to the expense of making a box that distributes heat better, like those aluminum boxes with extruded fins that car stereo power amps come in.
3. Perhaps they couldn’t get the DDR DRAM interface to work at full speed. (Shouldn’t be a problem, it’s only 200 MHz.) Who knows, maybe they decided to go with a 16-bit DRAM interface to save cost? (Doubtful.)
4. The MPC5121e on-chip cache is rather small: 32K instruction + 32K data. This is generous for an embedded processor, but small by Pentium III standards where you have a small (16K instruction + 16K data) Level 1 cache backed up by a 256K or larger Level 2 cache. Going off-chip to DRAM is very expensive, especially in terms of latency. Also, the MPC5121e DRAM interface is 16 or 32 bits, while I think a Pentium is 64 bits, which doubles bandwidth.
A modest cache is fine if software is well designed. However, if the software is bloated or there are way too many simultaneous tasks, performance can drop off precipitously as the cache starts thrashing and performance can even become worse than if the cache were not there at all. I wonder where CherryPal is on this spectrum?
5. Actually, we don’t even know if CherryPal 0.0 has turned on cache. They probably have instruction cache turned on: that’s a no-brainer. However, data cache can be very tricky to get right when you have DMA and especially with co-processors, so sometimes one leaves it off in the development process until one has the chance to debug any data cache issues. (The Power Developer forum did indicate lots of problems with cache coherence in the past.)
6. PowerPC is a great processor, but one weakness is task switching. It has lots of registers, which requires saving a lot of state when tasks switch. This makes the effect of a small cache worse.
7. I’m perfectly willing to agree to believe the PowerVR graphics engine performance is “incredible”. However, there is no reason to be sure that CherryPal is even using the graphics engine — it may be doing all the rendering in software. PowerVR is totally proprietary regarding the register-level interface to their hardware. (In that sense CherryPal is not “open”. Neither is anything else that uses PowerVR.) They do provide an OpenVG or OpenGL driver, but who knows how much overhead that adds. Plus, we don’t know if CherryPal 0.0 was able to get it integrated and working.
So I’m hoping that CherryPal 0.0 has lousy performance because it was released before the software was ready. I can’t blame them — CherryPal was quickly becoming Vaporware as far as the media was concerned. On the other hand, releasing not-yet-ready software can be almost as bad.
That’s exactly it. I’ve worked with a very similar platform (the Efika, lots of discussion on it in the Power Developer forums), and the issues were generally the same.
Linux, overall, is just too heavy for standard desktop use on this platform. Running a minimal linux, minimal X install with Fluxbox, you can play a 320×240 resolution video in Mplayer. That’s the best it can do.
The real solution for hardware like this, in my opinion, isn’t Linux. However, there’s no real push for a custom OS on the CherryPal, like we had with MorphOS on the Efika. Now, if CherryPal could work out a deal to add support for the C114 to MorphOS, that would definitely be a step forward. Unfortunately, the MorphOS team already charges quite a bit for their software, and would raise the cost of the CherryPal units significantly (MorphOS is not free, nor open-source).
Linux is not designed to be a bare-metal-optimized OS for a single platform, which is what the MPC5121e and similar systems need for any kind of real work.
What gets me is that a 400 MHz PowerPC with 256MB of DDR and a high-performance graphics engine ought to be a very fast machine. I mean, Unix was created to run on PDP-11′s with 64KB of memory and the original Macintosh had 128KB of RAM and the entire OS fit into 64KB of ROM. Where in the world does all this bloat come from? I guess when you take a fast piece of hardware and load it down with too many bloated tasks, you get “half-fast” performance. (Be careful how you say that.)
I’m not a Linux developer but I’m going to guess that maybe it has something to do with optimizing the kernel for the chipset.
@John:
The issue with that argument is that the Macintosh (or Amiga for that matter), with all its limitations, had an OS written SPECIFICALLY for the hardware.
What the CherryPal has (from everything I’m seeing, I don’t get mine until tomorrow) is the generic PPC port of Xubuntu. Most people are running that on G3 or higher CPUs.
The MPC5121 is a Freescale e300 core, which is a low-power/high-speed implementation of the PPC 603/603e – the FIRST fully 32-bit PowerPC core.
The Linux you see on the CherryPal is the same one I’d install on my G4.
Even Gentoo, compiled with all the 603e core optimizations, is still limited by the relatively primitive CPU when running applications. Nobody optimizes for ancient hardware anymore, except the MorphOS guys.
Like I mentioned before, MorphOS runs very smoothly on even more limited hardware (the Efika only has 128MB RAM), but it was written from scratch and optimized for these specific platforms.
This is also why we’ll never see OSX for generic computers. The reason it’s so smooth is because it’s optimized for a certain set of hardware.
Also, the original Macintosh OS was incredibly primitive compared to OSes nowadays. Linux is HUGE. This is an OS that you can run this website from. (I know people who run forums from an Efika, SQL database included)
The latest commercial OS that would actually run speedily on hardware like this would have been MacOS 8.6, and possibly even OS9.
Or BeOS. Oh, if I could have a machine like this running BeOS…
muriani:
Thank you for your comments. I’ll be interested in your review of CherryPal after you’ve played with it.
Amplifying your comment that Mac and Amiga had an OS specifically written for the hardware, I’ll go one step further: they had an OS written for the intended use of the device as a personal computer. While I have a great deal of admiration for Linux — especially as it has served as a bridge away from MS Windows — the fact remains that Unix is a time-sharing system designed to support multiple users and Linux carries all that baggage along, in essence requiring a PC owner to become a system administrator.
Most of my programming has been Power PC architecture in the embedded world, where you have to watch every KB or you’ll run out. In my case there was no such thing as swap space and memory management was mostly used to define cacheability. We didn’t have an operating system as such. I figured that an OS never improves performance — it only slows things down. Unless you really need an OS because you cannot survive without preemptive multitasking (other than device interrupts) or other compelling reasons, I always argue against it for embedded systems.
For a personal computer, all I really want from an OS is a nice hierarchical file system, clean simple multitasking, clean reliable memory management, and an easy way to get at devices including a 2-D graphics engine. Linux provides this except for “clean, simple, and easy” and I get a huge amount of who-knows-what in addition to the small core I need.
I used to program Macintosh OS back in the 6.x days. With 7.0, the OS became too complex for one person to understand it any more IMO.
Regarding poor browser performance, Atrawog made the following comment at the TG Daily.com CherryPal review at http://www.tgdaily.com/content/view/40549/135/:
“Try turning off disk caching in Firefox:
SQLite performance currently sucks badly on SSD storage devices. SQLite is used by Firefox a lot. And especially its use for disk caching can bring Firefox to a standstill on a flash based system. Try turning it off and see if it improves performance:
http://www.davidtan.org/tips-reduce-firefox-memory-cache-usage/”
Might be worth a try, plus it saves wear and tear on the Flash.
CherryPal huh!
I picked up this link via Wikipedia and the cloud computing entry and though CherryPal, whats this all about then?
Low and behold another low power PC. I say another because I’ve been trying out the Cranberry computer that is available here in the UK that consumes only 7 Watts.
I must admit its great to hear of yet more computers with users in mind who just need something to provide them withe the basics such as Word Processing and Internet and Email. So many people own computers that they dont really need and that they are only using a fraction of the resources and power they offer.
If we only use what we need then just think how much we could reduce the carbon emissions created by the use of computers. We currently use computers in a very inefficient way, but at the end of the day we can supply all the low power systems we want but it really starts at behavioural change. If there are more lower power options and people are aware of them and that they are a better option for them and better suit their needs and also save them money and energy then maybe, just maybe they will pick them over a high carbon emitting laptop or desktop computer.
They also have to look good. There are a lot of low power alternatives on the market and I hate to say it but they look terrible and we have to ask ourselves, and we all know the answer of course, what is the main reason Apple has been so successful? Answer: They look great!
So what we need is a great looking low power alternative that is a design classic like the mac, this will help it sell and grow the market for low power devices and also take them from the geek world to the mainstream.
On an end note its good to see bamboo being used more but I cannot see its use increasing if the difference between a standard finish and a bamboo finish is £120 as with the new mini Dell computers. Thats just not going to go mainstream. Make a sustainable and less toxic material a standard finish then it will.
Oh well time to go and look into this CherryPal a bit more.
Keep up the good work Green Tech Girl our planet needs us.
Adam – The Green IT Company
@john:
You’ve pretty much hit it right on the nose.
I have got the cherrypal now, but there are some very serious issues so far. The device is not using a PowerVR-native X server AT ALL. It’s using Xfbdev, which is a raw framebuffer device. VERY cpu intensive.
I’m working on getting a native driver going, but the vendor support is seemingly rather hard to come by…
Hello James. I recall your nickname from the PowerDeveloper site. Have you received your Cherrypal yet? Where will you publish your review?
[...] CherryPal has failed is in its implemenation of Linux, which, as discussed here in length, ends up eating the CPU so the machine often slows down to a crawl doing basic tasks. The launch of [...]
Well, i’d argue that the PowerPC architechure is better than an intel architechure, because every processor and its architechure has its pros and cons. It all depends on what you are doing with the processor. Dont get me wrong, I do like the PowerPC architechure. I just dont think its that much better than Intel’s architechure.