Home | History | Annotate | Download | only in workloads
      1 #
      2 # CDDL HEADER START
      3 #
      4 # The contents of this file are subject to the terms of the
      5 # Common Development and Distribution License (the "License").
      6 # You may not use this file except in compliance with the License.
      7 #
      8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
      9 # or http://www.opensolaris.org/os/licensing.
     10 # See the License for the specific language governing permissions
     11 # and limitations under the License.
     12 #
     13 # When distributing Covered Code, include this CDDL HEADER in each
     14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
     15 # If applicable, add the following below this CDDL HEADER, with the
     16 # fields enclosed by brackets "[]" replaced with your own identifying
     17 # information: Portions Copyright [yyyy] [name of copyright owner]
     18 #
     19 # CDDL HEADER END
     20 #
     21 #
     22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
     23 # Use is subject to license terms.
     24 #
     25 
     26 # $dir - directory for datafiles
     27 # $eventrate - event generator rate (0 == free run)
     28 # $iosize - iosize for database block access
     29 # $nshadows - number of shadow processes
     30 # $ndbwriters - number of database writers
     31 
     32 set $dir=/tmp
     33 set $eventrate=0
     34 set $iosize=2k
     35 set $nshadows=200
     36 set $ndbwriters=10
     37 set $runtime=30
     38 set $usermode=20000
     39 set $memperthread=1m
     40 
     41 debug 1
     42 eventgen rate=$eventrate
     43 
     44 # Define a datafile and logfile
     45 define file name=aux.df,path=$dir,size=251m,reuse,prealloc,paralloc
     46 define file name=control_001,path=$dir,size=2m,reuse,prealloc,paralloc
     47 define file name=cust_0_0,path=$dir,size=6704m,reuse,prealloc,paralloc
     48 define file name=cust_0_1,path=$dir,size=6704m,reuse,prealloc,paralloc
     49 define file name=cust_0_2,path=$dir,size=6704m,reuse,prealloc,paralloc
     50 define file name=cust_0_3,path=$dir,size=6704m,reuse,prealloc,paralloc
     51 define file name=dist_0_0,path=$dir,size=31m,reuse,prealloc,paralloc
     52 define file name=hist_0_0,path=$dir,size=3002m,reuse,prealloc,paralloc
     53 define file name=icust1_0_0,path=$dir,size=4943m,reuse,prealloc,paralloc
     54 define file name=icust2_0_0,path=$dir,size=4943m,reuse,prealloc,paralloc
     55 define file name=idist_0_0,path=$dir,size=11m,reuse,prealloc,paralloc
     56 define file name=iitem_0_0,path=$dir,size=11m,reuse,prealloc,paralloc
     57 define file name=iordr2_0_0,path=$dir,size=1651m,reuse,prealloc,paralloc
     58 define file name=istok_0_0,path=$dir,size=2262m,reuse,prealloc,paralloc
     59 define file name=item_0_0,path=$dir,size=21m,reuse,prealloc,paralloc
     60 define file name=iware_0_0,path=$dir,size=11m,reuse,prealloc,paralloc
     61 define file name=nord_0_0,path=$dir,size=561m,reuse,prealloc,paralloc
     62 define file name=ordr_0_0,path=$dir,size=44301m,reuse,prealloc,paralloc
     63 define file name=roll1,path=$dir,size=2001m,reuse,prealloc,paralloc
     64 define file name=sp_0,path=$dir,size=1001m,reuse,prealloc,paralloc
     65 define file name=stok_0_0,path=$dir,size=8052m,reuse,prealloc,paralloc
     66 define file name=stok_0_1,path=$dir,size=8052m,reuse,prealloc,paralloc
     67 define file name=stok_0_2,path=$dir,size=8052m,reuse,prealloc,paralloc
     68 define file name=stok_0_3,path=$dir,size=8052m,reuse,prealloc,paralloc
     69 define file name=stok_0_4,path=$dir,size=8052m,reuse,prealloc,paralloc
     70 define file name=system_1,path=$dir,size=401m,reuse,prealloc,paralloc
     71 define file name=temp_0_0,path=$dir,size=4943m,reuse,prealloc,paralloc
     72 define file name=temp_0_1,path=$dir,size=4943m,reuse,prealloc,paralloc
     73 define file name=ware_0_0,path=$dir,size=11m,reuse,prealloc,paralloc
     74 define file name=log_1_1,path=$dir,size=1021m,reuse,prealloc,paralloc
     75 
     76 # Define database writer processes
     77 define process name=dbwr,instances=$ndbwriters
     78 {
     79   thread name=dbwr,memsize=$memperthread,useism
     80   {
     81 	flowop aiowrite name=dbaiowrite-aux.df,filename=aux.df,
     82                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     83         flowop aiowrite name=dbaiowrite-control_001,filename=control_001,
     84                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     85         flowop aiowrite name=dbaiowrite-cust_0_0,filename=cust_0_0,
     86                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     87         flowop aiowrite name=dbaiowrite-cust_0_1,filename=cust_0_1,
     88                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     89         flowop aiowrite name=dbaiowrite-cust_0_2,filename=cust_0_2,
     90                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     91         flowop aiowrite name=dbaiowrite-cust_0_3,filename=cust_0_3,
     92                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     93         flowop aiowrite name=dbaiowrite-dist_0_0,filename=dist_0_0,
     94                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     95         flowop aiowrite name=dbaiowrite-hist_0_0,filename=hist_0_0,
     96                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     97         flowop aiowrite name=dbaiowrite-icust1_0_0,filename=icust1_0_0,
     98                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
     99         flowop aiowrite name=dbaiowrite-icust2_0_0,filename=icust2_0_0,
    100                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    101         flowop aiowrite name=dbaiowrite-idist_0_0,filename=idist_0_0,
    102                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    103         flowop aiowrite name=dbaiowrite-iitem_0_0,filename=iitem_0_0,
    104                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    105         flowop aiowrite name=dbaiowrite-iordr2_0_0,filename=iordr2_0_0,
    106                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    107         flowop aiowrite name=dbaiowrite-istok_0_0,filename=istok_0_0,
    108                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    109         flowop aiowrite name=dbaiowrite-item_0_0,filename=item_0_0,
    110                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    111         flowop aiowrite name=dbaiowrite-iware_0_0,filename=iware_0_0,
    112                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    113         flowop aiowrite name=dbaiowrite-nord_0_0,filename=nord_0_0,
    114                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    115         flowop aiowrite name=dbaiowrite-ordr_0_0,filename=ordr_0_0,
    116                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    117         flowop aiowrite name=dbaiowrite-roll1,filename=roll1,
    118                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    119         flowop aiowrite name=dbaiowrite-sp_0,filename=sp_0,
    120                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    121         flowop aiowrite name=dbaiowrite-stok_0_0,filename=stok_0_0,
    122                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    123         flowop aiowrite name=dbaiowrite-stok_0_1,filename=stok_0_1,
    124                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    125         flowop aiowrite name=dbaiowrite-stok_0_2,filename=stok_0_2,
    126                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    127         flowop aiowrite name=dbaiowrite-stok_0_3,filename=stok_0_3,
    128                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    129         flowop aiowrite name=dbaiowrite-stok_0_4,filename=stok_0_4,
    130                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    131         flowop aiowrite name=dbaiowrite-system_1,filename=system_1,
    132                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    133         flowop aiowrite name=dbaiowrite-temp_0_0,filename=temp_0_0,
    134                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    135         flowop aiowrite name=dbaiowrite-temp_0_1,filename=temp_0_1,
    136                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    137         flowop aiowrite name=dbaiowrite-ware_0_0,filename=ware_0_0,
    138                 iosize=$iosize,workingset=10g,random,dsync,directio,iters=10
    139 	flowop hog name=dbwr-hog,value=10000
    140 	flowop semblock name=dbwr-block,value=100,highwater=10000
    141 	flowop aiowait name=dbwr-aiowait
    142   }
    143 }
    144 
    145 define process name=lgwr,instances=1
    146 {
    147   thread name=lgwr,memsize=$memperthread,useism
    148   {
    149     flowop write name=lg-write,filename=log_1_1,
    150         iosize=256k,workingset=1g,random,dsync,directio
    151 #   flowop delay name=lg-delay,value=1
    152     flowop semblock name=lg-block,value=320,highwater=1000
    153   }
    154 }
    155 
    156 define process name=shadow,instances=$nshadows
    157 {
    158   thread name=shadow,memsize=$memperthread,useism
    159   {
    160         flowop read name=shadowread-aux.df,filename=aux.df,
    161                 iosize=$iosize,workingset=10g,random,dsync,directio
    162         flowop hog name=shadowhog,value=$usermode
    163         flowop read name=shadowread-control_001,filename=control_001,
    164                 iosize=$iosize,workingset=10g,random,dsync,directio
    165         flowop hog name=shadowhog,value=$usermode
    166         flowop read name=shadowread-cust_0_0,filename=cust_0_0,
    167                 iosize=$iosize,workingset=10g,random,dsync,directio
    168         flowop hog name=shadowhog,value=$usermode
    169         flowop read name=shadowread-cust_0_1,filename=cust_0_1,
    170                 iosize=$iosize,workingset=10g,random,dsync,directio
    171         flowop hog name=shadowhog,value=$usermode
    172         flowop read name=shadowread-cust_0_2,filename=cust_0_2,
    173                 iosize=$iosize,workingset=10g,random,dsync,directio
    174         flowop hog name=shadowhog,value=$usermode
    175         flowop read name=shadowread-cust_0_3,filename=cust_0_3,
    176                 iosize=$iosize,workingset=10g,random,dsync,directio
    177         flowop hog name=shadowhog,value=$usermode
    178         flowop read name=shadowread-dist_0_0,filename=dist_0_0,
    179                 iosize=$iosize,workingset=10g,random,dsync,directio
    180         flowop hog name=shadowhog,value=$usermode
    181         flowop read name=shadowread-hist_0_0,filename=hist_0_0,
    182                 iosize=$iosize,workingset=10g,random,dsync,directio
    183         flowop hog name=shadowhog,value=$usermode
    184         flowop read name=shadowread-icust1_0_0,filename=icust1_0_0,
    185                 iosize=$iosize,workingset=10g,random,dsync,directio
    186         flowop hog name=shadowhog,value=$usermode
    187         flowop read name=shadowread-icust2_0_0,filename=icust2_0_0,
    188                 iosize=$iosize,workingset=10g,random,dsync,directio
    189         flowop hog name=shadowhog,value=$usermode
    190         flowop read name=shadowread-idist_0_0,filename=idist_0_0,
    191                 iosize=$iosize,workingset=10g,random,dsync,directio
    192         flowop hog name=shadowhog,value=$usermode
    193         flowop read name=shadowread-iitem_0_0,filename=iitem_0_0,
    194                 iosize=$iosize,workingset=10g,random,dsync,directio
    195         flowop hog name=shadowhog,value=$usermode
    196         flowop read name=shadowread-iordr2_0_0,filename=iordr2_0_0,
    197                 iosize=$iosize,workingset=10g,random,dsync,directio
    198         flowop hog name=shadowhog,value=$usermode
    199         flowop read name=shadowread-istok_0_0,filename=istok_0_0,
    200                 iosize=$iosize,workingset=10g,random,dsync,directio
    201         flowop hog name=shadowhog,value=$usermode
    202         flowop read name=shadowread-item_0_0,filename=item_0_0,
    203                 iosize=$iosize,workingset=10g,random,dsync,directio
    204         flowop hog name=shadowhog,value=$usermode
    205         flowop read name=shadowread-iware_0_0,filename=iware_0_0,
    206                 iosize=$iosize,workingset=10g,random,dsync,directio
    207         flowop hog name=shadowhog,value=$usermode
    208         flowop read name=shadowread-nord_0_0,filename=nord_0_0,
    209                 iosize=$iosize,workingset=10g,random,dsync,directio
    210         flowop hog name=shadowhog,value=$usermode
    211         flowop read name=shadowread-ordr_0_0,filename=ordr_0_0,
    212                 iosize=$iosize,workingset=10g,random,dsync,directio
    213         flowop hog name=shadowhog,value=$usermode
    214         flowop read name=shadowread-roll1,filename=roll1,
    215                 iosize=$iosize,workingset=10g,random,dsync,directio
    216         flowop hog name=shadowhog,value=$usermode
    217         flowop read name=shadowread-sp_0,filename=sp_0,
    218                 iosize=$iosize,workingset=10g,random,dsync,directio
    219         flowop hog name=shadowhog,value=$usermode
    220         flowop read name=shadowread-stok_0_0,filename=stok_0_0,
    221                 iosize=$iosize,workingset=10g,random,dsync,directio
    222         flowop hog name=shadowhog,value=$usermode
    223         flowop read name=shadowread-stok_0_1,filename=stok_0_1,
    224                 iosize=$iosize,workingset=10g,random,dsync,directio
    225         flowop hog name=shadowhog,value=$usermode
    226         flowop read name=shadowread-stok_0_2,filename=stok_0_2,
    227                 iosize=$iosize,workingset=10g,random,dsync,directio
    228         flowop hog name=shadowhog,value=$usermode
    229         flowop read name=shadowread-stok_0_3,filename=stok_0_3,
    230                 iosize=$iosize,workingset=10g,random,dsync,directio
    231         flowop hog name=shadowhog,value=$usermode
    232         flowop read name=shadowread-stok_0_4,filename=stok_0_4,
    233                 iosize=$iosize,workingset=10g,random,dsync,directio
    234         flowop hog name=shadowhog,value=$usermode
    235         flowop read name=shadowread-system_1,filename=system_1,
    236                 iosize=$iosize,workingset=10g,random,dsync,directio
    237         flowop hog name=shadowhog,value=$usermode
    238         flowop read name=shadowread-temp_0_0,filename=temp_0_0,
    239                 iosize=$iosize,workingset=10g,random,dsync,directio
    240         flowop hog name=shadowhog,value=$usermode
    241         flowop read name=shadowread-temp_0_1,filename=temp_0_1,
    242                 iosize=$iosize,workingset=10g,random,dsync,directio
    243         flowop hog name=shadowhog,value=$usermode
    244         flowop read name=shadowread-ware_0_0,filename=ware_0_0,
    245                 iosize=$iosize,workingset=10g,random,dsync,directio
    246         flowop hog name=shadowhog,value=$usermode
    247         flowop read name=shadowread-log_1_1,filename=log_1_1,
    248                 iosize=$iosize,workingset=10g,random,dsync,directio
    249         flowop hog name=shadowhog,value=$usermode
    250 	flowop sempost name=shadow-post-lg,value=1,target=lg-block,blocking
    251 	flowop sempost name=shadow-post-dbwr,value=1,target=dbwr-block,blocking
    252 	flowop eventlimit name=random-rate
    253   }
    254 }
    255 
    256 echo "Tpcso Version 2.1 personality successfully loaded"
    257 usage "Usage: set \$dir=<dir>         defaults to $dir"
    258 usage " "
    259 usage "       set \$eventrate=<value> defaults to $eventrate"
    260 usage " "
    261 usage "       set \$iosize=<value>    defaults to $iosize, typically 2k or 8k"
    262 usage " "
    263 usage "       set \$memperthread=<value> defaults to $memperthread, there are 211 threads"
    264 usage " "
    265 usage "       run runtime (e.g. run 60)"
    266 usage " "
    267 usage "Note - this workload needs at least 512MB of of memory"
    268 usage " "
    269