15184Sek110237#
25184Sek110237# CDDL HEADER START
35184Sek110237#
45184Sek110237# The contents of this file are subject to the terms of the
55184Sek110237# Common Development and Distribution License (the "License").
65184Sek110237# You may not use this file except in compliance with the License.
75184Sek110237#
85184Sek110237# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
95184Sek110237# or http://www.opensolaris.org/os/licensing.
105184Sek110237# See the License for the specific language governing permissions
115184Sek110237# and limitations under the License.
125184Sek110237#
135184Sek110237# When distributing Covered Code, include this CDDL HEADER in each
145184Sek110237# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
155184Sek110237# If applicable, add the following below this CDDL HEADER, with the
165184Sek110237# fields enclosed by brackets "[]" replaced with your own identifying
175184Sek110237# information: Portions Copyright [yyyy] [name of copyright owner]
185184Sek110237#
195184Sek110237# CDDL HEADER END
205184Sek110237#
215184Sek110237#
22*6333Sek110237# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
235184Sek110237# Use is subject to license terms.
245184Sek110237#
255184Sek110237# ident	"%Z%%M%	%I%	%E% SMI"
265184Sek110237
27*6333Sek110237# Single threaded synchronous (O_DSYNC) random writes (2KB I/Os) on a 1GB file.
28*6333Sek110237# Stops when 64K ($count) writes have been done.
295184Sek110237
305184Sek110237set $dir=/tmp
315184Sek110237set $count=65536
325184Sek110237set $filesize=1g
33*6333Sek110237set $iosize=2k
345184Sek110237set $iters=1
35*6333Sek110237set $nthreads=1
365184Sek110237
37*6333Sek110237define file name=bigfile,path=$dir,size=$filesize,prealloc,reuse
385184Sek110237
395184Sek110237define process name=filewriter,instances=1
405184Sek110237{
415184Sek110237  thread name=filewriterthread,memsize=10m,instances=$nthreads
425184Sek110237  {
43*6333Sek110237    flowop write name=write-file,filename=bigfile,random,dsync,iosize=$iosize,iters=$iters
445184Sek110237    flowop finishoncount name=finish,value=$count
455184Sek110237  }
465184Sek110237}
475184Sek110237
48*6333Sek110237echo  "FileMicro-WriteRandDsync Version 2.1 personality successfully loaded"
495184Sek110237usage "Usage: set \$dir=<dir>"
50*6333Sek110237usage "       set \$count=<value>    defaults to $count"
515184Sek110237usage "       set \$filesize=<size>  defaults to $filesize"
525184Sek110237usage "       set \$iosize=<size>    defaults to $iosize"
53*6333Sek110237usage "       set \$iters=<value>    defaults to $iters"
545184Sek110237usage "       set \$nthreads=<value> defaults to $nthreads"
555184Sek110237usage " "
565184Sek110237usage "       run runtime (e.g. run 60)"
57