[General Topics] Menneisyys:
2.2.	Downloading in general - chart

In this chart, I've collected everything that has direct impact on downloading. These are not benchmarks but generic features (and, with the last column, possible sources of problems / slowdowns).

Explanation for the chart:

Resuming, stored download list: The first column (pause/resume) elaborates on whether the transfers are stored through restarts (which would be highly preferable and is also implemented by all decent desktop-based third-party accelerator plug-ins). As can clearly be seen, only WMDA supports this.

The second column shows whether a partial download can be resumed (which the HTTP protocol supports; so do desktop browsers). Unfortunately, only WinMobile Download Accelerator and EZDownload support this.

Multisegment (multithreaded) downloads: The third column shows whether the given application supports multisegment (multithreaded) downloads, which can considerably speedup transfer with slow(er) Web servers. As can be seen, it's only WinMobile Download Accelerator that supports this.

2.2.1 Implicit buffering in built-in storage?

The fourth column, "Implicit buffering in built-in storage?" is one of the most important: it addresses a common question / problem with built-in (or, in cases, third-party) Windows Mobile Web browsers and downloader applications: When you download a file to a storage card, does the given Web client use the built-in storage as a temporary storage medium and only flushes the (temporary) contents to the storage card when it's absolutely necessary (or at the end of the transfer). The two approaches (buffering-less and one that does use in-storage buffering) have radically different consequences.

Advantages of the buffered mode:

It may be, in cases, considerably faster than the non-buffered case. This would particularly be the case with RAM-based storages in operating systems prior to WM5 (see the benchmark results of the WM2003 iPAQ 2210 and the WM2003SE PL720: PIE is at least three times slower with them when writing to the storage card directly). In WM5, however, it's no longer the case: buffered solutions are not necessarily faster than non-buffered ones. (Unfortunately, none of the Web browsers that do use buffering use the dynamic RAM for this purpose, only the file system. This could be later worked on in later IEM or WMDA versions.)

Disadvantages of the buffered mode:

On WM5-upgraded devices that have slow-to-write and even-slower-to-delete flash ROM (Dell Axim x50 series, HP hx2xxx and hx4700), using these applications may result in lengthy filesys.exe sessions, which you don't necessarily want. (This is why, while benchmarking the built-in IEM of the WM5-upgraded hx4700, filesys.exe-based compactions have always kicked in during downloading the 8Mbyte-long test file)

If the built-in storage is smaller than the file to be downloaded, there may be problems (or at least severe slowdowns) when the built-in storage memory runs out (see the PIE/IEM- and WMDA-related comments).

The two applications that use the built-in storage for buffering behave differently in the second case. IEM under WM5 (under previous OS'es, PIE doesn't buffer) is very well written; when the memory fills in, it flushes everything out to the target card and then, continues downloading without any problems, crashes or CRC errors. The only problem you'll then encounter will be the drastically (about three times) reduced transfer speed.

WinMobile Download Accelerator, the other application that does in-storage buffering, behaves differently: when it completely fills in the built-in storage, the transfer just stops with an error message. This is very bad news: this means you will never be able to download bigger files than the current size of your free storage, unlike with all the other Pocket PC-based downloader solutions. Fortunately, this can be fixed by relocating the cache to a large, well-optimized memory card - with some (additional - fortunately, not really bad) speed hit.

2.2.2 The chart

THE CHART IS HERE - CLICK THE LINK!

Note that "See with PIE" with Opera Mini means the latter uses the PIE / IEM engine to download files / images. This means all benchmark / resumability etc. data are the same with the two browsers.

Now, let's have a look at how the browsers and downloader apps fare over fast connections, with fast servers. It's in here that there will be major differences, as opposed to the three other cases (where either the client or the server is slow - or both).

2.3.	Downloading speed benchmarks

While with short downloads and/or downloads over a slow link (for example, if you have a slow GPRS connection), browsers behave exactly the same way, over very fast connections, accessing servers that also have a fast Internet connection, there can be huge differences between different Web browsers.

My benchmark results are contained in the next comparison chart, where each column contains the time needed to transfer a given test file off a local Web server on my desktop on the (freshly hard reset and containing only the tested applications) test device. I've benchmarked both built-in storage (which is RAM with pre-WM5 devices and flash ROM with WM5 ones) and a storage card (which was the same in all cases; always freshly formatted with exactly the same parameters).

Note that, with WM5 devices, I haven't tested the, otherwise, excellent RAMDisks because they are inherently small (6...10 Mbytes at most) on current, "official" WM5 devices (not the MDA III with the "hacked" WM5, where you can create even a 96 Mbyte-large RAMdisk because of its huge, 128M built-in RAM) and, therefore, of little utility in trying to speed up transfers.

Making clear distinction between the given memory types available in a given device is very important. As you may already know (and has already been pointed out in many of my WM5-related articles), writing to dynamic RAM is by far the fastest process. Writing to flash ROM-based memories (this includes both storage cards and built-in storage on WM5 devices) is, in general, slower than writing to RAM. This is why the "slow", over three years old, WM2003-based HP iPAQ h2210 smashed the WM5-based competition in all transfer tests into the main storage.

In the tests, I've used this file on a local Web server (with Thunderhawk, I used the, in size, comparable Minimo 0.016 CAB file because the central Thunderhawk server had problems with accessing my local desktop). Do NOT try to benchmark your browsers directly from this Web site as it may have slow international bandwidth. Make sure you upload it to a site (for example, one on your desktop computer your PPC directly connects to through USB or any Intranet web server at work) that you can access very fast so that there won't be bottlenecks in the achievable transfer speed.

Finally, as has already been pointed out, I also made sure I used the same storage card in all the devices so that the different card characteristics (write speed) don't cause any difference.

THE CHART IS HERE - CLICK THE LINK!

As can clearly be seen, there are huge differences in how different devices behave. For example, on the Axim x51v and the iPAQ hx4700, there are almost no differences. On the HTC Wizard, on the other hand, the differences between the only really fast-to-download Opera Mobile and the rest are really big.

It's also worth pointing out that on all the three WM5 devices, unlike with pre-WM5 OS'es, PIE / IEM-based downloads are almost equally fast when downloading to a storage card and when to the built-in memory (unless the latter has less free space than the file you're downloading to the memory card - then, even three-fold differences in speed can occur). This is because, as has already been pointed out, under WM5, IEM buffers in the main storage first and only flushes to the card at the end of the transfer (if the main memory doesn't fill in entirely in between); hence the similar (and, compared to pre-WM5 devices, in general - except for the Wizard - much better) results.

EZDownload fared equally bad on all the test devices when writing directly to a memory card; particularly on the HTC Wizard. It's best to avoid it completely, unless you, for some reason, really need it. Writing to RAM is of acceptable speed on pre-WM5 devices (but in no way as good as with any other application - except for WinMobile Download Accelerator, which is equally slow when accessing fast servers). Generally, download add-ons are much slower than other solutions.