Home | History | Annotate | Download | only in perf-tests
      1 #!/usr/bin/perl
      2 #  ********************************************************************
      3 #  * COPYRIGHT:
      4 #  * Copyright (c) 2002-2007, International Business Machines
      5 #  * Corporation and others. All Rights Reserved.
      6 #  ********************************************************************
      7 
      8 use strict;
      9 
     10 use lib 'svn-icu4j/src/com/ibm/icu/dev/test/perf/perldriver';
     11 
     12 use PerfFramework4j;
     13 
     14 my $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
     28 my $TESTCLASS = "com.ibm.icu.dev.test.perf.RBBIPerf";
     29 # tests will be done for all the programs. Results will be stored and connected
     30 my $m1 = "char";
     31 my $m2 = "word";
     32 my $m3 = "line";
     33 my $m4 = "jdkline";
     34 
     35 my $m;
     36 
     37 if(@_ >= 0) {
     38   $m = "-- -m ".shift;
     39 } else {
     40   $m = $m1;
     41 }
     42 
     43 my $jvm1 = "java -classpath svn-icu4j_3-6/classes $TESTCLASS";
     44 my $jvm2 = "java -classpath svn-icu4j/classes $TESTCLASS";
     45 
     46 my $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 
     69 my $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 
     86 runTests($options, $tests, $dataFiles);
     87 
     88 
     89