Android Vs. Tizen

Android Vs. Tizen

IO characteristics of modern smartphone platform: Android vs. Tizen Myungsik Kim, Hu-Ung Lee, and Youjip Won Department of Computer Science Engineering, Hanyang University, Seoul, Korea. fmskim77, oihtoto, [email protected] Abstract—In this work, we examine the IO characteristics of web browser, etc. We collect IOs while performing selected two smartphone platforms: Android and Tizen. We compare workloads and analyze the characteristics of the collected IOs. how the two platforms differ in using the filesystem, using the In terms of IO size, 4 KB is the dominant, accounting database, and accessing the storage. We collected the IOs from select seven different apps that are commonly available on both for 65% and 45% of total IO count on Android and Tizen, platforms. By analyzing the collected the IOs on both platforms, respectively. The proportion of 4 KB IOs is 20% higher on a dominant fraction of writes are 4 KB synchronous. On Android Android than on Tizen. In terms of IO block type, metadata and Tizen, respectively, 65% and 45% of all write IO counts 4 and journal account for 37.3% and 57% of the total IO size KB; 47% and 75% of all writes accesses are SQLite related files on Android and Tizen, respectively. Tizen has higher fraction such as database, rollback journal, WAL (Write Ahead Log), and etc.; 81% and 86% of all IOs are random accesses; and 90% and of journal and metadata than Android has. In terms of file 52% of all writes counts are synchronous IO mode. According type, SQLite related files are common on both platforms. On to our IO analysis, Android IO stack is more sophisticated Android and Tizen, SQLite related files account for 54% and then Tizen one: (i) disables atime updates, (ii) adopts journal 40% of all IO volume, respectively. Random write is dominant: fdatasync() asynchronous commit, and (iii) adopts in SQLite. 81% and 86% of all accesses are random in Android and Tizen, Index Terms—Android, Tizen, Mobile Platform, Smartphone, IO Workload Characterization respectively. On both Android and Tizen, 78% of all IOs are sequential in terms of volume. On Tizen, 90% of all IOs are synchronous writes; Android shows less synchronous writes I. INTRODUCTION with 51.8%. We observe that Android use more buffered writes than Tizen. Storage IO is arguably the major performance bottleneck The IO behavior of the two platforms are different due in smartphones [1]. It is found that Android apps generate an to their database structures and journaling options. The rea- excessive amount of synchronous IOs most of which are from sons for such write amplification are: (i) redundant data EXT4 journal writes [2]. In Android, misaligned interaction updates from platform components, (ii) unorganized database between SQLite rollback journal and EXT4 journaling layer structure, and (iii) duplicated journaling by SQLite DB and creates excessive writes to filesystem journal [3]. Improper EXT4 filesystem known as ‘journaling of journal’ anomaly handling of platform IO requests can worsen the essential [2], [3]. We observed that Android uses additional IO stack properties in mobile devices: it can decrease the devices’ optimization options for filesystem and SQLite. Examples of overall performance, can shorten NAND flash cell lifetime in the optimization options include EXT4 filesystem’s noatime eMMC, and can decrease energy efficiency which is essential and journal async commit option. In addition, Android further in mobile devices that have limited battery power. reduces the number of IOs by using WAL journaling mode This study is motivated by the needs to compare the effi- and fdatasync() for SQLite. On the other hand, Tizen ciencies of the IO stacks in the open source based smartphone does not use those IO stack optimization options. Tizen uses platforms: Android and Tizen. While the IO characteristics the default EXT4 mounting options and PERSIST rollback of Android are relatively well known [1], [3], little is known journal mode is used for SQLite. Adopting Android’s tuning about the details of Tizen platform [4]. We focus our effort options on Tizen may improve its IO performance. in characterizing the IO behaviors of emerging platform by comparing one of the most widely used smartphone platforms II. BACKGROUND currently available. We investigate IO characteristics of Tizen and Android and identify areas for improvement by comparing A. Platform Architecture the two platforms. Android and Tizen platforms are software stacks built on To perform empirical study on the IO characteristics of two top of Linux kernel. The mobile platforms include various platforms, we establish seven categories for apps. From these middleware components which consist of proven open-source seven app categories, we select fourteen workloads. For fair solutions, such as WebKit, SQLite, SSL, libc, GStreamer, etc. comparison, we select built-in basic application categories that Both platform frameworks are loaded with core applications, are available on both platforms such as contacts, calendar, such as web browser, email, address book, image viewer, etc. 978-1-4799-5344-8/15/$31.00 c 2015 IEEE They also provide an API to app developers. TABLE I: Specifications on Tizen and Android Smartphones .H\$SSOLFDWLRQV +RPH &RQWDFWV 3KRQH %URZVHU *DOOHU\ ಹ Platform Android Tizen $SSOLFDWLRQ)UDPHZRUN $FWLYLW\ :LQGRZ 5HVRXUFH 9LHZ6\VWHP Model Name Galaxy S3 RD-PQ 0DQDJHU 0DQDJHU 0DQDJHU Processor Samsung Exynos 4412 3DFNDJH 7HOHSKRQ\ /RFDWLRQ 1RWLILFDWLRQ CORE Quad-core 1.4GHz Cortex-A9 0DQDJHU 0DQDJHU 0DQDJHU 0DQDJHU RAM 1 GB Mobile DDR2 /LEUDULHV $QGURLG5XQWLPH 0HGLD)UDPHZRUN Display 4.8 inch HD AMOLED (1280x720) 6XUIDFH0DQDJHU &RUH/LEUDULHV :HENLW 64/LWH ಹ 'DOYLN 9LUWXDO0DFKLQH Sensors Gyro, Proximity, Compass, Barometer OLEF Storage eMMC 32 GB eMMC 16 GB /LQX[.HUQHO 'HYLFH'ULYHUV Kernel Linux 3.0.31 Linux 3.0.15 (a) Android Platform Architecture [14], [15] Platform Android 4.1.2 Tizen 2.2.1 1DWLYH$SSOLFDWLRQV SQLite 3.7.14 3.7.13 :HE$SSOLFDWLRQV :HE)UDPHZRUN 1DWLYH)UDPHZRUN :& 'HYLFH :HE 6RFLDO /RFDWLRQV +70/ $3,V 5XQWLPH There is a difference in their application frameworks: An- &RQWHQW droid uses specific Java runtime engine, Dalvik VM, for &RUH their application framework, whereas Tizen does not use a $SS)UDPHZRUN *UDSKLFV 8, 0XOWLPHGLD /RFDWLRQ 6HFXULW\ 6\VWHP %DVH &RQQHFWLYLW\ virtual machine. Instead, Tizen provides broader range of 0HVVDJLQJ :HE 7HOHSKRQ\ 3,0 mobile app packaging technology. Tizen includes web-based framework and web SDK for web app which uses HTML5 /LQX[.HUQHO 'HYLFH'ULYHUV [5], CSS, and Java script [6]. There is a tradeoffs between (b) Tizen Platform Architecture [16] the two strategies. A virtual machine can provide enhanced system safety and security, but it may yield a larger runtime Fig. 1: Platform Comparison between Android and Tizen processing overheads. Web app has more flexibility based on inter-operable Web standard [7]. Tizen adopts device profile concept [8] which enables the their default filesystem. They use “Ordered Mode” journaling platform to be used across multiple devices. Tizen is allows ad- where only the metadata is journaled. ditional hardware components to be easily integrated. Through Different Android smartphone models adopts different block the cross-device platform concept, newer Tizen targets not IO scheduler: Deadline (Google Nexus 5), BFQ (Budget Fair only mobile devices but also in-vehicle infotainment (IVI) Queuing, Google Nexus One), and CFQ (Samsung Galaxy devices, smart cameras [9], wearable devices [10], and other Nexus, Samsung Nexus S) [17]. Tizen platform offers three IO consumer electronic devices. Android and Tizen have Webkit- scheduling options: CFQ, Deadline, and Noop. Both Android based Chromium browser as their default browser [7]. Webkit and Tizen devices in this study use CFQ (Completely Fair is an open source web layout engine that is responsible for Queuing) IO scheduler as the default option. rendering web contents onto a screen. Android uses Webkit [11] and Tizen uses Webkit2 [12], [13] ). III. DATA STUDY Tizen follows kernel mainline policy which is governed by A. Device the Linux Foundation. In contrast, Android patches the main- line Linux kernel especially to improve embedded devices. For this study, we use Tizen reference smartphone, RD- For example, Android has its own Inter-process communica- PQ, and Android smartphone, Galaxy S3. Table I summarizes tion option (Binder, Lightweight RPC to minimize memory specifications of the two systems. The two hardware platforms copying overhead by referencing shared memory in kernel), are identical. We use Galaxy S3 even though there are newer memory management subsystem (Ashmem to less data has Android devices available because the two platforms share the to be transferred), C library (bioniC, lightweight than glibc), same hardware platform. Tizen reference smartphone, RD- debugging tools (logcat, Android Debug Bridge), etc. PQ, runs Linux Kernel 3.0. Tizen adopts traditional Linux kernel directory structure such as /var or /opt. Android uses modified Linux directory structure with added /system B. IO Stack and /data directories. The program resources are generally In both Android and Tizen platforms, SQLite is the way located in /usr/bin in mainstream kernel, but in Android, of managing the data in persistent manner. The SQLite uses they are in /system/bin. Both devices are initialized with fsync() to make the result of database transaction persistent stock OS image downloaded from the manufacturer’s web site. [2], [3]. The performance of SQLite transaction relies heavily While Android platform enjoys a plethora of prepackaged on the fsync() transaction. fsync() writes dirty file apps, Tizen phone yet comes with only limited number of blocks to the respective location and then journals the respec- apps. For this study, we install additional 38 apps to our Tizen tive metadata. Both Android and Tizen use EXT4 filesystem as device which includes in SDK package. B. Filesystem and Storage In this study, we collect IOs and analyze six IO attributes: Metadata update overhead constitutes a significant portion IO sizes, IO type (read or write), spatial locality (random of IO traffic in Android based smartphones [2].

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us