SLOB Sustained Throughput Test: Running SLOB
This page is part of a process for running a sustained throughput test using Oracle SLOB. If you stumbled across this by accident, you can start at the beginning here.
So far we’ve prepared a database and installed the SLOB toolkit, so now it’s time to run SLOB and gather some results. Remember, this is going to be a sustained throughput test (I’m running it for 8 hours but you might want to try even longer).
Having said that, if you’ve haven’t run a single test yet it might be prudent to set the RUN_TIME parameter to something like 120 seconds and issue a small test, just to make sure everything works ok. You don’t want to come back 8 hours later and discover it was all horribly wrong.
I’m going to call SLOB’s runit.sh script using nohup so that if I get disconnected during the test it doesn’t terminate. You could of course use screen or some other method to achieve the same purpose. We specified that this test would use 96 sessions
[oracle@server4 SLOB]$ nohup ./runit.sh 96 > run.log 2>&1 & [1] 16147
At this point SLOB should be running so we can tail the logfile and see what’s happening:
[oracle@server4 SLOB]$ tail -100f run.log nohup: ignoring input NOTIFY : 2014.07.16-20:19:50 : Conducting SLOB pre-test checks. NOTIFY: UPDATE_PCT == 25 RUN_TIME == 28800 WORK_LOOP == 0 SCALE == 1398101 WORK_UNIT == 3 ADMIN_SQLNET_SERVICE == "" SQLNET_SERVICE_MAX == "0" admin_connect_string == "/ as sysdba" non_admin_connect_string == "" admin_conn == "sqlplus -L / as sysdba" NOTIFY : 2014.07.16-20:19:50 : Verifying connectivity. NOTIFY : 2014.07.16-20:19:50 : Testing SYSDBA connectivity to the instance to validate slob.conf settings. NOTIFY : 2014.07.16-20:19:50 : Testing connectivity to instance (user0/user0) NOTIFY : 2014.07.16-20:19:50 : Testing connectivity to instance (user96/user96) NOTIFY : 2014.07.16-20:19:50 : Connectivity verified. NOTIFY : 2014.07.16-20:19:50 : Performing redo log switch. NOTIFY : 2014.07.16-20:19:52 : Redo log switch complete. NOTIFY : 2014.07.16-20:19:52 : Setting up trigger mechanism. NOTIFY : 2014.07.16-20:20:02 : Running iostat, vmstat and mpstat on current host--in background. Connecting sessions... NOTIFY : 2014.07.16-20:20:07 : Pausing for 5 seconds before triggering the test. NOTIFY : 2014.07.16-20:20:12 : Executing AWR "before" procedure. NOTIFY : 2014.07.16-20:20:12 : admin_conn is sqlplus -L / as sysdba NOTIFY : 2014.07.16-20:20:12 : Triggering the test. NOTIFY : 2014.07.16-20:20:12 : This is not a fixed-iteration run (see slob.conf->WORK_LOOP). Waiting for 28797 seconds before monitoring for job completion NOTIFY : 2014.07.17-04:20:13 : Tm 28801 NOTIFY : 2014.07.17-04:20:13 : Executing AWR "after" procedure. NOTIFY : 2014.07.17-04:20:13 : admin_conn is sqlplus -L / as sysdba NOTIFY : 2014.07.17-04:30:44 : Terminating background data collectors. ./runit.sh: line 490: 628 Killed ( iostat -xm 3 > iostat.out 2>&1 ) ./runit.sh: line 490: 629 Killed ( vmstat 3 > vmstat.out 2>&1 ) ./runit.sh: line 490: 630 Killed ( mpstat -P ALL 3 > mpstat.out 2>&1 ) NOTIFY : 2014.07.17-04:30:45 : Generating AWR reports. HTML reports will be compressed. NOTIFY : 2014.07.17-04:30:45 : admin_conn is sqlplus -L / as sysdba NOTIFY : 2014.07.17-04:30:45 : SLOB test is complete.
The test ran for 8 hours and completed. As a result, there are a number of new files in the SLOB directory for us to look at:
[oracle@server4 SLOB]$ ls -l total 1864 drwxr-xr-x 2 oracle oinstall 4096 May 4 2013 advanced_topics drwxr-xr-x 2 oracle oinstall 4096 May 3 2013 awr -rw-r--r-- 1 oracle oinstall 489286 Jul 17 04:30 awr_rac.html -rw-r--r-- 1 oracle oinstall 138287 Jul 17 04:30 awr_rac.txt -rw-r--r-- 1 oracle oinstall 286726 Jul 17 04:30 awr.txt -rwxr-xr-x 1 oracle oinstall 7390 Jul 16 17:00 create_sem -rw-r--r-- 1 oracle oinstall 25 Jul 16 17:40 drop_users.sql -rw-r--r-- 1 oracle oinstall 784634 Jul 17 04:30 iostat.out drwxr-xr-x 4 oracle oinstall 4096 May 5 2013 misc -rw-r--r-- 1 oracle oinstall 78775 Jul 17 04:30 mpstat.out -rwxr-xr-x 1 oracle oinstall 7278 Jul 16 17:00 mywait -rw-r--r-- 1 oracle oinstall 2143 Jul 17 04:30 run.log -rwxr-xr-x 1 oracle oinstall 3353 Jan 13 2014 procedure.sql -rw-r--r-- 1 oracle oinstall 1298 May 4 2013 README -rwxr-xr-x 1 oracle oinstall 307 Mar 11 15:30 README.bundle.2014.03.11.txt -rwxr-xr-x 1 oracle oinstall 12354 Jan 13 2014 runit.sh -rw-r--r-- 1 oracle oinstall 404 Jul 16 17:40 setup.log -rwxr-xr-x 1 oracle oinstall 7555 May 4 2013 setup.sh -rw-r--r-- 1 oracle oinstall 1155 May 2 2013 simple.ora -rw-r--r-- 1 oracle oinstall 400 Jul 16 18:01 slob.conf -rwxr-xr-x 1 oracle oinstall 5600 Jan 13 2014 slob.sql -rw-r--r-- 1 oracle oinstall 6 Jul 17 04:30 tm.out -rwxr-xr-x 1 oracle oinstall 7085 Jul 16 17:00 trigger -rw-r--r-- 1 oracle oinstall 2766 Jul 17 04:30 vmstat.out drwxr-xr-x 2 oracle oinstall 4096 Jul 16 17:00 wait_kit
The AWR reports are always interesting, but don’t forget this sustained throughput test ran for 8 hours. Looking at one AWR report showing the averages over 8 hours isn’t going to tell me a lot, so for this test I’m actually more interested in the three *.out files showing the output from the operating system tools iostat, mpstat and vmstat. In the next section I’m going to use some of this information to graph the outcome of my tests…
Next page: Interpreting SLOB Results
Pingback: SLOB Sustained Throughput Test: Running SLOB | EasyOraDBA | Shadab Mohammad