Home | History | Annotate | Download | only in ubrkperf
      1 #!/usr/bin/perl
      2 #  ********************************************************************
      3 #  * Copyright (C) 2016 and later: Unicode, Inc. and others.
      4 #  * License & terms of use: http://www.unicode.org/copyright.html#License
      5 #  ********************************************************************
      6 #  ********************************************************************
      7 #  * Copyright (c) 2002-2013, International Business Machines
      8 #  * Corporation and others. All Rights Reserved.
      9 #  ********************************************************************
     10 
     11 #use strict;
     12 
     13 require "../perldriver/Common.pl";
     14 
     15 use lib '../perldriver';
     16 
     17 use PerfFramework;
     18 
     19 my $options = {
     20     "title"=>"BreakIterator performance regression: ICU (".$ICUPreviousVersion." and ".$ICULatestVersion.")",
     21     "headers"=>"ICU".$ICUPreviousVersion." ICU".$ICULatestVersion,
     22     "operationIs"=>"code point",
     23     "eventIs"=>"break",
     24     "passes"=>"10",
     25     "time"=>"5",
     26     #"outputType"=>"HTML",
     27     "dataDir"=>$CollationDataPath,
     28     "outputDir"=>"../results"
     29 };
     30 
     31 # programs
     32 # tests will be done for all the programs. Results will be stored and connected
     33 my $m1 = "-- -m char";
     34 my $m2 = "-- -m word";
     35 my $m3 = "-- -m line";
     36 my $m4 = "-- -m sentence";
     37 
     38 my $m;
     39 
     40 if(@_ >= 0) {
     41   $m = "-- -m ".shift;
     42 } else {
     43   $m = $m1;
     44 }
     45 
     46 my $p1; # Previous
     47 my $p2; # Latest
     48 
     49 if ($OnWindows) {
     50     $p1 = "cd ".$ICUPrevious."/bin && ".$ICUPathPrevious."/ubrkperf/$WindowsPlatform/Release/ubrkperf.exe";
     51     $p2 = "cd ".$ICULatest."/bin && ".$ICUPathLatest."/ubrkperf/$WindowsPlatform/Release/ubrkperf.exe";
     52 } else {
     53     $p1 = "LD_LIBRARY_PATH=".$ICUPrevious."/source/lib:".$ICUPrevious."/source/tools/ctestfw ".$ICUPathPrevious."/ubrkperf/ubrkperf";
     54     $p2 = "LD_LIBRARY_PATH=".$ICULatest."/source/lib:".$ICULatest."/source/tools/ctestfw ".$ICUPathLatest."/ubrkperf/ubrkperf";
     55 }
     56 
     57 my $dataFiles = {
     58     "en",
     59     [
     60         "thesis.txt",
     61         "2drvb10.txt",
     62         "ulyss10.txt",
     63         "nvsbl10.txt",
     64         "vfear11a.txt",
     65         "TestNames_Asian.txt",
     66         "TestNames_Chinese.txt",
     67         "TestNames_Japanese.txt",
     68         "TestNames_Japanese_h.txt",
     69         "TestNames_Japanese_k.txt",
     70         "TestNames_Korean.txt",
     71         "TestNames_Latin.txt",
     72         "TestNames_SerbianSH.txt",
     73         "TestNames_SerbianSR.txt",
     74         "TestNames_Thai.txt",
     75         "Testnames_Russian.txt",
     76     ],
     77     "th",
     78     [
     79         "TestNames_Thai.txt",
     80         "th18057.txt"
     81     ]
     82 };
     83 
     84 
     85 my $tests = {
     86     "TestForwardChar",      ["$p1,$m1,TestICUForward", "$p2,$m1,TestICUForward"],
     87     "TestForwardWord",      ["$p1,$m2,TestICUForward", "$p2,$m2,TestICUForward"],
     88     "TestForwardLine",      ["$p1,$m3,TestICUForward", "$p2,$m3,TestICUForward"],
     89     "TestForwardSentence",  ["$p1,$m4,TestICUForward", "$p2,$m4,TestICUForward"],
     90 
     91     "TestIsBoundChar",      ["$p1,$m1,TestICUIsBound", "$p2,$m1,TestICUIsBound"],
     92     "TestIsBoundWord",      ["$p1,$m2,TestICUIsBound", "$p2,$m2,TestICUIsBound"],
     93     "TestIsBoundLine",      ["$p1,$m3,TestICUIsBound", "$p2,$m3,TestICUIsBound"],
     94     "TestIsBoundSentence",  ["$p1,$m4,TestICUIsBound", "$p2,$m4,TestICUIsBound"],
     95 };
     96 
     97 runTests($options, $tests, $dataFiles);
     98 
     99 
    100