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