DOI QR코드

DOI QR Code

AIOPro: 안드로이드 스마트폰을 위한 통합된 스토리지 I/O 분석도구

AIOPro: A Fully-Integrated Storage I/O Profiler for Android Smartphones

  • 한상욱 (서울대학교 컴퓨터공학부) ;
  • 이인혁 (서울대학교 컴퓨터공학부) ;
  • 류동욱 (삼성전자 소프트웨어연구소) ;
  • 김지홍 (서울대학교 컴퓨터공학부)
  • 투고 : 2016.08.18
  • 심사 : 2016.12.02
  • 발행 : 2017.03.15

초록

사용자 경험이 중요한 스마트폰에서는 사용자의 입력에 대한 응용 프로그램의 반응 시간에 대한 분석이 필요하며 특히 사용자 반응 시간에 큰 영향을 주는 스토리지 I/O 성능의 분석은 사용자 경험최적화를 위한 중요한 요건이다. 사용자가 경험하는 반응 시간의 분석을 위해서는 입력을 받아들이는 최상위 계층에서 최하위 저장장치 계층을 수직적으로 아우르는 통합된 분석도구가 필요한데 기존의 도구들은 제한된 범위의 계층들에 맞추어 있어서 효과적인 사용자 경험 분석이 어려운 상황이다. 본 논문에서는 안드로이드 스마트폰을 대상으로 최상위 안드로이드 플랫폼, 리눅스 커널을 포함하는 전체 스토리지 I/O 계층의 I/O 동작을 측정하고, 이를 바탕으로 계층 통합적 분석을 통하여 각 계층간 I/O 동작을 연결하여 사용자 입력에 따른 스토리지 I/O가 미치는 영향의 분석이 가능한 도구인 AIOPro를 소개한다. 검증 실험을 통하여 AIOPro가 0.1% 미만의 동작부하로 정확히 분석할 수 있음을 확인하였다.

Application response time is critical to end-user response time in Android smartphones. Due to the plentiful resources of recent smartphones, storage I/O response time becomes a major key factor in application response time. However, existing storage I/O trace tools for Android and Linux give limited information only for a specific I/O layer which makes it difficult to combine I/O information from different I/O layers, because not helpful for application developer and researchers. In this paper, we propose a novel storage I/O trace tool for Android, called AIOPro (Android I/O profiler). It traces storage I/O from application - Android platform - system call - virtual file system - native file system - page cache - block layer - SCSI layer and device driver. It then combines the storage I/O information from I/O layers by linking them with file information and physical address. Our evaluations of real smartphone usage scenarios and benchmarks show that AIOPro can track storage I/O information from all I/O layers without any data loss under 0.1% system overheads.

키워드

과제정보

연구 과제 주관 기관 : 한국연구재단

참고문헌

  1. W. Song et al., "Reducing Energy Consumption of Smartphones Using User-Perceived Response Time Analysis," Proc. International Workshop on Mobile Computing Systems and Applications, No. 20, 2014.
  2. H. Kim et al., "Revisiting Storage for Smartphones," Proc. USENIX Conference on File and Storage Technologies, No. 14, 2012.
  3. D.T. Nguyen et al., "Improving Smartphone Responsiveness through I/O Optimizations," Proc. ACM International Joint Conference on Pervasive and Ubiquitous Computing, pp. 337-342, 2014.
  4. strace. [Online]. Available: http://linux.die.net/man/1/strace.
  5. blktrace. [Online]. Available: http://linux.die.net/man/8/blktrace.
  6. GTKWave. [Online]. Available: http://gtkwave.sourceforge.net.
  7. E. Lim et al., "Androtrace: framework for tracing and analyzing IOs on Android," Proc. Workshop on Interactions of NVM/FLASH with Operating Systems and Workloads, No. 3, 2015.