Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace
Abstract: The existing I/O workload generators and trace capturing tools are not adaptable to generating nor capturing the I/O requests of Android apps. The Android platform needs proper tools to capture and replay real world workload in the Android platform to verify the result of benchmark tools....
Main Authors: | , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2013-12-01
|
Series: | Future Internet |
Subjects: | |
Online Access: | http://www.mdpi.com/1999-5903/5/4/591 |
_version_ | 1798043361558396928 |
---|---|
author | Sooman Jeong Kisung Lee Jungwoo Hwang Seongjin Lee Youjip Won |
author_facet | Sooman Jeong Kisung Lee Jungwoo Hwang Seongjin Lee Youjip Won |
author_sort | Sooman Jeong |
collection | DOAJ |
description | Abstract: The existing I/O workload generators and trace capturing tools are not adaptable to generating nor capturing the I/O requests of Android apps. The Android platform needs proper tools to capture and replay real world workload in the Android platform to verify the result of benchmark tools. This paper introduces Android Storage Performance Analysis Tool, AndroStep, which is specifically designed for characterizing and analyzing the behavior of the I/O subsystem in Android based devices. The AndroStep consists of Mobibench (workload generator), MOST (Mobile Storage Analyzer), and Mobigen (workload replayer). Mobibench is an Android app that generates a filesystem as well as SQLite database operations. Mobibench can also vary the number of concurrent threads to examining the filesystem scalability to support concurrency, e.g., metadata updates, journal file creation/deletion. MOST captures the trace and extracts key filesystem access characteristics such as access pattern with respect to file types, ratio between random vs. sequential access, ratio between buffered vs. synchronous I/O, fraction of metadata accesses, etc. MOST implements reverse mapping feature (finding an inode for a given block) and retrospective reverse mapping (finding an inode for a deleted file). Mobigen is a trace capturing and replaying tool that is specifically designed to perform the user experiment without actual human intervention. Mobigen records the system calls generated from the user behavior and sanitizes the trace for replayable form. Mobigen can replay this trace on different Android platforms or with different I/O stack configurations. As an example of using AndroStep, we analyzed the performances of twelve Android smartphones and the SQLite performances on five different filesystems. AndroStep makes otherwise time consuming I/O stack analysis extremely versatile. AndroStep makes a significant contribution in terms of shedding light on internal behavior of the Android I/O stack. |
first_indexed | 2024-04-11T22:48:00Z |
format | Article |
id | doaj.art-62ca3a7b40664664ba5175fbed140f0e |
institution | Directory Open Access Journal |
issn | 1999-5903 |
language | English |
last_indexed | 2024-04-11T22:48:00Z |
publishDate | 2013-12-01 |
publisher | MDPI AG |
record_format | Article |
series | Future Internet |
spelling | doaj.art-62ca3a7b40664664ba5175fbed140f0e2022-12-22T03:58:40ZengMDPI AGFuture Internet1999-59032013-12-015459161010.3390/fi5040591fi5040591Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the TraceSooman Jeong0Kisung Lee1Jungwoo Hwang2Seongjin Lee3Youjip Won4Department of Computer and Software, Hanyang University, Seoul 133-791, KoreaSamsung Electronics, Suwon 443-742, KoreaDepartment of Computer and Software, Hanyang University, Seoul 133-791, KoreaDepartment of Computer and Software, Hanyang University, Seoul 133-791, KoreaDepartment of Computer and Software, Hanyang University, Seoul 133-791, KoreaAbstract: The existing I/O workload generators and trace capturing tools are not adaptable to generating nor capturing the I/O requests of Android apps. The Android platform needs proper tools to capture and replay real world workload in the Android platform to verify the result of benchmark tools. This paper introduces Android Storage Performance Analysis Tool, AndroStep, which is specifically designed for characterizing and analyzing the behavior of the I/O subsystem in Android based devices. The AndroStep consists of Mobibench (workload generator), MOST (Mobile Storage Analyzer), and Mobigen (workload replayer). Mobibench is an Android app that generates a filesystem as well as SQLite database operations. Mobibench can also vary the number of concurrent threads to examining the filesystem scalability to support concurrency, e.g., metadata updates, journal file creation/deletion. MOST captures the trace and extracts key filesystem access characteristics such as access pattern with respect to file types, ratio between random vs. sequential access, ratio between buffered vs. synchronous I/O, fraction of metadata accesses, etc. MOST implements reverse mapping feature (finding an inode for a given block) and retrospective reverse mapping (finding an inode for a deleted file). Mobigen is a trace capturing and replaying tool that is specifically designed to perform the user experiment without actual human intervention. Mobigen records the system calls generated from the user behavior and sanitizes the trace for replayable form. Mobigen can replay this trace on different Android platforms or with different I/O stack configurations. As an example of using AndroStep, we analyzed the performances of twelve Android smartphones and the SQLite performances on five different filesystems. AndroStep makes otherwise time consuming I/O stack analysis extremely versatile. AndroStep makes a significant contribution in terms of shedding light on internal behavior of the Android I/O stack.http://www.mdpi.com/1999-5903/5/4/591Androidworkload generatoranalyzerreplayer |
spellingShingle | Sooman Jeong Kisung Lee Jungwoo Hwang Seongjin Lee Youjip Won Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace Future Internet Android workload generator analyzer replayer |
title | Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace |
title_full | Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace |
title_fullStr | Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace |
title_full_unstemmed | Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace |
title_short | Framework for Analyzing Android I/O Stack Behavior: From Generating theWorkload to Analyzing the Trace |
title_sort | framework for analyzing android i o stack behavior from generating theworkload to analyzing the trace |
topic | Android workload generator analyzer replayer |
url | http://www.mdpi.com/1999-5903/5/4/591 |
work_keys_str_mv | AT soomanjeong frameworkforanalyzingandroidiostackbehaviorfromgeneratingtheworkloadtoanalyzingthetrace AT kisunglee frameworkforanalyzingandroidiostackbehaviorfromgeneratingtheworkloadtoanalyzingthetrace AT jungwoohwang frameworkforanalyzingandroidiostackbehaviorfromgeneratingtheworkloadtoanalyzingthetrace AT seongjinlee frameworkforanalyzingandroidiostackbehaviorfromgeneratingtheworkloadtoanalyzingthetrace AT youjipwon frameworkforanalyzingandroidiostackbehaviorfromgeneratingtheworkloadtoanalyzingthetrace |