• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/perl
2#  ********************************************************************
3#  * COPYRIGHT:
4#  * Copyright (c) 2002-2007, International Business Machines
5#  * Corporation and others. All Rights Reserved.
6#  ********************************************************************
7
8use strict;
9
10use lib 'svn-icu4j/src/com/ibm/icu/dev/test/perf/perldriver';
11
12use PerfFramework4j;
13
14my $options = {
15	       "title"=>"Rule Based BreakIterator performance regression (ICU4J 3.6 and 3.8)",
16	       "headers"=>"ICU4J36 ICU4J38",
17	       "operationIs"=>"code point",
18	       "eventIs"=>"break",
19	       "passes"=>"10",
20	       "time"=>"5",
21	       "outputType"=>"HTML",
22	       "dataDir"=>"svn-icu4j/src/com/ibm/icu/dev/test/perf/data/collation",
23	       "outputDir"=>"svn-icu4j/results_ICU4J"
24	      };
25
26# programs
27# Test class
28my $TESTCLASS = "com.ibm.icu.dev.test.perf.RBBIPerf";
29# tests will be done for all the programs. Results will be stored and connected
30my $m1 = "char";
31my $m2 = "word";
32my $m3 = "line";
33my $m4 = "jdkline";
34
35my $m;
36
37if(@_ >= 0) {
38  $m = "-- -m ".shift;
39} else {
40  $m = $m1;
41}
42
43my $jvm1 = "java -classpath svn-icu4j_3-6/classes $TESTCLASS";
44my $jvm2 = "java -classpath svn-icu4j/classes $TESTCLASS";
45
46my $dataFiles = {
47"en", [
48	   #"thesis.txt",
49       #"2drvb10.txt",
50       #"ulyss10.txt",
51       #"nvsbl10.txt",
52       #"vfear11a.txt",
53       "TestNames_Asian.txt",
54       "TestNames_Chinese.txt",
55       "TestNames_Japanese.txt",
56       "TestNames_Japanese_h.txt",
57       "TestNames_Japanese_k.txt",
58       "TestNames_Korean.txt",
59       "TestNames_Latin.txt",
60       "TestNames_SerbianSH.txt",
61       "TestNames_SerbianSR.txt",
62       "TestNames_Thai.txt",
63       "Testnames_Russian.txt",
64],
65#"th", ["TestNames_Thai.txt", "th18057.txt"]
66};
67
68
69my $tests = {
70"TestNextChar",      ["$jvm1 testRBBINext $m1", "$jvm2 testRBBINext $m1"],
71"TestNextWord",      ["$jvm1 testRBBINext $m2", "$jvm2 testRBBINext $m2"],
72"TestNextLine",      ["$jvm1 testRBBINext $m3", "$jvm2 testRBBINext $m3"],
73"TestNextJDKLine",   ["$jvm1 testRBBINext $m4", "$jvm2 testRBBINext $m4"],
74##
75"TestPreviousChar",      ["$jvm1 testRBBIPrevious $m1", "$jvm2 testRBBIPrevious $m1"],
76"TestPreviousWord",      ["$jvm1 testRBBIPrevious $m2", "$jvm2 testRBBIPrevious $m2"],
77"TestPreviousLine",      ["$jvm1 testRBBIPrevious $m3", "$jvm2 testRBBIPrevious $m3"],
78#"TestPreviousSentence",  ["$jvm1 testRBBIPrevious $m4", "$jvm2 testRBBIPrevious $m4"],
79##
80"TestIsBoundaryChar",      ["$jvm1 testRBBIIsBoundary $m1", "$jvm2 testRBBIIsBoundary $m1"],
81"TestIsBoundaryWord",      ["$jvm1 testRBBIIsBoundary $m2", "$jvm2 testRBBIIsBoundary $m2"],
82"TestIsBoundaryLine",      ["$jvm1 testRBBIIsBoundary $m3", "$jvm2 testRBBIIsBoundary $m3"],
83#"TestIsBoundarySentence",  ["$jvm1 testRBBIIsBoundary $m4", "$jvm2 testRBBIIsBoundary $m4"],
84};
85
86runTests($options, $tests, $dataFiles);
87
88
89