Pre-defined personalities
From Filebench
Workload personalities define the workload to apply to the system. Personalities usually include tunables for scaling workloads for specific systems. After loading a personality one can set tunables to appropriate values. Personalities are stored in files with .f
extension and can be easily customized from either the Filebench command line interface or by editing the files themselves (or copies of the files). Filebench is shipped with a library of pre-defined workload personalities, which are described in the following sections.
Summary Table
Micro-workload | |
---|---|
Personality | Description |
singlestreamread
|
A sequential read of a large (5GB by default) file. 1MB reads are used by default. |
singlestreamreaddirect
|
Same as singlestreamread , but direct I/O is used.
|
5streamread
|
A sequential read of 5 large (1GB by default) files, each with its own reader thread. 1MB reads are used by default. |
5streamreaddirect
|
Same as 5streamread , but direct I/O is used.
|
singlestreamwrite
|
A sequential write of a file. Writes stop on the end of the benchmark. 1MB writes are used by default. |
singlestreamwritedirect
|
Same as singlestreamwrite , but direct I/O is used.
|
5streamwrite
|
A sequential write of 5 files, each with its own reader thread. Writes stop on the end of the benchmark. 1MB reads are used by default. |
5streamwritedirect
|
Same as 5streamwrite , but direct I/O is used.
|
copyfiles
|
A copy of a large directory tree. This workload creates a hierarchical directory tree, then measures the rate at which files can be copied from the source tree to a new tree. A single thread is used by default, although this is configurable. |
createfiles
|
Create a directory tree and fill files. A populate of files of specified sizes a directory tree. File sizes are chosen according to a gamma distribution of 1.5, with a mean size of 16k. |
randomread
|
A multi-threaded read of a single large file, defaulting to 8k reads. A single thread is used by default, although configurable by $nthreads. |
randomwrite
|
A multi-threaded write of a single large file, defaulting to 8k writes. A single thread is used by default, although configurable by $nthreads. |
Application emulations | |
Personality | Description |
webserver
|
Emulates simple web-server I/O activity. Produces a sequence of open-read-close on multiple files in a directory tree plus a log file append. 100 threads are used by default. |
fileserver
|
Emulates simple file-server I/O activity. This workload performs a sequence of creates, deletes, appends, reads, writes and attribute operations on a directory tree. 50 threads are used by default. The workload generated is somewhat similar to SPECsfs. |
varmail
|
Emulates I/O activity of a simple mail server that stores each e-mail in a separate file (/var/mail/ server). The workload consists of a multi-threaded set of create-append-sync, read-append-sync, read and delete operations in a single directory. 16 threads are used by default. The workload generated is somewhat similar to Postmark but multi-threaded. |
oltp
|
A database emulator. This workload performs file system operations using Oracle 9i I/O model. It tests the performance of small random reads and writes, and is sensitive to the latency of moderate size (128k+) synchronous writes to the log file. By default launches 200 reader processes, 10 processes for asynchronous writing, and a log writer. The emulation includes the use of ISM shared memory as per Oracle, Sybase, etc. which is critical to I/O efficiency. (see this BUG Report) |
webproxy
|
Emulates I/O activity of a simple web proxy server. A mix of create-write-close, open-read-close, and delete operations of multiple files in a directory tree and a file append to simulate proxy log. 100 threads are used by default. |