Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Valenta2004-06-01 13:53:59 +0000
committerMichael Valenta2004-06-01 13:53:59 +0000
commitbf194934d71d426a2a5de8a23c49a100826846f1 (patch)
treeb6b3de85038ac71ebe5c183627b3ea6519b9618f
parent4965b02542d1df6b9bd2d0643ad41c276c1663d7 (diff)
downloadeclipse.platform.team-bf194934d71d426a2a5de8a23c49a100826846f1.tar.gz
eclipse.platform.team-bf194934d71d426a2a5de8a23c49a100826846f1.tar.xz
eclipse.platform.team-bf194934d71d426a2a5de8a23c49a100826846f1.zip
Added performance test plans
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/html/perf00002.html17
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/html/perf00003.html6
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/html/perf00004.html39
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/html/perf00005.html36
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/html/perf00006.html31
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/toc.xml6
6 files changed, 127 insertions, 8 deletions
diff --git a/tests/org.eclipse.team.tests.cvs.core/html/perf00002.html b/tests/org.eclipse.team.tests.cvs.core/html/perf00002.html
index ed09186d1..70af47df6 100644
--- a/tests/org.eclipse.team.tests.cvs.core/html/perf00002.html
+++ b/tests/org.eclipse.team.tests.cvs.core/html/perf00002.html
@@ -4,10 +4,23 @@
<meta NAME="since" content="">
</head><h2>Timings</h2>
<p>Since: 3.0<br>
-Last Modified: $Date: 2004/05/31 14:22:48 $</p><body>
+Last Modified: $Date: 2004/05/31 20:24:10 $</p><body>
This section contains various timing results and comparisons.
+<h3>Overview</h3>
+
+The purpose of this section is to provide a small set of tests that can
+be used to benchmark the Eclipse CVS client. The areas tested are:
+
+<ol>
+<li>Checkout
+<li>Synchronizing
+<li>Updating
+</ol>
+
+<h3>Setup</h3>
+
The following should be considered when obtaining timings:
<ul>
@@ -72,7 +85,7 @@ in 393 incoming changes.
<li>CLI over pserver: 0:45 ("cvs -n update")
</ul>
-The timing for Eclipse also includes the status commadn to fetch the revisions for the 393 incoming changes.
+The timing for Eclipse also includes the status command to fetch the revisions for the 393 incoming changes.
<h3>Update</h3>
diff --git a/tests/org.eclipse.team.tests.cvs.core/html/perf00003.html b/tests/org.eclipse.team.tests.cvs.core/html/perf00003.html
index 7743f6f90..0dfcb0495 100644
--- a/tests/org.eclipse.team.tests.cvs.core/html/perf00003.html
+++ b/tests/org.eclipse.team.tests.cvs.core/html/perf00003.html
@@ -1,10 +1,10 @@
-<html><head><title>Memory Usage</title>
+<html><head><title>Memory Footprint</title>
<LINK REL=STYLESHEET HREF=../book.css CHARSET=ISO-8859-1 TYPE=text/css>
<meta NAME="keywords" content="">
<meta NAME="since" content="">
-</head><h2>Memory Usage</h2>
+</head><h2>Memory Footprint</h2>
<p>Since: <br>
-Last Modified: $Date: 2004/05/31 14:22:48 $</p><body>
+Last Modified: $Date: 2004/05/31 20:24:10 $</p><body>
This section contains some accumulated memory usage statistics
diff --git a/tests/org.eclipse.team.tests.cvs.core/html/perf00004.html b/tests/org.eclipse.team.tests.cvs.core/html/perf00004.html
index 0db7208ab..5174b4e1a 100644
--- a/tests/org.eclipse.team.tests.cvs.core/html/perf00004.html
+++ b/tests/org.eclipse.team.tests.cvs.core/html/perf00004.html
@@ -3,8 +3,28 @@
<meta NAME="keywords" content="">
<meta NAME="since" content="">
</head><h2>Resource Data Structures</h2>
-<p>Since: <br>
-Last Modified: $Date: 2004/05/31 14:22:48 $</p><body>
+<p>Since: 3.0<br>
+Last Modified: $Date: 2004/05/31 20:24:10 $</p><body>
+
+This section contains results on memory footprint of CVS in the Core resource
+plugin data structures. More specifically, CVS uses the session and persistant property
+caches along with the synchronizer.
+
+<h3>CVS Workspace Sync info caches</h3>
+
+Checking of the cahce usage requires the use of the Core spy tools. To
+obtain the memory footprint, perform the following steps.
+
+<ol>
+<li>Install the Core Spy Tools
+<li>Launch Eclipse
+<li>Checkout several projects
+<li>Open the Element Tree Spy to get the memory footprint. At the
+time of writting, CVS is the main user of these structures. In future
+test, ensure that others are not contributing to the tally.
+<li>Disconnect all the projects
+<li>The Element Tree Spy memory footprint should be reduced accordingly
+</ol>
The following snapshot of the resource element tree was taken after checking out all of the projects
(294 as of 2004/05/31) in dev.eclipse.org.
@@ -59,4 +79,19 @@ The top 20 equal but non-identical strings are:
src->184
package.html->165
</pre>
+
+<h3>CVS Merge memory usage</h3>
+Merging in CVS makes use of the Core synchronizer. Perform the following steps
+with the Core Spy Tool installed to
+ensure proper memory management.
+
+<ol>
+<li>Checkout one or more projects
+<li>Open the Element Tree Spy to get the memory footprint.
+<li>Perform a merge
+<li>Open the Element Tree Spy to get the memory footprint. The only increase
+should be in the synchronizer.
+<li>Remove the merge from the sync view
+<li>The Element Tree Spy memory footprint should be reduced accordingly
+</ol>
</body></html> \ No newline at end of file
diff --git a/tests/org.eclipse.team.tests.cvs.core/html/perf00005.html b/tests/org.eclipse.team.tests.cvs.core/html/perf00005.html
new file mode 100644
index 000000000..a5a8dcf73
--- /dev/null
+++ b/tests/org.eclipse.team.tests.cvs.core/html/perf00005.html
@@ -0,0 +1,36 @@
+<html><head><title>Looking For Leaks</title>
+<LINK REL=STYLESHEET HREF=../book.css CHARSET=ISO-8859-1 TYPE=text/css>
+<meta NAME="keywords" content="">
+<meta NAME="since" content="">
+</head><h2>Looking For Leaks</h2>
+<p>Since: <br>
+Last Modified: $Date: 2004/05/31 20:01:46 $</p><body>
+
+<h3>Removing synchronize view entries</h3>
+
+<ol>
+<li>Start with an empty synchronize view
+<li>Create an entry in the Synchronize view for each of the following cases:
+ <ul>
+ <li>Team>Synchronize
+ <li>Compare with>Branch or Version
+ <li>Team>Merge
+ </ul>
+<li>Open the context menu
+<li>Select all mode and layout combinations
+<li>Remove the entry (making the sync view empty).
+<li>Select an item in another view
+<li>Using a memory profiler, look for instances of the following classes:
+ <ul>
+ <li>ISynchronizeParticipant
+ <li>SynchronizeModelElement
+ <li>SyncInfo/SyncInfoSet
+ </ul>
+</ol>
+
+<h3>Closing the Synchronize view</h3>
+
+Close all instances of the Synchronize view and ensure that no instances
+of ISynchronizeView remain.
+
+</body></html> \ No newline at end of file
diff --git a/tests/org.eclipse.team.tests.cvs.core/html/perf00006.html b/tests/org.eclipse.team.tests.cvs.core/html/perf00006.html
new file mode 100644
index 000000000..79aebf13c
--- /dev/null
+++ b/tests/org.eclipse.team.tests.cvs.core/html/perf00006.html
@@ -0,0 +1,31 @@
+<html><head><title>Team Data Structures</title>
+<LINK REL=STYLESHEET HREF=../book.css CHARSET=ISO-8859-1 TYPE=text/css>
+<meta NAME="keywords" content="">
+<meta NAME="since" content="">
+</head><h2>Team Data Structures</h2>
+<p>Since: <br>
+Last Modified: $Date: 2004/05/31 20:01:46 $</p><body>
+
+The Team component provides several data strucutures that can be used to
+cache resource synchronization state and resource variants for improved
+performance. The plan is to provide tools to interogate these caches in the 3.1 timeframe.
+
+These caches include:
+
+<ul>
+<li>Resource Variant cache
+<li>SubsciberParticipant/SyncInfoSet
+</ul>
+
+<h3>CVS Specific data structures</h3>
+
+CVS uses several caches to improve performance. Tools should be provided to query the
+size of these caches as well.
+
+<ul>
+<li>Console (caches contents while not visible)
+<li>Resource History View log entry cache
+<li>Commit Sets log entry cache
+</ul>
+
+</body></html> \ No newline at end of file
diff --git a/tests/org.eclipse.team.tests.cvs.core/toc.xml b/tests/org.eclipse.team.tests.cvs.core/toc.xml
index 81670805e..6f3faeaa0 100644
--- a/tests/org.eclipse.team.tests.cvs.core/toc.xml
+++ b/tests/org.eclipse.team.tests.cvs.core/toc.xml
@@ -112,9 +112,13 @@
<topic label="Performance" href="html/perf00001.html">
<topic label="Timings" href="html/perf00002.html">
</topic>
- <topic label="Memory Usage" href="html/perf00003.html">
+ <topic label="Memory Footprint" href="html/perf00003.html">
<topic label="Resource Data Structures" href="html/perf00004.html">
</topic>
+ <topic label="Looking For Leaks" href="html/perf00005.html">
+ </topic>
+ <topic label="Team Data Structures" href="html/perf00006.html">
+ </topic>
</topic>
</topic>
</toc>

Back to the top