The purpose of this test was to find the current sustainable user limit of the RM component of the CLM solution for the CLM 6.0 release with the Change Management options in use.
The acceptable goals for a 300 users run can be found in the following link, deterioration of a noticeable number of transactions past these would be deemed a failure for the run
https://jazz.net/rm/web#action=com.ibm.rdm.web.pages.showArtifact&artifactURI=https%3A%2F%2Fjazz.net%2Frm%2Fresources%2F_c6-88UqfEeSG_5Ml8dGbfg
Previous testing had given us a clear indication of where our limit was, this test was configured to run just over that point The test was configured to reach 600 users in 9 incremental steps, each step involves a ramp up phase, a settle time and a run time. The first three stages added 100 users to the test system bringing it to the preferred test level of 300 users
The following 6 stages add 50 users to the test system bringing it to the goal level of 600 users
The described user profile described above can be represented in the image below
All of this testing is performed with the Configuration Management (CM) functionality enabled and in use. All edit transactions are being submitted in an explicit change set and there is baseline and stream functionality being exercised.
The CPU usage is a symptom of the system encountering lock contention issues.
The current system limitation with respect to the work rate/user numbers is lock contention in the Jena component.
Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multi-programming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
We use predominantly automated tooling such as Rational Performance Tester (RPT) to simulate a workload normally generated by client software such as web browsers. All response times listed are those measured by our automated tooling and not a client.
The diagram below describes at a very high level which aspects of the entire end-to-end experience (human end-user to server and back again) that our performance tests simulate. The tests described in this article simulate a large part of the end-to-end transaction as indicated. Performance tests include some simulation of browser rendering and network latency between the simulated browser client and the application server stack.
The topology under test is based on Standard Topology (E1) Enterprise - Distributed / Linux / DB2.
The CPU value is an average taken from all the readings in each 45 minute stable run duration
These graphs are using an overall average for all the transactions that occur in a test phase termed ‘Page average’ we are using this to represent in broad terms how the system was performing, there is obviously variation in the 120 transactions that make up the overall test.
Users |
JTS CPU% | RM CPU% | DB2 CPU% | Page average (secs) | Page hits |
---|---|---|---|---|---|
100 | 0.32 | 7.06 | 5.40 | 0.877 | 6,356 |
200 | 0.39 | 12.02 | 10.04 | 0.734 | 13,120 |
300 | 0.44 | 18.26 | 15.02 | 0.745 | 20,160 |
350 | 0.45 | 21.37 | 17.74 | 0.779 | 23,367 |
400 | 0.45 | 25.16 | 20.66 | 0.807 | 26,957 |
450 | 0.47 | 29.31 | 23.41 | 0.852 | 30,289 |
500 | 0.47 | 96.76 | 16.94 | 16.207 | 22,389 |
550 | 0.49 | 96.94 | 12.74 | 21.431 | 20,519 |
600 | 0.51 | 97.53 | 7.30 | 19.250 | 19,662 |
JTS - the CPU usage on the JTS server never rose above 1%, this server is under no strain.
RM - the CPU usage was increasing in a smooth progression until 500 users were committed to the system and CPU usage escalated, from that point on the CPU was effectively being held at 100% on the RM server
DB2 - the DB2 CPU usage was tracking with the RM CPU usage until the RM server encountered the bottleneck at which point the DB2 CPU usage began to drop off as the request volume dropped
* Websphere Arguments:-Xdump:none -Xgcpolicy:gencon -Xmx16g -Xms16g -Xmn4g -XX:MaxDirectMemorySize=1G -Xcompressedrefs -Xgc:preferredHeapBase=0x100000000 -Xverbosegclog:logs/gc.log -Xdump:java:file=/home/wasdumps/javacore.%Y%m%d.%H%M%S.%pid.%seq.txt
* Websphere Arguments:-Xdump:none -Xgcpolicy:gencon -Xmx24g -Xms24g -Xmn4g -XX:MaxDirectMemorySize=1G -Xcompressedrefs -Xgc:preferredHeapBase=0x100000000 -Xverbosegclog:logs/gc.log -Xdump:java:file=/home/wasdumps/javacore.%Y%m%d.%H%M%S.%pid.%seq.txt
52 modules, 121 folders, 1181 artifacts,
85000 module artifacts, 14 collections, 4 reviews,
258695 comments, 300 Public Tags, 50 Private Tags
238 Terms, 301817 Links and 200 Views
There are 6 test projects in the test installation giving the following totals
Total number of modules: 311
Total number of folders: 715
Total number of requirement artifacts: 7131
Total number of module artifacts: 500000
Total number of collections: 84
Total reviews: 16
Total comments: 1372302
Total public tags: 1800
Total private tags: 300
Total term count: 1428
Total link count: 1117456
Total number of views: 1200
For each project in the test data the Configuration management has been enabled to allow us to test that functionality under load. Each project had 15 direct child streams added and 25 change sets were created and delivered so that there was some history in the system.
Warning: Can't find topic Deployment.PerformanceDatasheetReaderComments
I | Attachment | Action | Size | Date | Who | Comment |
---|---|---|---|---|---|---|
![]() |
CPU_USER.png | manage | 19.3 K | 2015-05-01 - 11:39 | UnknownUser | |
![]() |
HITS_USER.png | manage | 18.1 K | 2015-05-01 - 11:39 | UnknownUser | |
![]() |
JTS_JVM.png | manage | 23.7 K | 2015-05-01 - 11:38 | UnknownUser | |
![]() |
OverallDetailedTransaction.png | manage | 54.0 K | 2015-05-01 - 11:38 | UnknownUser | |
![]() |
PAGEAVG_USER.png | manage | 18.6 K | 2015-05-01 - 11:37 | UnknownUser | |
![]() |
RM_JVM.png | manage | 77.2 K | 2015-05-01 - 11:37 | UnknownUser | |
![]() |
ServerTopology.png | manage | 15.0 K | 2015-05-01 - 11:35 | UnknownUser | |
![]() |
UserProfile.png | manage | 7.4 K | 2015-05-01 - 11:35 | UnknownUser | |
![]() |
schematicperformancetestmap_somebrowsersim.jpg | manage | 52.3 K | 2015-05-01 - 11:36 | UnknownUser |
Status icon key: