Smart layers and dumb result: IO characterization of an Android-based smartphone

Kisung Lee, Youjip Won

Research output: Chapter in Book/Report/Conference proceedingConference contribution

49 Scopus citations

Abstract

In this paper, we offer an in-depth IO characterization of the Android-based smartphone. We analyze the IO behaviors of a total of 14 Android applications from six different categories. We examine the correlations among seven IO attributes: originating application, file type, IO size, IO type (read/write), random/sequential, block semantics (Data/Metadata/Journal), and session type (buffered vs. synchronous IO). For the purposes of our study, we develop Mobile Storage Analyzer (MOST), a framework for collecting IO attributes across layers. Let us summarize our findings briefly. SQLite, which is the most popular tool for maintaining persistent data in Android, puts too much burden on the storage. For example, a single SQLite operation (update or insert) results in at least 11 write operations being sent to the storage. These are for creating short-lived files, updating database tables, and accessing EXT4 Journal. From the storage point of view, more than 50% of writes are for EXT4 Journal updating. Excluding Metadata and Journal accesses, 60-80% of the writes are random. More than 50% of the writes are synchronous. 4KB IO accounts for 70% of all writes. In the Android platform, each SQLite and EXT4 filesystem requires a great amount of effort to ensure reliability in supporting transactions and journaling, respectively. When they are combined, the results are rather dumb. The operations of SQLite and EXT4, when combined, generate unnecessarily excessive write operations to the NAND-based storage. This not only degrades IO performance but also significantly reduces the lifetime of the underlying NAND flash storage. The results of this study clearly suggest that SQLite, EXT4, and the underlying NAND-based storage need to be completely overhauled and vertically integrated so as to properly and effectively incorporate their respective characteristics.

Original languageEnglish
Title of host publicationEMSOFT'12 - Proceedings of the 10th ACM International Conference on Embedded Software 2012, Co-located with ESWEEK
Pages23-32
Number of pages10
DOIs
StatePublished - 2012 Nov 19
Event10th ACM International Conference on Embedded Software 2012, EMSOFT 2012, Co-located with 8th Embedded Systems Week, ESWEEK 2012 - Tampere, Finland
Duration: 2012 Oct 72012 Oct 12

Publication series

NameEMSOFT'12 - Proceedings of the 10th ACM International Conference on Embedded Software 2012, Co-located with ESWEEK

Other

Other10th ACM International Conference on Embedded Software 2012, EMSOFT 2012, Co-located with 8th Embedded Systems Week, ESWEEK 2012
CountryFinland
CityTampere
Period12/10/712/10/12

    Fingerprint

Keywords

  • Android
  • IO characterization
  • NAND flash
  • Smartphone

Cite this

Lee, K., & Won, Y. (2012). Smart layers and dumb result: IO characterization of an Android-based smartphone. In EMSOFT'12 - Proceedings of the 10th ACM International Conference on Embedded Software 2012, Co-located with ESWEEK (pp. 23-32). (EMSOFT'12 - Proceedings of the 10th ACM International Conference on Embedded Software 2012, Co-located with ESWEEK). https://doi.org/10.1145/2380356.2380367