IOscope: A Flexible I/O Tracer for Workloads’ I/O Pattern Characterization

  • Abdulqawi SaifEmail author
  • Lucas Nussbaum
  • Ye-Qiong Song
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11203)


Storage systems are getting complex to handle HPC and Big Data requirements. This complexity triggers performing in-depth evaluations to ensure the absence of issues in all systems’ layers. However, the current performance evaluation activity is performed around high-level metrics for simplicity reasons. It is therefore impossible to catch potential I/O issues in lower layers along the Linux I/O stack. In this paper, we introduce IOscope tracer for uncovering I/O patterns of storage systems’ workloads. It performs filtering-based profiling over fine-grained criteria inside Linux kernel. IOscope has near-zero overhead and verified behaviours inside the kernel thanks to relying on the extended Berkeley Packet Filter (eBPF) technology. We demonstrate the capabilities of IOscope to discover patterns-related issues through a performance study on MongoDB and Cassandra. Results show that clustered MongoDB suffers from a noisy I/O pattern regardless of the used storage support (HDDs or SSDs). Hence, IOscope helps to have better troubleshooting process and contributes to have in-depth understanding of I/O performance.


  1. 1.
    Abramova, V., Bernardino, J.: NoSQL databases: MongoDB vs cassandra. In: Proceedings of the International C* Conference on Computer Science and Software Engineering, pp. 14–22. ACM (2013)Google Scholar
  2. 2.
    Balouek, D., et al.: Adding virtualization capabilities to the Grid’5000 testbed. In: Ivanov, I.I., van Sinderen, M., Leymann, F., Shan, T. (eds.) CLOSER 2012. CCIS, vol. 367, pp. 3–20. Springer, Cham (2013). Scholar
  3. 3.
    Betke, E., Kunkel, J.: Real-time I/O-monitoring of HPC applications with SIOX, elasticsearch, Grafana and FUSE. In: Kunkel, J.M., Yokota, R., Taufer, M., Shalf, J. (eds.) High Performance Computing, pp. 174–186. Springer, Cham (2017). Scholar
  4. 4.
    Chahal, D., Virk, R., Nambiar, M.: Performance extrapolation of IO intensive workloads: work in progress. In: Proceedings of the 7th ACM/SPEC on International Conference on Performance Engineering, pp. 105–108. ACM (2016)Google Scholar
  5. 5.
    Cooper, B.F., Silberstein, A., Tam, E., Ramakrishnan, R., Sears, R.: Benchmarking cloud serving systems with YCSB. In: Proceedings of the 1st ACM Symposium on Cloud Computing, pp. 143–154. ACM (2010)Google Scholar
  6. 6.
    Daoud, H., Dagenais, M.R.: Recovering disk storage metrics from low-level trace events. Softw.: Pract. Exp. 48(5), 1019–1041 (2018)Google Scholar
  7. 7.
    Desnoyers, M., Dagenais, M.R.: The LTTng tracer: a low impact performance and behavior monitor for GNU/Linux. In: OLS (Ottawa Linux Symposium), vol. 2006, pp. 209–224. Citeseer, Linux Symposium (2006)Google Scholar
  8. 8.
    Gandini, A., Gribaudo, M., Knottenbelt, W.J., Osman, R., Piazzolla, P.: Performance evaluation of NoSQL databases. In: Horváth, A., Wolter, K. (eds.) EPEW 2014. LNCS, vol. 8721, pp. 16–29. Springer, Cham (2014). Scholar
  9. 9.
    Jacob, B., Larson, P., Leitao, B., Da Silva, S.: SystemTap: instrumenting the Linux kernel for analyzing performance and functional problems. IBM Redbook (2008)Google Scholar
  10. 10.
    Jeong, S., Lee, K., Hwang, J., Lee, S., Won, Y.: Androstep: Android storage performance analysis tool. Software Engineering (Workshops), vol. 13, pp. 327–340 (2013)Google Scholar
  11. 11.
    Jung, M.G., Youn, S.A., Bae, J., Choi, Y.L.: A study on data input and output performance comparison of MongoDB and PostgreSQL in the big data environment. In: 2015 8th International Conference on Database Theory and Application (DTA), pp. 14–17. IEEE (2015)Google Scholar
  12. 12.
    Klein, J., Gorton, I., Ernst, N., Donohoe, P., Pham, K., Matser, C.: Performance evaluation of NoSQL databases: a case study. In: Proceedings of the 1st Workshop on Performance Analysis of Big Data Systems (2015)Google Scholar
  13. 13.
    Manual page on Linux, B.: (2017).
  14. 14.
    Luo, X., et al.: HPC I/O trace extrapolation. In: Proceedings of the 4th Workshop on Extreme Scale Programming Tools. p. 2. ACM (2015)Google Scholar
  15. 15.
    Luo, X., et al.: ScalaiOExtrap: elastic I/O tracing and extrapolation. In: 2017 IEEE International Parallel and Distributed Processing Symposium (IPDPS), pp. 585–594. IEEE (2017)Google Scholar
  16. 16.
    Mantri, S.G.: Efficient in-depth IO tracing and its application for optimizing systems. Ph.D. thesis, Virginia Tech (2014)Google Scholar
  17. 17.
    McDougall, R., Mauro, J., Gregg, B.: Solaris performance and tools: DTrace and MDB techniques for Solaris 10 and OpenSolaris. Prentice Hall (2006)Google Scholar
  18. 18.
    Collection project, B.C.:
  19. 19.
    Schulist, J., Borkmann, D., Starovoitov, A.: Linux socket filtering aka Berkeley Packet Filter (BPF) (2016)Google Scholar
  20. 20.
    Sharma, S.D., Dagenais, M.: Enhanced userspace and in-kernel trace filtering for production systems. J. Comput. Sci. Technol. 6, 1161–1178 (2016)CrossRefGoogle Scholar
  21. 21.
    Starovoitov, A.: (2014).
  22. 22.
    Tak, B.C., Tang, C., Huang, H., Wang, L.: PseudoApp: performance prediction for application migration to cloud. In: 2013 IFIP/IEEE International Symposium on Integrated Network Management (IM 2013), pp. 303–310. IEEE (2013)Google Scholar
  23. 23.
    Vef, M.A., Tarasov, V., Hildebrand, D., Brinkmann, A.: Challenges and solutions for tracing storage systems: a case study with spectrum scale. ACM Trans. Storage 14(2), 1–24 (2018). Scholar
  24. 24.
    Virk, R., Chahal, D.: Trace replay based I/O performance studies for enterprise workload migration. In: 2nd Annual Conference of CMG India, Page Online (2015)Google Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Abdulqawi Saif
    • 1
    • 2
    Email author
  • Lucas Nussbaum
    • 1
  • Ye-Qiong Song
    • 1
  1. 1.Université de Lorraine, CNRS, Inria, LORIANancyFrance
  2. 2.Qwant EnterpriseÉpinalFrance

Personalised recommendations