Swingbench
Changing java libraries and increasing the heap size used by swingbench
15/01/12 11:57
I’ve
been asked a couple of times recently about how to
change the infrastructure libraries i.e. the Oracle
jdbc driver. I try to always ship the latest
jdbc/ons/ucp libraries but its possible that Oracle
may realease a patch set whilst I’m working on
something else. Its also possible people may want to
investigate a bug or performance problem by trying
out a selection of drivers. To change the jar files
all that is needed is to move the old version out of
the lib directory and copy the new one in, for
example
Don’t try and keep multiple versions of the same driver in the lib directory. It can lead to unexpected results. When swingbench starts it looks in the lib directory for all the libraries (contained in the jar files) to use.
If you need to increase the amount of memory used by swingbench you need to edit a file called launcher.xml in the launcher directory. You might need to do this if you are planning to run with many thousands of threads. You need to changed the default value (1024m) to a larger one. For example
to something like
$>
cd swingbench
$> mv
lib/ojdbc6.jar ~/backup/ojdbc6.jar
$> cp ~/newjdbc/ojcbc6.jar
lib Don’t try and keep multiple versions of the same driver in the lib directory. It can lead to unexpected results. When swingbench starts it looks in the lib directory for all the libraries (contained in the jar files) to use.
If you need to increase the amount of memory used by swingbench you need to edit a file called launcher.xml in the launcher directory. You might need to do this if you are planning to run with many thousands of threads. You need to changed the default value (1024m) to a larger one. For example
<jvmargset id="base.jvm.args">
<jvmarg
line="-Xmx1024m"/>
</jvmargset>
to something like
<jvmargset id="base.jvm.args">
<jvmarg
line="-Xmx4096m"/>
</jvmargset>
|
New build of swingbench 2.4
08/12/11 19:56
I’ve
just uploaded a new build of swingbench with the
following fixes
You can find it here. Let me know if you find any problems.
- Wizard now writes output to debug.log correctly with the -debugFile option
- Fixed bug where partitioning was always installed regardless. This meant the wizards couldn't install against a standard edition database
- Fixed a bug where swingbench wouldn't start unless all users were able to log on. Swingbench will now start when it has logged on as many users as it can.
- Fixed a bug where users were incorrectly counted as being logged on
- Fixed a bug where logging wasn't correctly written to a debug file
- Changed -debugFile to -debugf to provide consistency with other tools
- Changed to way users logged on is reported in verbose mode of charbench
- Updated the secure shell libraries to support Solaris 11
You can find it here. Let me know if you find any problems.
2.4 makes it to stable status
08/11/11 16:02
At
last I feel that I’ve fixed enough bugs and had
enough feed back to change 2.4 to stable status. This
means that this should be the default client most
groups use. Based on the feedback I get I’ll
remove 2.3 from the downloads page.
There has been a few changes in this release. These include
The new Overview chart is show below

As per usual you can download it here
There has been a few changes in this release. These include
- Improvements to the Overviewchart to provide dynamic YXAxis and floating legends
- The overview chart now uses a 5 second rolling window for response time metrics as opposed to a meaningless average
- “Minibench”
has been made a little bigger

- Numerous fixes to the wizards
- Numerous fixes to Universal Connection Pooling
- New command line options
The new Overview chart is show below

As per usual you can download it here
New Build of swingbench 2.4
06/05/11 18:43
It’s
been 2 or 3 months since the last drop of swingbench
and so it will come as no surprise that I’ve
released another build. This release features
- Fix to enable the jdbc version of the SOE benchmark to work without errors. I’ll be updating it over the coming week to try and make it as close as possible to the PL/SQL version
- A
new parameter (and UI change) to support the
disconnect/connection of sessions after a fixed
number of transactions

- Various fixes
New build of swingbench 2.4
15/02/11 10:22
I’ve
just uploaded a new build of swingbench 2.4 it has a
number of bug fixes which sort out some of the
following issues
You can download it here
Let me know if you have any problems via the comment page
- Unexpected termination due to driver issues
- Unclear timeline text on the overview chart
- Numerous UI and java issues
You can download it here
Let me know if you have any problems via the comment page
New build of Swingbench
31/08/10 16:22
After a bit of a delay Im releasing a new build of
swingbench. It has a large number of fixes reflected
in the difference in build numbers. Some of the
changes include
The new report looks like this
Im hoping it should make it easier to understand if a install worked correctly.
You can download the new build here. As usual let me know if it hangs together.
- A new report at the end of wizard driven install that details the speed of the install but also whether the objects that have been created are valid
- A fix to clusteroverview that prevented it starting
- A fix to the cpumonitor that prevented it from running in some instances
- Some icon changes
- Warning and error alerts are now fired inside of the wizard to highlight potential issues
- Fix that prevented install logs being saved
- Average response time can now be displayed in command line mode
- Removed the required to run the wizards in headless mode
- Fixed numerous UCP issues
- Many other fixes
The new report looks like this
Im hoping it should make it easier to understand if a install worked correctly.
You can download the new build here. As usual let me know if it hangs together.
Minor update to swingbench
24/05/10 15:35
And another update to 2.4...
13/05/10 20:45
Another minor update incoming to 2.4.0.639.... minor
fixes. You can download it here
Update to swingbench 2.4
15/04/10 21:05
I’ve updated swingbench to build 628 which
includes the following fixes
- Updates to the “order entry” benchmark
- Wizards now use user selected thread count
- Swingbench now correctly loads new config files from the menu
- Feedback on wizard builds (metrics such as MB/sec generated etc)
- Checks at start and end of wizard builds
- New benchmark run summaries
Large SOE builds... things to watch for
25/03/10 10:57
A couple of things to watch for if you are building a
large SOE schema. The first is temp space. I guess
its obvious but if you are building a 1TB schema with
100GB+ tables the indexes are going to be pretty big
as well. If you are creating big indexes you need
plenty of TEMP. The number of schema’s
I’ve looked at that haven’t had their
indexes build is amazing. I guess this is partly my
fault as well. I’ll include a start and end
validation process in the next build. Should have
done this before but I guess people weren’t
building such big schema’s
As a guide line for a schema of size “x” I’d have at least “x/6” worth of temp space i.e. 1TB schema needs about 180GB of temp. You can resize it after the build to what ever you decide is appropriate.
As to what it should look like on completion... well something like this
Another really important thing is to include the SOE_MIN_CUSTOMER_ID and SOE_MAX_CUSTOMER_ID in the environment variables within the config file. This will reduce the startup time of the benchmark. Follow the instructions below or edit the config file
Select the Environment Variables tab and press the
button (you’ll need to do
this for each environment variable).
Add two Enviroment variables
You can determine what thes values are by running a piece of SQL similar to this when logged into the SOE schema
After adding the variables you should end up with something that looks similar to this
As a guide line for a schema of size “x” I’d have at least “x/6” worth of temp space i.e. 1TB schema needs about 180GB of temp. You can resize it after the build to what ever you decide is appropriate.
As to what it should look like on completion... well something like this
SOE@//localhost/orcl > @tables;
Tables
======
Table
Rows Blocks
Size Compression Indexes Partitions
Analyzed
-------------------- ----------
----- ------
----------- ------- ---------- ----------
WAREHOUSES
1,000
60
1024k Disabled
2
0
< Week
ORDERS
225,000
1,636
13M
Disabled
5
0
< Week
INVENTORIES
924,859
10,996
87M
Disabled
3
0
< Week
ORDER_ITEMS
587,151
2,392
19M
Disabled
3
0
< Week
PRODUCT_DESCRIPTIONS 1,000
60
1024k Disabled
2
0
< Week
LOGON
50,000
250
2M
Disabled
0
0
< Week
PRODUCT_INFORMATION
1,000
60
1024k Disabled
3
0
< Week
CUSTOMERS
200,000
2,014
16M
Disabled
5
0
< Week
Another really important thing is to include the SOE_MIN_CUSTOMER_ID and SOE_MAX_CUSTOMER_ID in the environment variables within the config file. This will reduce the startup time of the benchmark. Follow the instructions below or edit the config file
Select the Environment Variables tab and press the
Add two Enviroment variables
- SOE_MIN_CUSTOMER_ID : The value equals the smallest customer id in the data set, usually 1
- SOE_MAX_CUSTOMER_ID : The largerst customer id found in the data set
You can determine what thes values are by running a piece of SQL similar to this when logged into the SOE schema
SELECT
/*+
PARALLEL(CUSTOMERS, 8)
*/
MIN(customer_id) SOE_MIN_CUSTOMER_ID,
MAX(customer_id) SOE_MAX_CUSTOMER_ID
FROM customers
After adding the variables you should end up with something that looks similar to this
Swingbench 2.4 Beta Released
23/03/10 20:03
I may regret this but it all seems to hang togther so
I’ve decided to release 2.4 of swingbench. It
dosen’t look significantly different from 2.3
but it has enough changes to warrant a point change.
These include....
The other big change is that I’’ve tried to standardise the benchmarks. You can now choose between 1GB,10GB,100GB or 1TB. The thing to watch out for is that this refers to the raw data size. The indexes add to this quite considerably. So a 1TB will require 3.2TB of disk space. The good news is that they are massively multi threaded now and so if you have the horse power (plenty of CPUs and IO) they should build relatively quickly (12 hours for a 1TB benchmark).
I’ve also updated the look of the overview graphs to make them a little punchier... I’ll be improving them still further shortly.
So now the stuff that’s a little broken....
- New SH wizard
- New highly threaded benchmark builds for the OE and SH benchmarks
- New standard sizings for SOE and SH (1GB,10GB,100GB,1TB)
- Improved scalability of the SOE benchmark
- Oracle UCP connections
- New CPU monitor architecture (uses ssh instead of agent)
- Update look and feel on Overview charts (more coming)
- Configuration free install (Simply ensure Java is your path)
The other big change is that I’’ve tried to standardise the benchmarks. You can now choose between 1GB,10GB,100GB or 1TB. The thing to watch out for is that this refers to the raw data size. The indexes add to this quite considerably. So a 1TB will require 3.2TB of disk space. The good news is that they are massively multi threaded now and so if you have the horse power (plenty of CPUs and IO) they should build relatively quickly (12 hours for a 1TB benchmark).
I’ve also updated the look of the overview graphs to make them a little punchier... I’ll be improving them still further shortly.
So now the stuff that’s a little broken....
- Charbench’s interactive mode seems to have cracked under the weight of all the updates. I have a fix for it but it requires a 1.6 JVM and Im trying to figure out if I can port it to 1.5. In the mean time you’ll have to use timers (-rt option) until I have a workable fix.
- Backgrounding tasks seems to be a little broken as well... I hope to have a fix for this shortly.
- An end of run benchmark report. I’ve got it sort of working but it’s a little awkward looking.
- Update to coodinator controls...
- AIX cpu monitoring... I have the code. It just needs testing.
New build of swingbench
23/06/09 21:29
I’ve uploaded a new build of swingbench 422 to
the website, I’d
recommend upgrading to this build its pretty
stable and includes a lot of bug fixes. It
includes some new functionality relating to
specifying window sizes and positions for
minibench and clusteroverview. This means its
now possible to maximise the real estate used by
swingbench without having to move things around
after you’ve started it up. The following
example illustrates what’s possible.
This script start swingbench in graphical mode, sleeps to let it start, then starts 4 minibenches at different postions on the screen. The new “-cm” maximises minibench’s charts. The rest of the parameters describe what database they are connecting to and what load group they are in. The script then sleeps for 2 seconds before starting clusteroverview in a specific position. You end up with some thing that looks like this
Hope you find this useful. I intend to shortly publish a new webcast on how to set up and use clusteroverview.
./coordinator -g
&
sleep 2
./minibench -co
localhost -cm -pos 0,0 -dim
500,400
-min 300 -max
800 -a -cs
//node1/rac1 -g RAC1 &
./minibench -co
localhost -cm -pos 500,0 -dim
500,400
-min 300 -max
800 -a -cs
//node2/rac2 -g RAC2 &
./minibench -co
localhost -cm -pos 0,400
-dim 500,400
-min 300 -max
800 -a -cs
//node3/rac3 -g RAC3 &
./minibench -co
localhost -cm -pos 500,400
-dim 500,400
-min 300 -max
800 -a -cs
//node4/rac4 -g RAC4 &
sleep 2
./clusteroverview -pos
1000,0 -dim
400,800 This script start swingbench in graphical mode, sleeps to let it start, then starts 4 minibenches at different postions on the screen. The new “-cm” maximises minibench’s charts. The rest of the parameters describe what database they are connecting to and what load group they are in. The script then sleeps for 2 seconds before starting clusteroverview in a specific position. You end up with some thing that looks like this
Hope you find this useful. I intend to shortly publish a new webcast on how to set up and use clusteroverview.
New Datagenerator Screencast
29/05/09 16:23
I’ve uploaded a datagenerator screen cast
here that
explains its functionality and provides a quick
walkthrough. Let me know if its useful.
New Swingbench Screencast
24/04/09 20:06
I’ve just uploaded a new screen cast
on defining your own transactions, I get asked a
lot of questions about it. I’ve also
updated the website to enable me to do more of
them quicker. I enjoy doing them I hope they
help you.
Happy New Year... and a fix to datagenerator
09/01/09 19:02
Sorry for the delay... My DSL router has been bust
for the last week and so Im behind in everything.
So first things first.... Happy new year.
Second I’ve uploaded a new build of datagenerator it appears that I had a broken link in the last build. This new version fixes a few minor bugs with dates. You can find it in the usual place here
Thirdly stick with me over the coming months I’ve got a big workload (my proper job) on at present and Im going to have to squeeze everything else in when I can. So this means delays in bug fixes and doc. Sorry.
Dom
So first things first.... Happy new year.
Second I’ve uploaded a new build of datagenerator it appears that I had a broken link in the last build. This new version fixes a few minor bugs with dates. You can find it in the usual place here
Thirdly stick with me over the coming months I’ve got a big workload (my proper job) on at present and Im going to have to squeeze everything else in when I can. So this means delays in bug fixes and doc. Sorry.
Dom
Datagenerator Fix
19/12/08 11:20
I’ve updated datagenerator to fix a few bugs,
improve the perfromance and give a little more
feedback when running from the commandline. You can
find it in the usual place.
Broken clusteroverview in later builds
17/10/08 17:43
Flash version of the screencast now available
05/10/08 15:49
New builds of swingbench and datagenerator
01/10/08 16:38
I’ve uploaded new builds of swingbench and
datagenerator to fix a few niggly bugs. You can
download them from here
New Swingbench Screencast
01/10/08 16:36
Ive added a new swingbench screencast which is a
complete walkthrough from the installation of
swingbench to the running of a benchmark. I’ve
also provided a commentary. So if you ever wondered
what I sound like try it out here
Datagenerator 0.4
02/09/08 20:09
I've uploaded a new build of datagenerator. New
features include
The new build can be downloaded here
I’ve also updated the install, and added some additional walk throughs (in the swingbench section)
Lets go through some of the new features in a little more detail.
You can now include indexes and sequences inside of a datagenerator definition
This makes it easy to build an entire schema for a benchmark run removing the need to run additional scripts afterwards. Currently I don't support their reverse engineering but that will come.
Previously it was possible to specify multiple threads for a datageneration run but each table was allocated a single thread. In this version a user can soft partition a table and hence break the build into smaller units which can each have a thread allocated to them.
This means that if you have a 32 CPU server you'll be able to build a 10 billion row table much faster if you soft partition the table into 32 units and allocate 32 threads for the build. The partition key can be either a date or number. This is also useful to avoid resource contention when inserting data into a partitioned table.
Its now possible to run the entire data generation to file or database from the command line. These include
[dgiles@macbook bin]$ ./datagenerator -h
usage: parameters:
-async perform async commits
-bs batch size of inserts (defaults to 50)
-c specify config file
-cl use command line interface
-commit number of inserts between commits
-cs connectring for database insertion
-d output directory (defaults to "data")
-db write data direct to database
-ddl just generate the ddl to be used
-debug turn on debug information
-dt driver type (oci|thin)
-f write data to file
-g use graphical user interface
-h,--help print this message
-ni don't create any indexes after data creation
-nodrop don't drop tables if they exist
-p password for database insertion
-s run silent
-scale mulitiplier for default config
-tc number of generation threads (defaults to 2)
-u username for database insertion
-z compress the results file
The config files for the soe and sh schema are now by default configured for a 1GB build. These can be scaled up by using the -scale option. To build a 100GB sh schema the following command can be used.
./datagenerator -c sh.xml -cl -scale 100
This functionality is supplemented by a new flag on a table definition.
Only tables with this flag enabled will be scaled up.
It is now possible to use the row count of a table as the maximum value of a number generator. This is useful when scaling up/down a datageneration and maintaining data coverage and referential integrity.
As the number of rows in the referenced table increase so does the the maximum value of the data generator.
This build supports the use of asynchronous commits. This results in performance increases of about 10-30% when this option is enabled. I’ve also undergone several database
It is sometimes useful to only create the DDL that will used to create tables and indexes.
The files that are created can be edited and modified to include additional information such as storage definitions.
- Support for indexes and sequences
- New command line options
- Better multi threading support
- New scaleable data builds
- Number generators can reference row counts from other tables
- Better database performance
- Ability to generate only the DDL of a schema
- Numerous bug fixes
The new build can be downloaded here
I’ve also updated the install, and added some additional walk throughs (in the swingbench section)
Lets go through some of the new features in a little more detail.
Indexes and Sequences
You can now include indexes and sequences inside of a datagenerator definition
This makes it easy to build an entire schema for a benchmark run removing the need to run additional scripts afterwards. Currently I don't support their reverse engineering but that will come.
Better multithreading support
Previously it was possible to specify multiple threads for a datageneration run but each table was allocated a single thread. In this version a user can soft partition a table and hence break the build into smaller units which can each have a thread allocated to them.
This means that if you have a 32 CPU server you'll be able to build a 10 billion row table much faster if you soft partition the table into 32 units and allocate 32 threads for the build. The partition key can be either a date or number. This is also useful to avoid resource contention when inserting data into a partitioned table.
New command line options
Its now possible to run the entire data generation to file or database from the command line. These include
[dgiles@macbook bin]$ ./datagenerator -h
usage: parameters:
-async perform async commits
-bs batch size of inserts (defaults to 50)
-c specify config file
-cl use command line interface
-commit number of inserts between commits
-cs connectring for database insertion
-d output directory (defaults to "data")
-db write data direct to database
-ddl just generate the ddl to be used
-debug turn on debug information
-dt driver type (oci|thin)
-f write data to file
-g use graphical user interface
-h,--help print this message
-ni don't create any indexes after data creation
-nodrop don't drop tables if they exist
-p password for database insertion
-s run silent
-scale mulitiplier for default config
-tc number of generation threads (defaults to 2)
-u username for database insertion
-z compress the results file
Scaleable data builds
The config files for the soe and sh schema are now by default configured for a 1GB build. These can be scaled up by using the -scale option. To build a 100GB sh schema the following command can be used.
./datagenerator -c sh.xml -cl -scale 100
This functionality is supplemented by a new flag on a table definition.
Only tables with this flag enabled will be scaled up.
Referenceable row counts
It is now possible to use the row count of a table as the maximum value of a number generator. This is useful when scaling up/down a datageneration and maintaining data coverage and referential integrity.
As the number of rows in the referenced table increase so does the the maximum value of the data generator.
Better database performance
This build supports the use of asynchronous commits. This results in performance increases of about 10-30% when this option is enabled. I’ve also undergone several database
Generate only DDL
It is sometimes useful to only create the DDL that will used to create tables and indexes.
The files that are created can be edited and modified to include additional information such as storage definitions.
New build and fixes in swingbench
22/07/08 12:29
I've uploaded a new build of swingbench which
includes a number of fixes (one that broke
charbench). Apologies for this. I thought I released
the fixes if the previous build. You can find it
here.
As usual let me know if you find obvious bugs.
As usual let me know if you find obvious bugs.
Minor update to datagenerator
29/03/08 11:01
Swingbench with AWR support
25/03/08 21:25
Im uploading a new build of swingbench that includes
support for performing AWR snaps at the start and end
of of a benchmark run.
This is a common request and automates a task that a lot of people do. I've also included a new section in the stats that are generated which lists the top 10 (11 to be exact if you include CPU) wait events for a run if you choose to collect database statistics.
I've had a lot of requests about 9i support in swingbench which I appear to have broken. Can you let me know if you still think this is important (I guess its implied by the requests I've had). I need to know whether to focus on this of finish the 2.3 doc.
I'd also appreciate if you could let me know if the wait events I report are in line with the stats you get from ARW... if they're not its down to me not AWR.
Thanks...
This is a common request and automates a task that a lot of people do. I've also included a new section in the stats that are generated which lists the top 10 (11 to be exact if you include CPU) wait events for a run if you choose to collect database statistics.
I've had a lot of requests about 9i support in swingbench which I appear to have broken. Can you let me know if you still think this is important (I guess its implied by the requests I've had). I need to know whether to focus on this of finish the 2.3 doc.
I'd also appreciate if you could let me know if the wait events I report are in line with the stats you get from ARW... if they're not its down to me not AWR.
Thanks...
New build of swingbench 2.3
12/02/08 12:22
I know things have been a little slow of late in
terms of the releases of code but I've just had too
much on both at work and at home. The good news is
that I've found time to squeeze in a new build of
swingbench. This has a number of bug fixes in and the
following new functionality.
I've also included a walk through of how to set up clusteroverview in 2.3 with the new GroupID functionality, you can find it here.
Any problems report them through the usual channels...
- Clusteroverview now uses the groupID attribute to determine members of a load generation group. This provides a lot more flexibility for clusteroverview to be used to test technologies such as Oracle Dataguard
- The output from the command line option -v can now be directed to a named file with the -vo option
I've also included a walk through of how to set up clusteroverview in 2.3 with the new GroupID functionality, you can find it here.
Any problems report them through the usual channels...
Lets try that again
15/11/07 20:25
Apologies....
I've uploaded a new build with some of the fixes I thought I included in my last update .
You can download it here.
And I really have started the documentation..... Expect a first cut shortly.
I've uploaded a new build with some of the fixes I thought I included in my last update .
You can download it here.
And I really have started the documentation..... Expect a first cut shortly.
New build of swingbench (Build 341)
13/11/07 12:03
Okay... Whilst this is mostly a bug fix release....
and thanks for those who are sending them in.... more
welcome
I introduced two new piece's of functionality eek.... sorry.
The first enables to choose which charts to display in the overview chart. It can only currently be enabled by editing the config file. (Im not going to change the UI any further in this build). To enable it simply save any config file and edit the file... There's a new xml list in the Preferences section which should look like
You can edit the list and include only the ones you want to show, optionally including a maximum value. ie.
The second change allows you to specify non autoscaling charts with maximum values inside of clusteroverview. This again needs to be edit inside of the clusteroverview.xml file
Im hoping the pain of a final (I promise) change will make things simpler for clusteroverview.
I've fixed a few further bugs as well. Some unhandled exceptions and things like the charts being grey in the overview chart when they clearly should have been white (shouldn't they?)
You can download it here
I introduced two new piece's of functionality eek.... sorry.
The first enables to choose which charts to display in the overview chart. It can only currently be enabled by editing the config file. (Im not going to change the UI any further in this build). To enable it simply save any config file and edit the file... There's a new xml list in the Preferences section which should look like
<OverviewCharts>
<OverviewChart>
<Name>Disk</Name>
<MaximumValue>2.147483647E9</MaximumValue>
</OverviewChart>
<OverviewChart>
<Name>CPU</Name>
<MaximumValue>2.147483647E9</MaximumValue>
</OverviewChart>
<OverviewChart>
<Name>Response Time</Name>
<MaximumValue>2.147483647E9</MaximumValue>
</OverviewChart>
<OverviewChart>
<Name>Transactions Per Second</Name>
<MaximumValue>2.147483647E9</MaximumValue>
</OverviewChart>
<OverviewChart>
<Name>Transactions Per Minute</Name>
<MaximumValue>2.147483647E9</MaximumValue>
</OverviewChart>
</OverviewCharts>
You can edit the list and include only the ones you want to show, optionally including a maximum value. ie.
<OverviewCharts>
<OverviewChart>
<Name>CPU</Name>
</OverviewChart>
<OverviewChart>
<Name>Transactions Per Second</Name>
<MaximumValue>200</MaximumValue>
</OverviewChart>
</OverviewCharts>
The second change allows you to specify non autoscaling charts with maximum values inside of clusteroverview. This again needs to be edit inside of the clusteroverview.xml file
<DisplayedCharts>
<DisplayedChart>
<ChartName>Overview</ChartName>
</DisplayedChart>
<DisplayedChart>
<ChartName>UserConnections</ChartName>
<Autoscale>false</Autoscale>
<MaximumValue>50</MaximumValue>
</DisplayedChart>
<DisplayedChart>
<ChartName>ControlPanel</ChartName>
</DisplayedChart>
</DisplayedCharts>
Im hoping the pain of a final (I promise) change will make things simpler for clusteroverview.
I've fixed a few further bugs as well. Some unhandled exceptions and things like the charts being grey in the overview chart when they clearly should have been white (shouldn't they?)
You can download it here
Turning on Debugging
29/10/07 12:28
Sometimes things go wrong... Sometime I make
mistakes... I admit it.
To help me clear up those little issues debug information is essential... Previously to obtain this data you needed to edit the start up file. To simplify this process I've included a -debug option for the command line. So if you encounter some strange behavior, try turning this on first... Who knows it may solve the problem. if it still isn't obvious copy the text and contact me... I'll do my best to sort it out.
To help me clear up those little issues debug information is essential... Previously to obtain this data you needed to edit the start up file. To simplify this process I've included a -debug option for the command line. So if you encounter some strange behavior, try turning this on first... Who knows it may solve the problem. if it still isn't obvious copy the text and contact me... I'll do my best to sort it out.
New build of datagenerator
29/10/07 12:22
I've uploaded a new build of datagenerator. This
build has a few new features
Let me know if you encounter any problems via the comments page
- A logging window during the generation phase that should make it easier to see what's going on
- TimesTen support for datageneration (No reverse engineering at present)
- Ability to turn on debugging from the command line (-debug)
Let me know if you encounter any problems via the comments page
Candidate build of Swingbench 2.3
19/10/07 23:24
I think Im getting close to a final version of
swingbench 2.3. I've fixed tens of annoying bugs and
have started testing(!!!). I've even started the 2.3
doc. Things are very busy at work so stick with me. I
could really do with people sending me in bugs in
this build. The more bugs the faster I'll fix them
and the quicker the final build will make it through
the door. This build features
- TimesTen support for the jdbc order entry benchmark (requires datagenerator)
- New log window for wizards
- Numerous fixes
- Fixes to orderentry benchmark
- These will be the last enhancements. Only bug fixes from here on in.
- Please provide feedback via the comments page or email me directly.
New version of TraceAnalyzer 0.1 build 99
18/09/07 22:49
Just finished a new build of TraceAnalyzer... I've
uploaded it to the downloads page.
New features include
New features include
- Support for 10046 traces
- Bind parameters
- Explain Plans
- Wait Events
- Formatting of SQL
New release of swingbench, build 273
05/09/07 14:43
I hadn't realised its been over 4 months since I
released a build of swingbench. So here it is. Just a
few things
New build of Trace Analyzer nearly done as well.
- I changed the format of the config file again... Sorry.... Im almost certain this will be the last change
- The default chart is now overview although this can be changed in the preferences section
- The test connection button works for Oracle but sadly not for TimesTen yet. I'll get this fixed shortly
- Loads of minor fixes
New build of Trace Analyzer nearly done as well.
Fix for 2.2 of swingbench
29/06/07 14:14
New Viewlets and Presentation
09/06/07 21:16
The RAC SIG on the 7th June
05/06/07 13:23
Just a quick reminder. I'll be doing a presentation
to the RAC SIG on the 7th of June starting at 9am
Pacific Time.
http://www.oracleracsig.org
I'll be giving an overview of swingbench, showing the various components and what it can be used for. I'll also give a demo of the new 2.3 version of swingbench and what will make it into the production build. With a bit of luck I'll also find time to answer questions...
I was also hoping that I could include a few of your stories whether positive or negative... So if you have any feedback you'd like to include drop me a line through the comments page.
Thanks
Dom
http://www.oracleracsig.org
I'll be giving an overview of swingbench, showing the various components and what it can be used for. I'll also give a demo of the new 2.3 version of swingbench and what will make it into the production build. With a bit of luck I'll also find time to answer questions...
I was also hoping that I could include a few of your stories whether positive or negative... So if you have any feedback you'd like to include drop me a line through the comments page.
Thanks
Dom
More fixes for datagenerator
09/05/07 16:43
Presentation to the US RAC SIG
09/04/07 20:34
I'll be doing a webcast on swingbench to the US RAC
SIG on June 4th. I believe it will be starting at
9.30 PT (check the web sit for confirmation). I hope
to detail what swingbench is capable of, the best
practices when using swingbench and what I'll be
doing next. I think Im suppose to be answering
questions as well so you'll get a chance to have ago
at me for all those annoying bugs....
So if your interested join in and I'll do my best to keep it informative and entertaining.
Dom.
So if your interested join in and I'll do my best to keep it informative and entertaining.
Dom.
Sometimes we all make mistakes...
02/04/07 11:52
Its not easy keeping an idea on all aspects of
swingbench and sometimes I let stuff get through that
really shouldn't. I try my best. I made a amateurish
mistake on sequence numbers in the order entry bench.
I've uploaded a new build of 2.2 which I'll include
in the new 2.3 build shortly. If you find these
annoying little bugs or potentially big issues drop
me a line and I'll do my best to put it right.
A little coordinator/cpumonitor issue
21/03/07 08:31
I ran into this issue just recently. I couldn't get
swingbench to talk to the coordinator and sadly the
large RMI stack traces didn't explain it very well.
It turns out that Java RMI expects the hostname and
hostname.domain in the /etc/hosts file to be on a
separate line to the 127.0.0.1 localhost entry i.e.
on the second line.
For example change
127.0.0.1 localhost localhost.localdomain saturn saturn.planets
to
127.0.0.1 localhost localhost.localdomain
10.211.55.4 saturn saturn.planets
Making this simple modification gets everything working as expected. This problem is common in a DHCP environment (not ideal for benchmarking) where you acquire ip address and potentially hostnames dynamincally. Its good practice to keep them on separate lines anyway.
For example change
127.0.0.1 localhost localhost.localdomain saturn saturn.planets
to
127.0.0.1 localhost localhost.localdomain
10.211.55.4 saturn saturn.planets
Making this simple modification gets everything working as expected. This problem is common in a DHCP environment (not ideal for benchmarking) where you acquire ip address and potentially hostnames dynamincally. Its good practice to keep them on separate lines anyway.
TimesTen Fix
02/01/07 14:30
I know I had promised an update of the front end to
swingbench in my next release however its been
pointed out to me that I managed to break my TimesTen
support in one of the earlier releases. I've just
uploaded a new build that should fix these issues.
I've also uploaded a simple TimesTen walkthrough. It
can be found here
Trace Analyzer
13/11/06 20:21
So I haven't released much in the way of an update to
swingbench lately mainly because work has been so
busy...
However between meetings I put together a little program that parses Oracle trace files. Now I know TKProf does a fine job of this but I've never been really comfortable with having to continually rerun TKProf to change the ordering and filter out classes of statements. This came to a head just recently after looking through a big trace file and trying to figure out what SQL to work on first. I also thought that perhaps I could use a richer user interface to give a better overview on what has happened a particular run. So I started with the intention of figuring out how to parse the file and come up with some ideas on what to with the results... This turned out to be pretty trivial because of its structure and Java's regular expression support. With that taking much less time than expected I put them into a Java Swing JTable just to verify the results, which lead on to the next thing and then the next.... Needless to say the code is far from perfect but it does give a feel as to what could be achieved. If there is no interest I'll stop now and go back to finishing swingbench 2.3.
So In summary what does it do
• Parse trace files.
• Profile the data via a bar of the right had side of the scroll bar.
• Supports dynamic filtering and sorting of the data.
• Highlight the 5 worst performing pieces of SQL (elpased, cpu, physical etc)
What I'd like to add to it
• highlight concurrent SQL
• Explain Plans
• Display bind variables
• dump sql to flat files
• generate load files for swingbench
However unless theirs interest I probably won't bother..
You can download the code here
Leave your comments here.
However between meetings I put together a little program that parses Oracle trace files. Now I know TKProf does a fine job of this but I've never been really comfortable with having to continually rerun TKProf to change the ordering and filter out classes of statements. This came to a head just recently after looking through a big trace file and trying to figure out what SQL to work on first. I also thought that perhaps I could use a richer user interface to give a better overview on what has happened a particular run. So I started with the intention of figuring out how to parse the file and come up with some ideas on what to with the results... This turned out to be pretty trivial because of its structure and Java's regular expression support. With that taking much less time than expected I put them into a Java Swing JTable just to verify the results, which lead on to the next thing and then the next.... Needless to say the code is far from perfect but it does give a feel as to what could be achieved. If there is no interest I'll stop now and go back to finishing swingbench 2.3.
So In summary what does it do
• Parse trace files.
• Profile the data via a bar of the right had side of the scroll bar.
• Supports dynamic filtering and sorting of the data.
• Highlight the 5 worst performing pieces of SQL (elpased, cpu, physical etc)
What I'd like to add to it
• highlight concurrent SQL
• Explain Plans
• Display bind variables
• dump sql to flat files
• generate load files for swingbench
However unless theirs interest I probably won't bother..
You can download the code here
Leave your comments here.
Performance fix for datagenerator
16/10/06 19:56
Apologies for those that have already downloaded
swingbench. I managed to engineer a bug into the
latest build... I removed code responsible for array
binding on inserts into the database. I've put it
back in and, as you might expect, makes a significant
difference to this new functionality. In the next
couple of days I intend to document some simple
findings illustrating the difference between the two
approaches.
New build of datagenerator
13/10/06 20:20
I've uploaded the latest build of datagenerator. New
features include
- User definable number of threads
- Data insertion directly into the database (Oracle)
- Ordered generation of data (largest first)
- Lots and lots of small bug fixes
New build of swingbench 2.3, build 144
14/09/06 23:10
I've just uploaded a build of new swingbench. This
fixes a whole load of internal bugs that shouldn't
have been that obvious to most people. This should be
the last before I release the changes to the front
end. This hopefully should allow all swingbench
parameters to be maintained from a graphical front
end.
Fix for DSS benchmark
30/08/06 17:03
Fix for timezone support in datagenerator
30/08/06 17:00
Icon design
12/08/06 18:39
One of the problems when buiding a bespoke
application is that you can never find a icon that
reperesents exactly the action you need. Sure there
are hundreds of sites on web that have "free" icons
but these tend to be designed for the desktop. You
can sometimes find sets that look very professional
and you'd be proud to have them in your application.
However you still have the issue that you don't only
need icons to represent "file open" or "delete
record" but also ones to represent the new action
that is going make your application a best seller and
the last think you need is a icon that sticks out
like an ugly sore thumb.
So your left with a couple of choices. Go ahead and build that expensive icon set and hope that no one notices your child like attempts at graphic design. Or bite the bullet and commit your self to buiding the whole set your self. Now this not something you should attempt if you have no artistic aptitude or are short of patience. To be fair I've always been interested in graphic design but have never had the inclination or need to commit to buiding my own icon set. That was until I started working on datagenerator and swingbench. Im a one man team and I know many of you will be questioing the sense in spending time working on icons when it could better be invested in fixing bugs or working on new features, however one of my objectives when I started working on thes projects was to touch on a number of disciplines that my day to day job (core database) doesn't allow.
So once you've committed yourself to building your own bespoke set what tools do you use. Well theres no shortage of tools from bespoke icon editors to top end tools such as Adobe Illustrator and Photoshop, Paintshop pro etc. I've shyd away from icon editors in the past simply because I find them to restrictive. You find yourself spending to much time trying reproduce effects such as shadows and gradients which are pretty much the defacto standard on a modern desktop. I use two platforms these days, My Apple iMac and a Linux notebook. If I was designing icons and other graphics for a living I would invest the big bucks for a product like Adobe Illustrator... I wouldn't even hesitate, from my limited experience nothing comes close, however I dont do this for a living and it doesn't make any sense to spend a couple of thousand pounds for a dozen icons (although if someone has a spare license lying around...).
Luckily the open source market has a number of alternatives that provide a viable alternative. i dont have the time to list the various projects building superb tools to compete with the various commercial offerings but two stand out. The Gimp (worth using just to shout accross the office "I working on the Gimp") and Inkscape. The Gimp is primarily used as a raster or digital paint tool as is comaparable to Adobe Photoshop. Inkscape is a vector paint tool and is comparable to Adobe illustrator in terms of use if not functionality, it also has the added benefit of working directly in SVG. Working in a scalable format, such as SVG, is a real asset to icon design it means you can work on a large scale and then shrink or enlarge your design with very little loss in quality.
So Ive comitted to Inkscape and Im very impressed so far. It appears rock solid, has ports for MacOS and Linux, has tools for viewing your designs as they would appear as icons and has some genuinely inovative features. However it does have some flaws.... The documentation is very weak, some of the dialogues are confusing at best and its not a native port to MacOS (that really would set the cat amongst the pigeons).
That set Ive started work and its pretty straight forward to put together some consistent icons. Ill post the results shortly... don't laugh
So your left with a couple of choices. Go ahead and build that expensive icon set and hope that no one notices your child like attempts at graphic design. Or bite the bullet and commit your self to buiding the whole set your self. Now this not something you should attempt if you have no artistic aptitude or are short of patience. To be fair I've always been interested in graphic design but have never had the inclination or need to commit to buiding my own icon set. That was until I started working on datagenerator and swingbench. Im a one man team and I know many of you will be questioing the sense in spending time working on icons when it could better be invested in fixing bugs or working on new features, however one of my objectives when I started working on thes projects was to touch on a number of disciplines that my day to day job (core database) doesn't allow.
So once you've committed yourself to building your own bespoke set what tools do you use. Well theres no shortage of tools from bespoke icon editors to top end tools such as Adobe Illustrator and Photoshop, Paintshop pro etc. I've shyd away from icon editors in the past simply because I find them to restrictive. You find yourself spending to much time trying reproduce effects such as shadows and gradients which are pretty much the defacto standard on a modern desktop. I use two platforms these days, My Apple iMac and a Linux notebook. If I was designing icons and other graphics for a living I would invest the big bucks for a product like Adobe Illustrator... I wouldn't even hesitate, from my limited experience nothing comes close, however I dont do this for a living and it doesn't make any sense to spend a couple of thousand pounds for a dozen icons (although if someone has a spare license lying around...).
Luckily the open source market has a number of alternatives that provide a viable alternative. i dont have the time to list the various projects building superb tools to compete with the various commercial offerings but two stand out. The Gimp (worth using just to shout accross the office "I working on the Gimp") and Inkscape. The Gimp is primarily used as a raster or digital paint tool as is comaparable to Adobe Photoshop. Inkscape is a vector paint tool and is comparable to Adobe illustrator in terms of use if not functionality, it also has the added benefit of working directly in SVG. Working in a scalable format, such as SVG, is a real asset to icon design it means you can work on a large scale and then shrink or enlarge your design with very little loss in quality.
So Ive comitted to Inkscape and Im very impressed so far. It appears rock solid, has ports for MacOS and Linux, has tools for viewing your designs as they would appear as icons and has some genuinely inovative features. However it does have some flaws.... The documentation is very weak, some of the dialogues are confusing at best and its not a native port to MacOS (that really would set the cat amongst the pigeons).
That set Ive started work and its pretty straight forward to put together some consistent icons. Ill post the results shortly... don't laugh
New build of datagenerator
07/08/06 20:28
I've uploaded a new build of datagenerator (46). The
update to this build is primarily to include new
debug code to try and diagnose a issue with reading
the default config files shipped with datagenerator.
This prevents users from reading the data inside of
the xml file. This appears to be a national language
issue since the data is shipped in UK format. If you
have this issue, uncomment the debug line in the
shell script or bat file that starts datagenerator
and post the output to me via the comments page.
Minor Swingbench update to 2.3, build 125
20/07/06 21:14
Hi just a minor patch update to fix a few minor
updates. Yup I do make changes based on feedback.
Thats assuming I have time... Things are slowing down
just a little at work as people head off on holiday
so Im hoping to get 2.3 finished soon.. just the UI
changes now... I'll be at Oracle HQ in the US next
week so Im not likely to be able to respond to much
email. For any of my work colleagues that need to get
in touch I'll be on the mobile...
Back to the minor fixes
Back to the minor fixes
- Sorted out the save, save buttons so they should work as expected.
- Now a Transactions per second option for charbench(if this is useful I'll include it inside of swingbench and minibench)
- Benchmark name now include on window title for swingbench
DSS benchmark uploaded
17/07/06 20:29
I've just uploaded a new build of swingbench and
datagenerator to the website. They can be downloaded
here. The reason for the joint
release is that they both provide support for a
new DSS benchmark. I've described how to install
and run the benchmark here. The benchmark still needs
work and testing to determine some standard
metrics but it hangs together. Let me know what
you think here.
New DSS benchmark available (or nearly).
07/07/06 20:33
Over the last few days I've been putting together
swingbench's first DSS benchmark. It uses datagenerator to create the
schema and then a new config file to generate
the load. The only reason I haven't posted it
yet is that our cluster is currently in pieces
and is slowly being put back together so
I'haven't had a chance to test it on a large
scale machine. Im certain of a few things. It
should eat I/O and CPU. I haven't included any
materialized views to improve perfomance simply
because in the past I've been asked for a
benchmark to test the I/O sub system, I think
this is it. It currently needs a little work to
get it to scale to large sizes but I'll post
instructions. The ultimate aim is to deliver
three sizes 100GB, 500GB and 1TB. There's no
reason why they couldn't be bigger its just that
I'll lack the resource to test it. If you'd like
to give it a spin drop me a line and I'll send
you the code. Regardless I hope to post the code
by the end of the week.
Datagenerator update to build 31
27/06/06 20:29
I've been slowly rounding off some of the rough edges
in datagenerator. In this release I've fixed a few
bugs and provided a wizard to size tables up in a
simpler fashion (hint its the new button on the tool
bar). I've also included the ability to store data in
side of the config file. This is really useful if you
have to take reference data from a reversed
engineered schema. To demonstrate this I reverse
engineered the oracle "sales history" schema and
included the reference data for "TIMES","PRODUCTS"
etc. The whole schema including reference data can
now be shipped in a single file. I've included this
file in this build (sh.xml in bin/winbin directory).
This means you should be able to generate a multi
terabyte "sh" schema.... This functionality will fome
the basis of a new DSS benchmark in the next few
weeks for swingbench. Let me know if you encounter
any problems.
Oh and I fixed a stupid scripting bug the windows bat file to lauch datagenerator...
Oh and I fixed a stupid scripting bug the windows bat file to lauch datagenerator...
Swingbench update to build 117
27/06/06 20:16
Nothing amazingly new in this build other than some
fixes. These relate to
- Opening new config files left the old configuration in memory
- The default config in windows was invalid (and no one mailed me... shame)
- Fix to work around an Oracle connection pooling bug
- No reports generated unless a System username/password was included in the config file
IllegalMonitorState Exception in Datagenerator on Itanium.
18/05/06 20:29
I've encountered a weird bug... not sure if its my
fault or the the JVMs. Basically when running the
latest version of datagenerator on a multi CPU
Itanium box I get this exception thrown after a
(seemingly random) period of time. This only happens
on an Itanium machine. The other variable here is
that because its Itanium I have to use the JRockit
1.5 JVM. The code seems to work fine on every other
multi CPU environment I've tried... Has anyone else
had this problem?
Walkthrough for datagenerator available
12/04/06 21:24
I've just published a walkthrough for datagenerator
here. It should help in figuring
out what datagenerator is capable of. This will
probably be the way I publish all documents in
the future...
Minor update to Datagenerator
06/04/06 20:32
Datagenerator 0.3 release
05/04/06 22:08
I've just uploaded datagenerator 0.3 to the downloads page. Its a big step
forward. Apart from being multithreaded and
generally much faster it includes a wizard that
allows you to reverse engineer a schema...
currently it only reverse engineers the tables
and primary keys but I'll include more
functionality over time. I've used it to build
vey large schemas for the order entry benchmark
much faster than I was perviously able to. In
the next couple of days I'll post a script and
instruction on how to do this.. In the mean time
enjoy
Update to Swingbench 2.3 Beta
14/03/06 19:55
Swingbench 2.3 Beta available
08/03/06 22:30
I've just posted swingbench 2.3 to the downloads page. This build still
needs some work but it has some genuinely useful
features.
These include
Documentation (online and pdf) to follow shortly.
These include
- Update to frontend of "minibench"
- New simple "Stress Test" benchmark for both Oracle and TimesTen
- TimesTen support
- User defineable length of benchmark run
- Better statistics in reports output
- Benchmark comparison tool
- Improved connection pooling and fAN support (via swingconfig file only)
- Minor changes to swingconfig.xml
- Build numbers for each release
- User selectable timings i.e. measurements in seconds, centiseconds, millseconds, microseconds etc.
Documentation (online and pdf) to follow shortly.
BMCompare
23/02/06 20:19
Swingbench 2.3 should be ready shortly features a new
tool called bmcompare which allows you to compare
runs of benchmarks... Its pretty simply currently but
I like it. Its simplifies the job of brining all of
the data together. It will be especially useful for
some of the users of swingbench how use swingbench as
a regression test tool.
So whats new in Swingbench 2.3
15/02/06 20:08
I've been putting the final touches on the 2.3
release of swingbench. So far the features that have
made it in are
Im still also hoping to include a utility that will provide side by side comparison of benchmark runs. For example this will allow you to run six benchmarks and compare the differences between each one. So you could increase the user count by 50 percent each run and then determine what difference this makes to the server. It will be pretty simple at first but Im hoping it will become more sophisticated over time.
Things that aren't likely to make it but will be in 2.4
- TimesTen support
- Timer support. This allows you to run the benchmark for a given time
- User selectable timings i.e. measurements in seconds, centiseconds, millseconds, microseconds etc.
- Code modification to support 1.5
Im still also hoping to include a utility that will provide side by side comparison of benchmark runs. For example this will allow you to run six benchmarks and compare the differences between each one. So you could increase the user count by 50 percent each run and then determine what difference this makes to the server. It will be pretty simple at first but Im hoping it will become more sophisticated over time.
Things that aren't likely to make it but will be in 2.4
- Data warehosuing benchmark
- Update to clusteroverview
Update to Swingbench to support 1.4 JVM
25/01/06 23:02
What next for swingbench?
20/01/06 22:51
Im at a sort of a crossroads with swingbench and Id
like some feedback on what course I should follow
next. There are a number of features I've been
promising for a while
If you have strong feelings on any of these drop me a comment.
- A new data warehousing benchmark, this also requires I get datagenerator into a more complete state.
- Better multiple load generator support, clusteroverview hasn't really received much attention in the recent point releases
- Better reporting, I've always planned to integrate a mini statspack so that each run results in a more complete break down on not just the results but what happened to the database
- A html front end, I could do this either by integrating it into Enterprise manager (not as hard as you think) or writing a bespoke JSP front end.
- HTTP load generation support, I've been promising this for a while and have written the engine and have nearly got the code in a state where I could drop it in. But I've a feeling the market is a wash with HTTP load generators.
- None of the above and just tighten up the code.
If you have strong feelings on any of these drop me a comment.
Minor update to swingbench 2.2
11/01/06 20:27
Swingbench 2.2 is now production
19/12/05 22:28
J2SE 5.0 and Swingbench
15/12/05 19:57
I've begun looking at the internal of the swingbench
code. Its not massively complicated but it is a
little opaque. Its was written a long time ago when
many of Java's constructs were new to a hardened C
programmer. Im slowly going through the code and
tidying it up, for valid reasons which I'll come to
in a second. However it has given me the chance to
use the functionality offered in J2SE 5.0 primarily
enumerators and generics. These tidy up the code a
lot and make it almost readable. Its also made me
more determined to re-factor the code and make it
much cleaner and modular.
The reason Im migrating to J2SE 5.0 is purely to support Oracle's new in memory database TimesTen. To measure its response time accurately I need microsecond timings. Since J2SE 5.0 offers nano second timing support where the platform supports it it made sense to do it all in one go. Sadly its a much bigger modification than I indented since it effects most of the code base. Still its proving interesting. Expect TimesTen support in a build almost immediately after 2.2 goes production.
The reason Im migrating to J2SE 5.0 is purely to support Oracle's new in memory database TimesTen. To measure its response time accurately I need microsecond timings. Since J2SE 5.0 offers nano second timing support where the platform supports it it made sense to do it all in one go. Sadly its a much bigger modification than I indented since it effects most of the code base. Still its proving interesting. Expect TimesTen support in a build almost immediately after 2.2 goes production.
Swingbench Version 2.2 (release candidate)
05/12/05 12:31
Swingbench version 2.1h is now 2.2. Im certain I've
included enough new functionality to justify this
change. Over the last week or so I've managed to add
a whole raft of new features and fixes that should
simplify its use. There won't be any new features in
this current release just bug fixes. The intention is
to have it stable and the doc finished by the end of
December. I've also updated the swingbench manual,
I'll update clusteroverview's doc shortly. So in
summary new in 2.2...
New in 2.2
Still to come
minibench
CPU overview
New in 2.2
- A new lightweight graphical load generator called "minibench"
- The coordinator now has a number of command line options (start, stop, status, run, halt)
- The coordinator can now be run in ether graphical or character mode
- The charting engine now uses Oracle's BIBeans graphing technology
- Better exception handling and error messages in both swingbench and clusteroverview
- Users can now turn off jumping to the events panel in swingbench
- The user chart in clusteroverview now allows users to specify monitored users
- Swingbench can logon/logoff users between transactions (experimental)
- Minor changes to swingconfig.xml
- New Look and Feel
- charbench/swingbench/minibench now have a number of command line options allowing them to override configuation file settings. This should simplify configuration.
- CPU monitor (accessible via coordinator)
- charbench can now display transaction/cpu load in sar/vmstat like format
- swingbench can now display graphically display cpu load
- Lots of fixes to the benchmark install wizards
- order entry benchmark can now be scaled to 100GB
- CPU monitor for database nodes in clusteroverview
- Simple CPU monitor in minibench
Still to come
- Localisation support
- TimesTen support
- Simple generic load test
- DSS benchmark
minibench
CPU overview
New release of DataGenerator
12/10/05 20:28
Just released a new build of Datagenerator. I've
stuck a graphical front end on it so its much easier
to use now. Its never going to be amazingly fast
because of its generic nature. What Im aiming to
achieve is to allow the user to reverse engineer a
schema and then "Super Size" it. The main modivation
for this utility is to provide a benchmark for
datawarehousing using swingbench that dosn't involve
downloading a terabyte of data. As to whats new in it
* New graphical front end.
* New "Enumerator" data generator type
* Some bug fixes
Not much, but things have been pretty busy at work. The implementation of the reverese engineering functionality will depend on how long I can avoid doing all of the work on swingbench I've promised people.
* New graphical front end.
* New "Enumerator" data generator type
* Some bug fixes
Not much, but things have been pretty busy at work. The implementation of the reverese engineering functionality will depend on how long I can avoid doing all of the work on swingbench I've promised people.