#!/usr/bin/perl | |
# ******************************************************************** | |
# * Copyright (c) 2002-2007, International Business Machines | |
# * Corporation and others. All Rights Reserved. | |
# ******************************************************************** | |
use strict; | |
#Assume we are running outside of the icu source | |
use lib './icu-3.0/icu/source/test/perf/perldriver'; | |
use PerfFramework; | |
my $options = { | |
"title"=>"BreakIterator performance regression (ICU 2.8 and 3.0)", | |
"headers"=>"ICU28 ICU30", | |
"operationIs"=>"code point", | |
"eventIs"=>"break", | |
"passes"=>"10", | |
"time"=>"5", | |
#"outputType"=>"HTML", | |
"dataDir"=>"c:/src/perf/data", | |
"outputDir"=>"results_ICU4C" | |
}; | |
# programs | |
# tests will be done for all the programs. Results will be stored and connected | |
my $m1 = "-- -m char"; | |
my $m2 = "-- -m word"; | |
my $m3 = "-- -m line"; | |
my $m4 = "-- -m sentence"; | |
my $m; | |
if(@_ >= 0) { | |
$m = "-- -m ".shift; | |
} else { | |
$m = $m1; | |
} | |
my $p1 = "icu-2.8/icu/bin/ubrkperf28.exe"; | |
my $p2 = "icu-3.0/icu/bin/ubrkperf30.exe"; | |
my $dataFiles = { | |
"en", [ | |
"TestNames_Asian.txt", | |
"TestNames_Chinese.txt", | |
"TestNames_Japanese.txt", | |
"TestNames_Japanese_h.txt", | |
"TestNames_Japanese_k.txt", | |
"TestNames_Korean.txt", | |
"TestNames_Latin.txt", | |
"TestNames_SerbianSH.txt", | |
"TestNames_SerbianSR.txt", | |
"TestNames_Thai.txt", | |
"Testnames_Russian.txt", | |
], | |
#"th", ["TestNames_Thai.txt", "th18057.txt"] | |
}; | |
my $tests = { | |
"TestForwardChar", ["$p1 $m1 TestICUForward", "$p2 $m1 TestICUForward"], | |
"TestForwardWord", ["$p1 $m2 TestICUForward", "$p2 $m2 TestICUForward"], | |
"TestForwardLine", ["$p1 $m3 TestICUForward", "$p2 $m3 TestICUForward"], | |
"TestForwardSentence", ["$p1 $m4 TestICUForward", "$p2 $m4 TestICUForward"], | |
"TestIsBoundChar", ["$p1 $m1 TestICUIsBound", "$p2 $m1 TestICUIsBound"], | |
"TestIsBoundWord", ["$p1 $m2 TestICUIsBound", "$p2 $m2 TestICUIsBound"], | |
"TestIsBoundLine", ["$p1 $m3 TestICUIsBound", "$p2 $m3 TestICUIsBound"], | |
"TestIsBoundSentence", ["$p1 $m4 TestICUIsBound", "$p2 $m4 TestICUIsBound"], | |
}; | |
runTests($options, $tests, $dataFiles); | |