Saturday, October 6, 2007

FileBench in OpenSolaris

FileBench, a systems for benchmarking filesystems, is now part of OpenSolaris. See the project page for details. FileBench was developed by Richard McDougall, Joshua Crase and Shawn Debnath. FileBench is available at sourceforge.

You can use FileBench to define benchmarks that have the same characteristics as your own applications. You could then run those benchmarks on different systems or configurations (direct attach vs SAN; tier 1 SAN vs tier 2 SAN; volume manager vs volume manager; disk layout against disk layout) to find optimal configurations. Much better than "time dd if=......"!

Eric Kustarz describes FileBench in his blog:
So how does FileBench differ? FileBench is a framework of file system workloads for measuring and comparing file system performance. The key is in the workloads. FileBench has a simple .f language that allows you to describe and build workloads to simulate applications. You can create workloads to replace all the pre-mentioned benchmarks. But more importantly, you can create workloads to simulate complex applications such as a database. For instance, i didn't have to buy an Oracle license nor figure out how to install it on my system to find out if my changes to the vdev cache for ZFS helped database performance or not. I just used FileBench and its 'oltp.f' workload.
FileBench is an active project. You are encouraged to use it and help make it better. If you have questions, please ask them in the perf-discuss forum (perf-discuss AT opensolaris DOT org). A slightly out-dated quickstart guide is available.

There are some scripts for specific workload, such as oltp and randomread and more details about using FileBench on the Solaris Internals Wiki.

No comments: