[General Topics] Menneisyys:
1.3 Minimizing power usage – with benchmarks

1.3.1 Rendering: Pre-fetching vs. streaming

As has already been explained, a media renderer may opt for pre-fetching a file before / during playback so that it doesn’t have to stream the content all the time from the MediaServer. Two renderers follow this approach: Nokia’s and Rudeo.

Pre-fetching, while it’s certainly has its drawbacks (for example, pre-fetching huge media files may just fail because of the lack of storage space and/or can be lengthy at first), has some definite advantages; most importantly, the Wi-Fi power usage can be minimized – if it automatically powers down itself after a given inactivity time threshold. The following screenshot certainly shows this all:

I’ve played back several songs during the test; the power usage peaks definitely show the boundaries of these songs. (It was slightly before the end of each song that the Wi-Fi unit was activated and the next song was quickly pre-fetched.) As can clearly be seen, the average power usage was 0.57W, which is about only 0.18W more than playing back local MP3’s (see THIS for more info & never before published benchmarks on the latter). Pretty impressive, isn’t it?

Interestingly, keeping the N95 visible (again, it defaults to being invisible) in the Wi-Fi UPnP network (as a server device) was also really battery-friendly – only consuming some 0.11W’s (that is, almost the same as without Wi-Fi).

As far as Rudeo on Windows Mobile is concerned, it also does pre-fetching, which also allows for the Wi-Fi unit’s powering down. However, as the CPU usage of Rudeo is pretty high, the overall power usage will also remain high, particularly with non-battery-friendly CPU’s like the Intel XScale PXA-2XX series (their latest, PXA-3XX series, now, Marvel-branded CPU’s are stated to be better in this respect; I've elaborated on the huge power usage increase with increasing CPU usage when compared to, in this respect, much better architectures like the newer TI OMAP platform for example HERE, in section "1.1.1.1 Battery life considerations" - worth a read!). The following acbTaskMan screenshot (measured on a Dell Axim x51v with minimal backlight and moderate sound volume) clearly shows this:

This chart shows an about 2-3-minute-long initial pre-fetch session, when all the three demo songs were pre-fetched for playback on the local PPC (about 450 mA current, with 600 mA peaks). After the fetching has completed, the player switched to regular playback and the Wi-Fi unit was powered down to idle state, but the CPU usage remained very high (20% at 624 MHz, with much higher peaks) – hence the overall ~280 mA current.

It can clearly be stated that, battery usage-wise, prefetching is WAY better than streaming solutions. The following screenshot shows Nero Mobile Pro (in minimized state – let’s not forget that its graphics takes a LOT of CPU cycles, resulting in even worse figures) streaming (MP3’s from Orb) on the Dell Axim x51v (run without a charger). As can clearly be seen, the average Amperage was around 450 mA’s, while the CPU usage at around 60% - that is, not much higher than with Rudeo (let alone the N95, which has by far the best power management). Yes, prefetching surely has definite advantages.