E
dit
A
ttach
P
rintable
r6 - 2020-02-25 - 15:34:11 - Main.cystrunk
You are here:
TWiki
>
Deployment Web
>
DeploymentPlanningAndDesign
>
PerformanceDatasheetsAndSizingGuidelines
>
PerformanceImpactOfCombiningRMMandRTCServers
<div id="header-title" style="padding: 10px 15px; border-width:1px; border-style:solid; border-color:#FFD28C; background-image: url(<nop>https://jazz.net/wiki/pub/Deployment/WebPreferences/TLASE.jpg); background-size: cover; font-size:120%"> <!-- * Set ALLOWTOPICCHANGE = Main.TWikiDeploymentDatasheetsAuthorsGroup, Main.TWikiAdminGroup, Main.GrantCovell --> ---+!! <img src="https://jazz.net/wiki/pub/Deployment/WebPreferences/new.png" alt="new.png" width="50" height="50" align="right">Performance impact of combining Rhapsody Model Manager and Engineering Workflow Management servers</br> %DKGRAY% Authors: Main.SentellaCystrunk</br> Build basis: IBM Engineering Lifecycle Management 7.0 %ENDCOLOR%</div></sticky> <!-- Page contents top of page on right hand side in box --> <sticky><div style="float:right; border-width:1px; border-style:solid; border-color:#DFDFDF; background-color:#F6F6F6; margin:0 0 15px 15px; padding: 0 15px 0 15px;"> %TOC{title="Page contents"}% </div></sticky> <sticky><div style="margin:15px;"></sticky> ---++ Introduction In the IBM Engineering Lifecycle Management (ELM) 7.0 release, an IBM Engineering Systems Design Rhapsody Model Manager (RMM) server is deployed as an extension to IBM Engineering Workflow Management (EWM). The purpose of this document is to show the performance impact of combining the two servers. ---+++ Summary of results * Given what we tested, the added RMM load cost an additional ~5% CPU on the combined server with very little impact to EWM service times. Database disk utilization increased by ~2%. ---+++!! Disclaimer %INCLUDE{"PerformanceDatasheetDisclaimerEndToEnd"}% <br> ---++ Topology The topology we used in our performance testing is shown below. <br> <div style="text-align:center;"><img src="%ATTACHURLPATH%/TestTopology.PNG" alt="TestTopology.PNG" width="800" height="400" /> </div> <br> ---++ Machine Details <table class="gray-table"> <tbody> <tr> <th valign="top">Function</th> <th valign="top">Machine Count</th> <th valign="top">Machine Type</th> <th valign="top">CPU / Machine</th> <th valign="top">Total # of CPU vCores/Machine</th> <th valign="top">Memory/Machine</th> <th valign="top">Disk</th> <th valign="top">Disk capacity</th> <th valign="top">Network interface</th> <th valign="top">OS and Version</th> </tr> <tr> <td>Oracle DB Server</td> <td>1</td> <td>Physical</td> <td></td> <td>40</td> <td>64G RAM</td> <td></td> <td></td> <td>Gigabit Ethernet</td> <td>Red Hat Enterprise Linux Server 7.6</td> </tr> <tr> <td>EWM + RMM Combined Server</td> <td>1</td> <td>Physical</td> <td></td> <td>24</td> <td>32G RAM<br>8G Heap</td> <td></td> <td></td> <td>Gigabit Ethernet</td> <td>Red Hat Enterprise Linux Server 6.10</td> </tr> <tr> <td>JTS Server</td> <td>1</td> <td>VMware VM</td> <td>2 x Intel Xeon E5-2665 2.4GHz (dual-core)</td> <td>4</td> <td>16G RAM<br>8G Heap</td> <td>N/A</td> <td></td> <td>Gigabit Ethernet</td> <td>Red Hat Enterprise Linux Server 7.1</td> </tr> <tr> <td>Jazz Authoriztion Server</td> <td>1</td> <td>VMware VM</td> <td>2 x Intel Xeon E5-2665 2.4GHz (dual-core)</td> <td>4</td> <td>16G</td> <td></td> <td></td> <td>Gigabit Ethernet</td> <td>Red Hat Enterprise Linux Server 7.1</td> </tr> <tr> <td>LDAP Server</td> <td>1</td> <td>VMware VM</td> <td>N/A</td> <td>N/A</td> <td>N/A</td> <td>N/A</td> <td>N/A</td> <td>Gigabit Ethernet</td> <td>N/A</td> </tr> <tr> <td>IHS Server</td> <td>1</td> <td>VMware VM</td> <td>2 x Intel Xeon E5-2698 2.3GHz</td> <td>4</td> <td>16G</td> <td>N/A</td> <td></td> <td>Gigabit Ethernet</td> <td>Red Hat Enterprise Linux Server 7.6</td> </tr> <tr> <td>EWM Developer Agents</td> <td>5</td> <td>VMware VM</td> <td>2 x Intel Xeon E5-2698 2.3GHz (dual-core)</td> <td>4</td> <td>16G</td> <td>N/A</td> <td></td> <td>Gigabit Ethernet</td> <td>Red Hat Enterprise Linux Server 7.1</td> </tr> <tr> <td>RMM Designer Agents</td> <td>5</td> <td>VMware VM</td> <td>2 x Intel Xeon E5-2698 2.3GHz (dual-core)</td> <td>4</td> <td>16G</td> <td>N/A</td> <td></td> <td>Gigabit Ethernet</td> <td>Windows Server Enterprise 2016</td> </tr> <tr> <td>Rhapsody Designer Agents</td> <td>1</td> <td>VMware VM</td> <td>2 x Intel Xeon E5-2698 2.3GHz (dual-core)</td> <td>4</td> <td>16G</td> <td>N/A</td> <td></td> <td>Gigabit Ethernet</td> <td>Windows Server Enterprise 2016</td> </tr> </tbody> </table> N/A: Not applicable. ---+++ Network connectivity All server machines and test clients are located on the same subnet. The LAN has 1000 Mbps of maximum bandwidth and less than 0.3 ms latency in ping. <br> ---++ Test methodology The test methodology involved resetting the environment prior to each test, running tests for a duration that allotted time for 500 users to ramp up, settle in, work at a steady pace, and ramp down. Performance data was collected during a steady state period of one hour. The tests were repeated and results were compared. Note: there is an acceptable degree of variation in the EWM web service times. So to avoid false alarms when comparing results, response times for each service were rounded up by 50ms. <br> ---++ Test automation and workload characterization ---+++ Automation Internal tooling which consisted of java API implementations that work with RMM-enabled models and that perform various EWM operations was used to generate the full test load. The java implementations were made available via a combination of executable jar files and as custom code executed via Rational Performance Tester (RPT). The number of threads and frequency at which operations were invoked by each thread were controlled via configuration files. ---+++ EWM Workload 500 users execute the following actions with 1 minute think time between operations for each user. <table class="gray-table"> <tbody> <tr> <th align="center">Task</th> <th align="center">Description</th> <th align="center">% of Workload</th> </tr> <tr> <td>Accept</td> <td>Accepts incoming changes.</td> <td align="center">21.5%</td> </tr> <tr> <td>Baseline</td> <td>Creates a baseline.</td> <td align="center">2.0%</td> </tr> <tr> <td>Checkin</td> <td>Checks in a file.</td> <td align="center">41.3%</td> </tr> <tr> <td>CloneWorkspace</td> <td>Clones a workspace.</td> <td align="center">0.2%</td> </tr> <tr> <td>CloseChangeSets</td> <td>Completes a changeset.</td> <td align="center">3.5%</td> </tr> <tr> <td>CompareStreamWorkspace</td> <td>Compares repository workspace against current stream.</td> <td align="center">4.5%</td> </tr> <tr> <td>CompareWorkspaceBaseline</td> <td>Compare baselines against workspace.</td> <td align="center">1.8%</td> </tr> <tr> <td>Deliver</td> <td>Delivers a change set.</td> <td align="center">6.3%</td> </tr> <tr> <td>Discard</td> <td>Discards a change set.</td> <td align="center">1.8%</td> </tr> <tr> <td>History</td> <td>Gets history on a single file.</td> <td align="center">4.6%</td> </tr> <tr> <td>Load</td> <td>Loads "Stable" component, an unchanging component of 78 folders / 652 files (~12 MB on disk).</td> <td align="center">1.2%</td> </tr> <tr> <td>RefreshPendingChanges</td> <td>Refresh pending changes for workspace.</td> <td align="center">8.4%</td> </tr> <tr> <td>Suspend</td> <td>Suspends and resumes a change set.</td> <td align="center">2.9%</td> </tr> <tr> <td>Unload</td> <td>Unloads "Stable" component.</td> <td align="center">0.1%</td> </tr> </tbody> </table> <br> ---+++ RMM Workload <table class="gray-table"> <tbody> <tr> <th align="center">Test name</th> <th align="center">Description</th> <th align="center">% of Workload</th> <th align="center"># of Users</th> <th align="center"># of Hits per hour</th> <th align="center">Each # per min</th> </tr> <tr> <td>Diagrams : Get hotspots</td> <td>Return 20 hotspots of 1 diagram.</td> <td align="center">1.71%</td> <td align="center">50</td> <td align="center">30</td> <td align="center">2.00</td> </tr> <tr> <td>Diagrams : Get image</td> <td>Return image of 1 diagram.</td> <td align="center">1.71%</td> <td align="center">50</td> <td align="center">30</td> <td align="center">2.00</td> </tr> <tr> <td>Diagrams : Get info</td> <td>Return info of 1 diagram.</td> <td align="center">1.71%</td> <td align="center">50</td> <td align="center">30</td> <td align="center">2.00</td> </tr> <tr> <td>Diagrams : Get need update</td> <td>Request for 2 diagrams.</td> <td align="center">0.23%</td> <td align="center">50</td> <td align="center">4</td> <td align="center">15.00</td> </tr> <tr> <td>Diagrams : Publish all</td> <td>Publish 100 diagrams; 20/100 changed.</td> <td align="center">0.01%</td> <td align="center">10</td> <td align="center">1</td> <td align="center">60.00</td> </tr> <tr> <td>Diagrams : Publish need update</td> <td>Publish 2 diagrams.</td> <td align="center">0.23%</td> <td align="center">50</td> <td align="center">4</td> <td align="center">15.00</td> </tr> <tr> <td>Explorer : Expand a node</td> <td>Query children of a node (avg 145).</td> <td align="center">16.42%</td> <td align="center">80</td> <td align="center">180</td> <td align="center">0.33</td> </tr> <tr> <td>Explorer : Get breadcrumbs</td> <td>Query breadcrumbs (avg depth 3).</td> <td align="center">20.52%</td> <td align="center">100</td> <td align="center">180</td> <td align="center">0.33</td> </tr> <tr> <td>Explorer : Get top nodes</td> <td>Returns 25 top nodes.</td> <td align="center">20.52%</td> <td align="center">100</td> <td align="center">180</td> <td align="center">0.33</td> </tr> <tr> <td>Explorer : Get top nodes in component</td> <td>Returns 1 top project.</td> <td align="center">16.42%</td> <td align="center">80</td> <td align="center">180</td> <td align="center">0.33</td> </tr> <tr> <td>Form : Open artifacts form</td> <td>Open artifacts form.</td> <td align="center">20.52%</td> <td align="center">100</td> <td align="center">180</td> <td align="center">0.33</td> </tr> </tbody> </table> <br> ---+++ Rhapsody Workload <table class="gray-table"> <tbody> <tr> <th align="center">Test Name</th> <th align="center">Description</th> <th align="center">Frequency</th> </tr> <tr> <td>EWM-RMM-Scenario1</td> <td>Logs into repository, creates an EWM workspace, loads EWM workspace, creates Rhapsody application instance, and loops through all sample models where each model created will be checked in then delivered.</td> <td>Initiate 1 deliver per minute to simulate a total of 500 users issuing a deliver within an 8-hour work day.</td> </tr> </tbody> </table> <br> ---++ Data volume and shape The following table outlines the volume and shape of the test data at the start of each test. <br> <table class="gray-table"> <tbody> <tr> <th align="center"></th> <th align="center">EWM**</th> <th align="center">RMM***</th> <th></th> <th></th> </tr> <tr> <td>Project Areas</td> <td>1</td> <td>1</td> <td></td> <td></td> </tr> <tr> <td>Work items</td> <td>770</td> <td>-</td> <td></td> <td></td> </tr> <tr> <td>Streams</td> <td>100</td> <td>1</td> <td></td> <td></td> </tr> <tr> <td>Workspaces</td> <td></td> <td>800</td> <td></td> <td></td> </tr> <tr> <td>Components</td> <td>200*</td> <td>800</td> <td></td> <td></td> </tr> <tr> <td>Folders</td> <td>24,800*</td> <td>-</td> <td></td> <td></td> </tr> <tr> <td>Files</td> <td>139,200*</td> <td>546,400 versions</td> <td>273,200 unique</td> <td>2 avg versions/file</td> </tr> <tr> <td>Model Elements</td> <td>-</td> <td>8,838,400 versions</td> <td>4,419,200 unique</td> <td>2 avg versions/file</td> </tr> <tr> <td>Links (local)</td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <tr> <td>Diagrams</td> <td>-</td> <td>80,800 versions</td> <td>40,400 unique</td> <td>2 avg versions/file</td> </tr> <td>Source content size (on disk)</td> <td>1,476 MB</td> <td>-</td> <td>-</td> <td>-</td> </tr> </tbody> </table> <br> <img src="%ATTACHURLPATH%/RC1_DatashapeFooter.PNG" /> ---++ Performance results ---+++ Response times Average service times were comparable when comparing performance during an EWM only workload versus a full workload consisting of EWM, RMM, and Rhapsody. <br> <img src="%ATTACHURLPATH%/RC1_FilesystemServiceTimes.PNG" /> <img src="%ATTACHURLPATH%/RC1_RepositoryServiceTimes.PNG" /> <img src="%ATTACHURLPATH%/RC1_ScmServiceTimes_1.PNG" /> <img src="%ATTACHURLPATH%/RC1_ScmServiceTimes_2.PNG" /> <img src="%ATTACHURLPATH%/RC1_ScmServiceTimes_3.PNG" /> <img src="%ATTACHURLPATH%/RC1_OtherServiceTimes.PNG" /> ---+++ Resource utilization The following charts highlights the system resource utilization during an EWM only workload, RMM only workload, and a full workload consisting of EWM, RMM, and Rhapsody. Here we can see the additional resource costs when combining RMM and Rhapsody with EWM. %TABLE{ sort="off" headerbg="#3399FF" cellpadding="2" cellspacing="2" dataalign="center" caption="OS Resource Utilization - Overview" tableborder="2" tableframe="border" tablerules="none"}% |CPU|<img src="%ATTACHURLPATH%/RC1_CpuUtil.PNG" />| |Disk|<img src="%ATTACHURLPATH%/RC1_DatabaseDiskUtil.PNG" />| ---++++ Garbage collection No operations were impacted by garbage collection pauses. The average pause time was less than 1 second. -------------------- ---++++!! About the author(s): Main.SentellaCystrunk is a performance engineer focusing on the performance and scalability of products in the Engineering Lifecycle Management family. -------------------- ---+++++!! Questions and comments: * What other performance information would you like to see here? * Do you have performance scenarios to share? * Do you have scenarios that are not addressed in documentation? * Where are you having problems in performance? %COMMENT{type="below" target="PerformanceDatasheetReaderComments" button="Submit"}% %INCLUDE{"PerformanceDatasheetReaderComments"}% <sticky></div></sticky>
E
dit
|
A
ttach
|
P
rintable
|
V
iew topic
|
Backlinks:
We
b
,
A
l
l Webs
|
H
istory
: r6
<
r5
<
r4
<
r3
<
r2
|
M
ore topic actions
Deployment
Deployment web
Planning and design
Installing and upgrading
Migrating and evolving
Integrating
Administering
Monitoring
Troubleshooting
Community information and contribution guidelines
Create new topic
Topic list
Search
Advanced search
Notify
RSS
Atom
Changes
Statistics
Web preferences
NOTE: Please use the Sandbox web for testing
Status icon key:
To do
Under construction
New
Updated
Constant change
None - stable page
Smaller versions of status icons for inline text:
Copyright © by IBM and non-IBM contributing authors. All material on this collaboration platform is the property of the contributing authors.
Contributions are governed by our
Terms of Use.
Please read the following
disclaimer
.
Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more
here
.