Abstract
We analyze the I/O behavior of iBench, a new collection of productivity and multimedia application workloads. Our analysis reveals a number of differences between iBench and typical file-system workload studies, including the complex organization of modern files, the lack of pure sequential access, the influence of underlying frameworks on I/O patterns, the widespread use of file synchronization and atomic operations, and the prevalence of threads. Our results have strong ramifications for the design of next generation local and cloud-based storage systems.
- Agrawal, N., Bolosky, W. J., Douceur, J. R., and Lorch, J. R. 2007. A five-year study of file-system metadata. In Proceedings of the USENIX Conference on File and Storage Technologies (FAST). Google Scholar
Digital Library
- Agrawal, N., Arpaci-Dusseau, A. C., and Arpaci-Dusseau, R. H. 2009. Generating realistic impressions for file-system benchmarking. In Proceedings of the USENIX Conference on File and Storage Technologies (FAST). Google Scholar
Digital Library
- Apple Computer, Inc. 2011. AppleScript Language Guide. https://developer.apple.com/library/mac/documentation/applescript/conceptual/applescriptlangguide/AppleScriptLanguageGuide.pdf.Google Scholar
- Baker, M., Hartman, J., Kupfer, M., Shirriff, K., and Ousterhout, J. 1991. Measurements of a distributed file system. In Proceedings of the 13th ACM Symposium on Operating System Principles (SOSP’91). 198--212. Google Scholar
Digital Library
- Bartlett, W. and Spainhower, L. 2004. Commercial fault tolerance: A tale of two systems. IEEE Trans. Depend. Secure Comput. 1, 1, 87--96. Google Scholar
Digital Library
- Blake, G., Dreslinski, R. G., Mudge, T., and Flautner, K. 2010. Evolution of thread-level parallelism in desktop applications. SIGARCH Comput. Archit. News 38, 302--313. Google Scholar
Digital Library
- Bonwick, J. and Moore, B. 2007. ZFS: The last word in file systems. http://opensolaris.org/os/community/ zfs/docs/zfs_last.pdf.Google Scholar
- Cantrill, B., Shapiro, M. W., and Leventhal, A. H. 2004. Dynamic instrumentation of production systems. In Proceedings of USENIX’04. 15--28. Google Scholar
Digital Library
- Decandia, G., Hastorun, D., Jampani, M., Kakulapati, G., Lakshman, A., Pilchin, A., Sivasubramanian, S., Vosshall, P., and Vogels, W. 2007. Dynamo: Amazon’s highly available key-value store. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’07). Google Scholar
Digital Library
- Douceur, J. R. and Bolosky, W. J. 1999. A large-scale study of file-system contents. In Proceedings of the SIGMETRICS’99. 59--69. Google Scholar
Digital Library
- Ellard, D. and Seltzer, M. I. 2003. New NFS tracing tools and techniques for system analysis. In Proceedings of the 17th Large Installation Systems Administration Conference (LISA’03). 73--85. Google Scholar
Digital Library
- Endo, Y., Wang, Z., Chen, J. B., and Seltzer, M. 1994. Using latency to evaluate interactive system performance. In Proceedings of the USENIX 2nd Symposium on OS Design and Implementation (OSDI’96). Google Scholar
Digital Library
- Flautner, K., Uhlig, R., Reinhardt, S., and Mudge, T. 2000. Thread-level parallelism and interactive performance of desktop applications. SIGPLAN Not. 35, 129--138. Google Scholar
Digital Library
- Ghemawat, S., Gobioff, H., and Leung, S.-T. 2003. The Google file system. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’03). 29--43. Google Scholar
Digital Library
- Hagmann, R. 1987. Reimplementing the cedar file system using logging and group commit. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’87). Google Scholar
Digital Library
- Harter, T., Dragga, C., Vaughn, M., Arpaci-Dusseau, A. C., and Arpaci-Dusseau, R. H. 2011. A file is not a file: Understanding the I/O behavior of apple desktop applications. In Proceedings of the 23rd ACM Symposium on Operating Systems Principles (SOSP’11). ACM, New York, 71--83. Google Scholar
Digital Library
- Howard, J., Kazar, M., Menees, S., Nichols, D., Satyanarayanan, M., Sidebotham, R., and West, M. 1988. Scale and performance in a distributed file system. ACM Trans. Comput. Syst. 6, 1. Google Scholar
Digital Library
- Jacob, D. R., Lorch, J. R., and Anderson, T. E. 2000. A comparison of file system workloads. In Proceedings of the USENIX Annual Technical Conference. 41--54. Google Scholar
Digital Library
- Lampson, B. 1999. Computer systems research -- Past and present. In Proceedings of SOSP’17.Google Scholar
- Lee, E. K. and Thekkath, C. A. 1996. Petal: Distributed virtual disks. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). Google Scholar
Digital Library
- Leung, A. W., Pasupathy, S., Goodson, G. R., and Miller, E. L. 2008. Measurement and analysis of large-scale network file system workloads. In Proceedings of USENIX’08. 213--226. Google Scholar
Digital Library
- Macintosh Business Unit (Microsoft). 2006. It’s all in the numbers... blogs.msdn.com/b/macmojo/archive/2006/11/03/it-s-all-in-the-numbers.aspx.Google Scholar
- McKusick, M. K., Joy, W. N., Leffler, S. J., and Fabry, R. S. 1984. A fast file system for UNIX. ACM Trans. Comput. Syst. 2, 3, 181--197. Google Scholar
Digital Library
- Mogul, J. C. 1994. A better update policy. In Proceedings of USENIX Summer’94. Google Scholar
Digital Library
- Olson, J. 2007. Enhance your apps with file system transactions. http://msdn.microsoft.com/enus/magazine/cc163388.aspx.Google Scholar
- Ousterhout, J. 1995. Why threads are a bad idea (for most purposes). www.standard.edu/class/cs240/readings/theads-bad-usenix96.pdf.Google Scholar
- Ousterhout, J. K., Costa, H. D., Harrison, D., Kunze, J. A., Kupfer, M., and Thompson, J. G. 1985. A trace-driven analysis of the UNIX 4.2 BSD file system. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’85). 15--24. Google Scholar
Digital Library
- Patterson, D., Gibson, G., and Katz, R. 1988. A case for redundant arrays of inexpensive disks (RAID). In Proceedings of the ACM SIGMOD Conference (SIGMOD’88). 109--116. Google Scholar
Digital Library
- Patterson, R. H., Gibson, G. A., Ginting, E., Stodolsky, D., and Zelenka, J. 1995. Informed prefetching and caching. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’95). 79--95. Google Scholar
Digital Library
- Pike, R. 2010. Another go at language design. http://www.stanford.edu/class/ee380/Abstracts/100428.html.Google Scholar
- Prabhakaran, V., Arpaci-Dusseau, A. C., and Arpaci-Dusseau, R. H. 2005a. Analysis and evolution of journaling file systems. In Proceedings of USENIX’05. 105--120. Google Scholar
Digital Library
- Prabhakaran, V., Bairavasundaram, L. N., Agrawal, N., Gunawi, H. S., Arpaci-Dusseau, A. C., and Arpaci-Dusseau, R. H. 2005b. IRON file systems. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’95). 206--220. Google Scholar
Digital Library
- Ramakrishnan, K. K., Biswas, P., and Karedla, R. 1992. Analysis of file I/O traces in commercial computing environments. SIGMETRICS Perform. Eval. Rev. 20, 78--90. Google Scholar
Digital Library
- Ritchie, D. M. and Thompson, K. 1973. The UNIX time-sharing system. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’73).Google Scholar
- Roselli, D., Lorch, J. R., and Anderson, T. E. 2000. A comparison of file system workloads. In Proceedings of USENIX’00. 41--54. Google Scholar
Digital Library
- Rosenblum, M. and Ousterhout, J. 1992. The design and implementation of a log-structured file system. ACM Trans. Comput. Syst. 10, 1, 26--52. Google Scholar
Digital Library
- Sandberg, R. 1985. The design and implementation of the sun network file system. In Proceedings of the USENIX Summer Technical Conference. 119--130.Google Scholar
- Satyanarayanan, M. 1981. A study of file sizes and functional lifetimes. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’81). 96--108. Google Scholar
Digital Library
- SQLite. 2012. SQLite: Frequently Asked Questions. http://www.sqlite.org/faq.html.Google Scholar
- Sweeney, A., Doucette, D., Hu, W., Anderson, C., Nishimoto, M., and Peck, G. 1996. Scalability in the XFS file system. In Proceedings of USENIX’96. San Diego, CA. Google Scholar
Digital Library
- Tilmann, M. 2010. Apple’s market share in the PC world continues to surge. maclife.com.Google Scholar
- Vogels, W. 1999. File system usage in Windows NT 4.0. In Proceedings of the ACM Symposium on Operating System Principles (SOSP’99). 93--109. Google Scholar
Digital Library
- Woo, S. C., Ohara, M., Torrie, E., Shingh, J. P., and Gupta, A. 1995. The SPLASH-2 programs: Characterization and methodological considerations. In Proceedings of the International Symposium on Computer Architecture (ISCA’95). 24--36. Google Scholar
Digital Library
Index Terms
A File Is Not a File: Understanding the I/O Behavior of Apple Desktop Applications
Recommendations
A multiple-file write scheme for improving write performance of small files in Fast File System
Fast File System (FFS) stores files to disk in separate disk writes, each of which incurs a disk positioning (seek + rotation) limiting the write performance for small files. We propose a new scheme called co-writing to accelerate small file writes in ...
Implementation of a stackable file system for real-time network backup
We propose a backup system based on a stackable mirroring file system, general-purpose mirroring file system (GMFS). This file system mirrors data in real-time on the file system layer. It uses the typical network file system (NFS) and backs up data to ...
The Conquest file system: Better performance through a disk/persistent-RAM hybrid design
Modern file systems assume the use of disk, a system-wide performance bottleneck for over a decade. Current disk caching and RAM file systems either impose high overhead to access memory content or fail to provide mechanisms to achieve data persistence ...






Comments