FORESEE: An Effective and Efficient Framework for Estimating the Execution Times of IO Traces on the SSD

Yoonsuk Kang, Yong Yeon Jo, Jaehyuk Cha, Wan D. Bae, Wonjun Lee, Sang Wook Kim

Research output: Contribution to journalArticlepeer-review

Abstract

If we had the performance information of every application on every SSD, it would be very beneficial to both SSD users and SSD manufacturers. For SSD users, they can buy the SSD that is fastest for the most frequently using applications; for SSD manufacturers, they can figure out the strength and weakness of their SSD for every application. Toward this end, this article proposes a framework named ${\sf FORESEE}$FORESEE that estimates accurately the execution time of a given IO trace (i.e., query IO trace) of a given application on a target SSD without its actual execution. ${\sf FORESEE}$FORESEE is developed based on the observation that if two IO traces are similar to each other in their IO behavior, their execution times tend to be similar when they are executed on the same SSD. In ${\sf FORESEE}$FORESEE, the execution time of a query IO trace is estimated by using the execution times of the IO traces in a database similar to the query IO trace. Our technical contributions in ${\sf FORESEE}$FORESEE are as follows: (1) we propose a goodness function that efficiently evaluates the quality of sets of features that are used to measure the similarity of IO traces; (2) we propose a DB structure and a searching method for efficiently searching for similar IO traces to a query IO trace; (3) we propose an aggregation method that aggregates the execution times of similar IO traces to a query IO trace for accurately estimating the execution time of the query IO trace; and (4) we verify the effectiveness of ${\sf FORESEE}$FORESEE via extensive experiments by using real-world application IO traces. According to the results, the Pearson correlation coefficient (PCC) of the actual execution time and the estimated execution time by ${\sf FORESEE}$FORESEE is found to be 0.87, indicating ${\sf FORESEE}$FORESEE estimates the execution time accurately.

Original languageEnglish
Pages (from-to)2146-2160
Number of pages15
JournalIEEE Transactions on Computers
Volume70
Issue number12
DOIs
Publication statusAccepted/In press - 2020

Keywords

  • Execution time estimation
  • IO traces
  • solid-state drives

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture
  • Computational Theory and Mathematics

Fingerprint

Dive into the research topics of 'FORESEE: An Effective and Efficient Framework for Estimating the Execution Times of IO Traces on the SSD'. Together they form a unique fingerprint.

Cite this