1*5184Sek110237#
2*5184Sek110237# CDDL HEADER START
3*5184Sek110237#
4*5184Sek110237# The contents of this file are subject to the terms of the
5*5184Sek110237# Common Development and Distribution License (the "License").
6*5184Sek110237# You may not use this file except in compliance with the License.
7*5184Sek110237#
8*5184Sek110237# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*5184Sek110237# or http://www.opensolaris.org/os/licensing.
10*5184Sek110237# See the License for the specific language governing permissions
11*5184Sek110237# and limitations under the License.
12*5184Sek110237#
13*5184Sek110237# When distributing Covered Code, include this CDDL HEADER in each
14*5184Sek110237# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*5184Sek110237# If applicable, add the following below this CDDL HEADER, with the
16*5184Sek110237# fields enclosed by brackets "[]" replaced with your own identifying
17*5184Sek110237# information: Portions Copyright [yyyy] [name of copyright owner]
18*5184Sek110237#
19*5184Sek110237# CDDL HEADER END
20*5184Sek110237#
21*5184Sek110237#
22*5184Sek110237# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
23*5184Sek110237# Use is subject to license terms.
24*5184Sek110237#
25*5184Sek110237# ident	"%Z%%M%	%I%	%E% SMI"
26*5184Sek110237
27*5184Sek110237# 128M worth of random 8K-aligned write(2) to a 1G file; followed by fsync(); cached.
28*5184Sek110237
29*5184Sek110237set $dir=/tmp
30*5184Sek110237set $nthreads=1
31*5184Sek110237set $iosize=2k
32*5184Sek110237set $count=65536
33*5184Sek110237set $filesize=1g
34*5184Sek110237set $iters=1
35*5184Sek110237
36*5184Sek110237define fileset name=bigfile,path=$dir,size=$filesize,entries=$nthreads,dirwidth=1024,prealloc
37*5184Sek110237
38*5184Sek110237define process name=filewriter,instances=1
39*5184Sek110237{
40*5184Sek110237  thread name=filewriterthread,memsize=10m,instances=$nthreads
41*5184Sek110237  {
42*5184Sek110237    flowop write name=write-file,filesetname=bigfile,random,dsync,iosize=$iosize,fd=1,iters=$iters
43*5184Sek110237    flowop finishoncount name=finish,value=$count
44*5184Sek110237  }
45*5184Sek110237}
46*5184Sek110237
47*5184Sek110237echo  "FileMicro-WriteRandFsync Version 2.0 personality successfully loaded"
48*5184Sek110237usage "Usage: set \$dir=<dir>"
49*5184Sek110237usage "       set \$filesize=<size>  defaults to $filesize"
50*5184Sek110237usage "       set \$iosize=<size>    defaults to $iosize"
51*5184Sek110237usage "       set \$count=<value>    defaults to $count"
52*5184Sek110237usage "       set \$nthreads=<value> defaults to $nthreads"
53*5184Sek110237usage "       set \$iters=<value>    defaults to $iters"
54*5184Sek110237usage " "
55*5184Sek110237usage "       run runtime (e.g. run 60)"
56