]>
Commit | Line | Data |
---|---|---|
46f4442e A |
1 | Copyright (C) 2008, International Business Machines |
2 | Corporation and others. All Rights Reserved. | |
3 | ||
4 | README for ICU4C Performance Test | |
5 | ||
6 | Introduction: | |
7 | The performance tests in ICU4C compares various aspects of ICU against previous versions of ICU, | |
8 | Posix, and/or Windows. Some tests only run on Windows and are labeled accordingly.All of the | |
9 | performance tests are driven by a perl-based script which calls the underlying C program and | |
10 | displays the statistical analysis of the test in an easy to read HTML web page. Each test will | |
11 | have its own web page. | |
12 | ||
13 | ||
14 | Requirements: | |
15 | The most up to date tests are in ICU 4.0 and later. In addition, most tests depend on data which are | |
16 | in a seperate repository. | |
17 | ||
18 | Data repository: | |
19 | http://source.icu-project.org/repos/icu/data/trunk/test/perf | |
20 | There are 3 folders in here: collation, conversion, and udr. | |
21 | ||
22 | ||
23 | Running Performance Test: | |
24 | ||
25 | 1) You should create a directory to hold the ICU (current and previous versions) and the data. | |
26 | (e.g. C:\ICUPerformanceTest) | |
27 | ||
28 | 2) Checkout the current ICU and 2 previous versions (for proper regression testing) and the data | |
29 | into the ICUPerformanceTest directory. | |
30 | ||
31 | 3) Do a general build on all the ICUs either through Visual Studios or with the Makefile. | |
32 | ||
33 | 4) Build the ICU performance tests either through Visual Studios or with the Makefile. | |
34 | (The location of the performance test is: icu/source/test/perf) | |
35 | ||
36 | 5) Go to perf/perldriver and edit Common.pl. | |
37 | In this file, you will need to set a few variables: | |
38 | a) ICU version numbers | |
39 | b) Path to the performance test data | |
40 | c) Path to the root directory of the different versions of ICU | |
41 | d) Whether or not you are running the test on Windows | |
42 | * The Path needs to be absolute | |
43 | * All other variables should be left as is | |
44 | ||
45 | 6) In the perf directory, there are several other directories for the various tests that can be run. | |
46 | (e.g. convperf (Conversion tests)). Go to each directory and execute the perl script for each test | |
47 | you want to run. (e.g. CharPerf_r.pl in CharPerf directory) | |
48 | * You only need to run the perl script from the latest ICU version. The corresponding perl script | |
49 | in the previous versions of ICU do not need to be run seperately. | |
50 | * All of the test result web pages will be stored in perf/results. | |
51 | ||
52 | ||
53 | Note: When running on Windows, cygwin is preferred. | |
54 | Note: If a test needs to be run on Windows, a message will be displayed. | |
55 | Note: After building the performance tests, it is a good idea to execute each C program to ensure that each | |
56 | test can run. (e.g. convperf.exe) | |
57 | Note: To run the actual performance test, you will need to setup Perl with the following modules: | |
58 | a) Statistics/Distribution.pm | |
59 | b) Statistics/Descriptive.pm | |
60 | Note: Some tests take a while depending on the machine it is running on so a script to run each performance test's | |
61 | perl script might be helpful. |