Performance Info

Save articles as many as possible,
Use memory as small as possible,
Perform as fast as possible.

This is RssBook’s development mission. For this, a lot of effort has done and successfully accomplished.

To accommodate large articles, all data is stored in local sqlite database. For the high speed, well-defined index data is always loaded in runtime. When displaying folders or grouing/filtering, index data is used. When requested article contents, load dynamically from database or from runtime cache. This mechanism lead to fast but small memory system.

Memory footprint

Internal index data size is approximately 12 MB per 100,000 articles. Cache size is under 10MB and automatically cleared when not used or low memory condition. This amount of memory usage will be no problem for most iOS devices.

Instrument screen capture for memory allocation with iPad
•When article counts 106,879

•When article counts 204,282

In actual use, there are other factors that use large memory. Web pages, images, UI objects and so on. iOS system is reliable to handle low memory condition. But in rare case, memory is not recovered as expected. You can monitor current memory usage in last sync status menu.

Drawback

One of drawbacks in index mechanism is index loading time. When RssBook lauches, index data is loaded into runtime memory. More articles, Longer loading time.
If article exceed a certain count(for example, 200,000 for iPad2), loading index will be considerably delayed. But once loading finishes, runtime speed will be fast enough.

The things that help performance

Lastest devices, of course, will be favored, especially for dual core CPU.

Free disk space is also important. RssBook use database, so disk speed is significant factor for syncing and startup index loading. In our test, performance was best when at least 15% free space is available.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s