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