doc/test/performance/index.html

Code
Comments
Other
Rev Date Author Line
3659 13 Aug 07 nicklas 1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
3659 13 Aug 07 nicklas 2 <!--
3659 13 Aug 07 nicklas 3   $Id$
3659 13 Aug 07 nicklas 4
3675 16 Aug 07 jari 5   Copyright (C) 2007 Nicklas Nordborg
7982 14 Jun 21 nicklas 6   Copyright (C) 2008 Jari H�kkinen
3659 13 Aug 07 nicklas 7
3659 13 Aug 07 nicklas 8   This file is part of BASE - BioArray Software Environment.
3659 13 Aug 07 nicklas 9   Available at http://base.thep.lu.se/
3659 13 Aug 07 nicklas 10
3659 13 Aug 07 nicklas 11   BASE is free software; you can redistribute it and/or
3659 13 Aug 07 nicklas 12   modify it under the terms of the GNU General Public License
4477 05 Sep 08 jari 13   as published by the Free Software Foundation; either version 3
3659 13 Aug 07 nicklas 14   of the License, or (at your option) any later version.
3659 13 Aug 07 nicklas 15
3659 13 Aug 07 nicklas 16   BASE is distributed in the hope that it will be useful,
3659 13 Aug 07 nicklas 17   but WITHOUT ANY WARRANTY; without even the implied warranty of
3659 13 Aug 07 nicklas 18   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3659 13 Aug 07 nicklas 19   GNU General Public License for more details.
3659 13 Aug 07 nicklas 20
3659 13 Aug 07 nicklas 21   You should have received a copy of the GNU General Public License
4509 11 Sep 08 jari 22   along with BASE. If not, see <http://www.gnu.org/licenses/>.
3659 13 Aug 07 nicklas 23 -->
3659 13 Aug 07 nicklas 24 <html>
3659 13 Aug 07 nicklas 25   <head>
3659 13 Aug 07 nicklas 26     <title>BASE - Performance testing of BASE</title>
4806 10 Mar 09 nicklas 27   <link rel=stylesheet type="text/css" href="../../historical/styles.css">
3659 13 Aug 07 nicklas 28   </head>
3659 13 Aug 07 nicklas 29 <body>
3659 13 Aug 07 nicklas 30
3659 13 Aug 07 nicklas 31 <div class="navigation">
3659 13 Aug 07 nicklas 32   <a href="../../index.html">BASE</a>
4806 10 Mar 09 nicklas 33   <img src="../../historical/next.gif">
3659 13 Aug 07 nicklas 34   <a href="../index.html">Test procedures</a>
4806 10 Mar 09 nicklas 35   <img src="../../historical/next.gif">
3659 13 Aug 07 nicklas 36   Performance
3659 13 Aug 07 nicklas 37 </div>
3659 13 Aug 07 nicklas 38
3659 13 Aug 07 nicklas 39   <h1>Performance testing of BASE</h1>
3659 13 Aug 07 nicklas 40
3659 13 Aug 07 nicklas 41   <div class="abstract">
3659 13 Aug 07 nicklas 42     <p>
3659 13 Aug 07 nicklas 43       This document defines a procedure for testing the performance
4487 08 Sep 08 jari 44       of BASE. The intention is that BASE should be compared to the
4487 08 Sep 08 jari 45       earlier BASE version 1 with respect to performance. The tests on
4487 08 Sep 08 jari 46       a BASE version 1 server must be done by hand. For later BASE
4487 08 Sep 08 jari 47       versions, there is a test program. The current test program
4806 10 Mar 09 nicklas 48       includes the following tests:
3659 13 Aug 07 nicklas 49     </p>
3659 13 Aug 07 nicklas 50     
3659 13 Aug 07 nicklas 51     <ul>
3659 13 Aug 07 nicklas 52     <li>Import raw data</li>
3659 13 Aug 07 nicklas 53     <li>Create a root bioassayset</li>
3659 13 Aug 07 nicklas 54     <li>Create a filtered bioassayset</li>
3659 13 Aug 07 nicklas 55     <li>Create a normalized bioassayset with LOWESS</li>
4806 10 Mar 09 nicklas 56     <li>Export bioassay set data in Serial and Matrix BASEFile format and MeV format</li>
3659 13 Aug 07 nicklas 57     </ul>
3659 13 Aug 07 nicklas 58     
3659 13 Aug 07 nicklas 59   
3659 13 Aug 07 nicklas 60     <b>Contents</b><br>
3659 13 Aug 07 nicklas 61     <ol>
3659 13 Aug 07 nicklas 62     <li><a href="#program">Running the test program</a></li>
4806 10 Mar 09 nicklas 63     <li><a href="#typical">A typical test sequence</a></li>
3659 13 Aug 07 nicklas 64     </ol>
3659 13 Aug 07 nicklas 65     
3659 13 Aug 07 nicklas 66     <p class="authors">
3659 13 Aug 07 nicklas 67     <b>Last updated:</b> $Date$
3659 13 Aug 07 nicklas 68     </p>
3659 13 Aug 07 nicklas 69   </div>
3659 13 Aug 07 nicklas 70
3659 13 Aug 07 nicklas 71   
4806 10 Mar 09 nicklas 72   <a name="program"></a>
3659 13 Aug 07 nicklas 73   <h2>1. Running the test pgoram</h2>
3659 13 Aug 07 nicklas 74
3659 13 Aug 07 nicklas 75   <p>
3659 13 Aug 07 nicklas 76     The data files needed by the tests are NOT included in the subversion repository.
3659 13 Aug 07 nicklas 77     The main reason is that they are too large, and that we don't have permission to
3659 13 Aug 07 nicklas 78     make them publicly available for download. To get the test file you need to be a
3659 13 Aug 07 nicklas 79     core developer. Read the instructions on the 
7982 14 Jun 21 nicklas 80     <a href="https://base.thep.lu.se/wiki/DeveloperInformation">DeveloperInformation</a>
3659 13 Aug 07 nicklas 81     page, <code>Test data</code> section on the Base 2 web site.
3659 13 Aug 07 nicklas 82   </p>
3659 13 Aug 07 nicklas 83   
3659 13 Aug 07 nicklas 84   <p>
3659 13 Aug 07 nicklas 85     To run the test do the following:
3659 13 Aug 07 nicklas 86   </p>
3659 13 Aug 07 nicklas 87   <ol>
3659 13 Aug 07 nicklas 88     
3659 13 Aug 07 nicklas 89     <li>Compile the core and the test programs: <code>ant test</code>.</li>
3659 13 Aug 07 nicklas 90
3659 13 Aug 07 nicklas 91     <li>Change to the <code>build/test/</code> directory.</li>
3659 13 Aug 07 nicklas 92
4806 10 Mar 09 nicklas 93     <li>Run test program: 
4806 10 Mar 09 nicklas 94       <pre class="code">
4806 10 Mar 09 nicklas 95 ./test.sh performace &lt;options&gt; &lt;cmd&gt;
4806 10 Mar 09 nicklas 96 </pre>
4806 10 Mar 09 nicklas 97   </ol>
4806 10 Mar 09 nicklas 98
4806 10 Mar 09 nicklas 99       
4806 10 Mar 09 nicklas 100       <p>
4806 10 Mar 09 nicklas 101       <b>Test program options</b>
4806 10 Mar 09 nicklas 102
3659 13 Aug 07 nicklas 103       <ul>
4806 10 Mar 09 nicklas 104       <li>global options:
4806 10 Mar 09 nicklas 105         <ul>
4806 10 Mar 09 nicklas 106         <li><code>-u</code>: Username to run the test as. The default value is "root".
4806 10 Mar 09 nicklas 107         <li><code>-p</code>: Password for the user. The default value is "root".
4806 10 Mar 09 nicklas 108         <li><code>-x</code>: If present, the tests are executed immediately. Otherwise
4806 10 Mar 09 nicklas 109           they are added as jobs to the job queue.
4806 10 Mar 09 nicklas 110         </ul>
4806 10 Mar 09 nicklas 111         <p>
4806 10 Mar 09 nicklas 112         
4806 10 Mar 09 nicklas 113       <li><code>raw</code>: import raw data
4806 10 Mar 09 nicklas 114         <ul>
4806 10 Mar 09 nicklas 115         <li><code>-i</code>: Number of raw bioassays to create. 
4806 10 Mar 09 nicklas 116           The default value is 1.
4806 10 Mar 09 nicklas 117         <li><code>-c</code>: Name prefix for the created raw bioassays. A
4806 10 Mar 09 nicklas 118           running number is appended to the name automatically. The
4806 10 Mar 09 nicklas 119           default value is "Raw".
4806 10 Mar 09 nicklas 120         </ul>
4806 10 Mar 09 nicklas 121         <p>
3659 13 Aug 07 nicklas 122       
4806 10 Mar 09 nicklas 123       <li><code>root</code>: create root bioassay sets
4806 10 Mar 09 nicklas 124         <ul>
4806 10 Mar 09 nicklas 125         <li><code>-s</code>: Name prefix of raw bioassays that should be used.
4806 10 Mar 09 nicklas 126           If no value is given, all raw bioassays in the experiment are used.
4806 10 Mar 09 nicklas 127         <li><code>-c</code>: Name prefix for the created bioassay sets. The
4806 10 Mar 09 nicklas 128           iteration number and number of raw data sets is appended to the name
4806 10 Mar 09 nicklas 129           automatically. The default value is "Root".
4806 10 Mar 09 nicklas 130         <li><code>-i</code>: Number of root bioassay sets to create in each
4806 10 Mar 09 nicklas 131           iteration. The default value is 1.
4806 10 Mar 09 nicklas 132         <li><code>-mi</code>: Number of source raw bioassays to use in the first
4806 10 Mar 09 nicklas 133           iteration. The default value is 1. The number of source raw bioassays
4806 10 Mar 09 nicklas 134           are double in each iteration.
4806 10 Mar 09 nicklas 135         <li><code>-mx</code>: Number of source raw bioassays to use in the last
4806 10 Mar 09 nicklas 136           iteration. The default value is 1. 
4806 10 Mar 09 nicklas 137         </ul>
4806 10 Mar 09 nicklas 138         Note! With the -i, -mi and -mx parameters it is possible to specify that
4806 10 Mar 09 nicklas 139         multiple root bioassay sets are created. Here is an example:
4806 10 Mar 09 nicklas 140         <code>-i 2 -mi 10 -mx 80</code>. This creates 2 root bioassays with
4806 10 Mar 09 nicklas 141         10, 20, 40 and 80 source raw bioassays each.
4806 10 Mar 09 nicklas 142         <p>
4806 10 Mar 09 nicklas 143         
4806 10 Mar 09 nicklas 144       <li><code>filter</code>: create filtered bioassay sets
4806 10 Mar 09 nicklas 145         <ul>
4806 10 Mar 09 nicklas 146         <li><code>-s</code>: Name prefix of bioassay sets that should be
4806 10 Mar 09 nicklas 147           filtered. The default value is "Root".
4806 10 Mar 09 nicklas 148         <li><code>-c</code>: Name prefix for the created bioassay sets.
4806 10 Mar 09 nicklas 149           The default value is "Filtered".
4806 10 Mar 09 nicklas 150         </ul>
4806 10 Mar 09 nicklas 151         <p>
4806 10 Mar 09 nicklas 152       
4806 10 Mar 09 nicklas 153       <li><code>lowess</code>: create normalized bioassay sets using lowess
4806 10 Mar 09 nicklas 154         <ul>
4806 10 Mar 09 nicklas 155         <li><code>-s</code>: Name prefix of bioassay sets that should be
4806 10 Mar 09 nicklas 156           normalized. The default value is "Filtered".
4806 10 Mar 09 nicklas 157         <li><code>-c</code>: Name prefix for the created bioassay sets.
4806 10 Mar 09 nicklas 158           The default value is "Lowess".
4806 10 Mar 09 nicklas 159         </ul>
4806 10 Mar 09 nicklas 160         <p>
4806 10 Mar 09 nicklas 161       
4806 10 Mar 09 nicklas 162       <li><code>export</code>: export bioassay set data
4806 10 Mar 09 nicklas 163         <ul>
4806 10 Mar 09 nicklas 164         <li><code>-s</code>: Name prefix of bioassay sets that should be
4806 10 Mar 09 nicklas 165           exported. There is no default value.
4806 10 Mar 09 nicklas 166         </ul>
4806 10 Mar 09 nicklas 167         <p>
4806 10 Mar 09 nicklas 168   
4806 10 Mar 09 nicklas 169       <li><code>clean</code>: delete all test data, except reporters
4806 10 Mar 09 nicklas 170         <p>
4806 10 Mar 09 nicklas 171       
4806 10 Mar 09 nicklas 172     </ul>
4806 10 Mar 09 nicklas 173     </ol>
3659 13 Aug 07 nicklas 174
3659 13 Aug 07 nicklas 175   <p>
3659 13 Aug 07 nicklas 176     The test doesn't program doesn't require an empty database. Running the
3659 13 Aug 07 nicklas 177     test program multiple times will simply add more data to the experiment.
3659 13 Aug 07 nicklas 178   </p>
3659 13 Aug 07 nicklas 179   
3659 13 Aug 07 nicklas 180   <p>
3659 13 Aug 07 nicklas 181     Parameters to plug-ins are read from the performance.properties 
3659 13 Aug 07 nicklas 182     configuration file. It should be located in either /config/test or
3659 13 Aug 07 nicklas 183     /config/local directory. If you want to change the parameters
3659 13 Aug 07 nicklas 184     put the changed file in /config/local. Don't put this file into
3659 13 Aug 07 nicklas 185     the subversion repository.
3659 13 Aug 07 nicklas 186   </p>
3659 13 Aug 07 nicklas 187   
4806 10 Mar 09 nicklas 188   <a name="typical"></a>
4806 10 Mar 09 nicklas 189   <h2>2. A typical test sequence</h2>
3659 13 Aug 07 nicklas 190   
4806 10 Mar 09 nicklas 191   <p>
4806 10 Mar 09 nicklas 192     In this case we assume a fresh, empty database.
4806 10 Mar 09 nicklas 193   </p>
4806 10 Mar 09 nicklas 194   
4806 10 Mar 09 nicklas 195   <pre class="code">
4806 10 Mar 09 nicklas 196 # Import raw data to 10 raw bioassays.
4806 10 Mar 09 nicklas 197 ./test.sh performace -i 10 raw
4806 10 Mar 09 nicklas 198
4806 10 Mar 09 nicklas 199 # Create 2 root bioassay sets each with 1, 2, 4, and 8
4806 10 Mar 09 nicklas 200 # raw bioassays
4806 10 Mar 09 nicklas 201 ./test.sh performance -i 2 -mi 1 -mx 8 root
4806 10 Mar 09 nicklas 202
4806 10 Mar 09 nicklas 203 # Filter all root bioassay sets
4806 10 Mar 09 nicklas 204 ./test.sh performance -s Root -c Filtered filter
4806 10 Mar 09 nicklas 205
4806 10 Mar 09 nicklas 206 # Normalize all filtered bioassay sets
4806 10 Mar 09 nicklas 207 ./test.sh performance -s Filtered -c Lowess lowess
4806 10 Mar 09 nicklas 208
4806 10 Mar 09 nicklas 209 # Export all root bioassay sets
4806 10 Mar 09 nicklas 210 ./test.sh performance -s Root export
4806 10 Mar 09 nicklas 211
4806 10 Mar 09 nicklas 212 # Export all filtered bioassay sets
4806 10 Mar 09 nicklas 213 ./test.sh performance -s Filtered export
4806 10 Mar 09 nicklas 214 </pre>
4806 10 Mar 09 nicklas 215
4806 10 Mar 09 nicklas 216   
3659 13 Aug 07 nicklas 217 </body>
3659 13 Aug 07 nicklas 218 </html>