OLD | NEW |
(Empty) | |
| 1 #!/usr/bin/perl |
| 2 # ******************************************************************** |
| 3 # COPYRIGHT: |
| 4 # Copyright (c) 2013-2014, International Business Machines Corporation and |
| 5 # others. All Rights Reserved. |
| 6 # ******************************************************************** |
| 7 |
| 8 # Variables need to be set in ../perldriver/Common.pl for where ICU is on your m
achine. |
| 9 # Copy Common.pl.template to Common.pl and modify it. |
| 10 # |
| 11 # Sample Common.pl "Settings by user" for a Linux out-of-source build: |
| 12 # |
| 13 # $ICULatestVersion = "collv2"; |
| 14 # $ICUPreviousVersion = "52"; |
| 15 # |
| 16 # $PerformanceDataPath = "/home/mscherer/svn.icudata/trunk/src/test/perf"; |
| 17 # |
| 18 # $ICULatest = "/home/mscherer/svn.icu/collv2/bld"; |
| 19 # $ICUPrevious = "/home/mscherer/svn.icu/trunk/bld"; |
| 20 # |
| 21 # The first time around, you also need to |
| 22 # source/test/perf/collperf2$ mkdir ../results |
| 23 # Then invoke |
| 24 # source/test/perf/collperf2$ ./CollPerf2_r.pl |
| 25 # |
| 26 # Sample debug invocation: |
| 27 # ~/svn.icu/trunk/dbg/test/perf/collperf2$ LD_LIBRARY_PATH=../../../lib:../../
../tools/ctestfw ./collperf2 -t 5 -p 1 -L "de" -f /home/mscherer/svn.icudata/tr
unk/src/test/perf/collation/TestNames_Latin.txt TestStringPieceSort |
| 28 |
| 29 #use strict; |
| 30 |
| 31 use lib '../perldriver'; |
| 32 |
| 33 require "../perldriver/Common.pl"; |
| 34 |
| 35 use PerfFramework; |
| 36 |
| 37 my $options = { |
| 38 "title"=>"Collation Performance Regression: ICU (".$ICUPreviousVersion." and
".$ICULatestVersion.")", |
| 39 "headers"=>"ICU".$ICUPreviousVersion." ICU".$ICULatestVersion, |
| 40 "operationIs"=>"Collator", |
| 41 "passes"=>"1", |
| 42 "time"=>"2", |
| 43 #"outputType"=>"HTML", |
| 44 "dataDir"=>$CollationDataPath, |
| 45 "outputDir"=>"../results" |
| 46 }; |
| 47 |
| 48 # programs |
| 49 # tests will be done for all the programs. Results will be stored and connected |
| 50 my $p1, $p2; |
| 51 |
| 52 if ($OnWindows) { |
| 53 $p1 = "cd ".$ICUPrevious."/bin && ".$ICUPathPrevious."/collperf2/$WindowsPla
tform/Release/collperf2.exe"; |
| 54 $p2 = "cd ".$ICULatest."/bin && ".$ICUPathLatest."/collperf2/$WindowsPlatfor
m/Release/collperf2.exe"; |
| 55 } else { |
| 56 $p1 = "LD_LIBRARY_PATH=".$ICUPrevious."/lib:".$ICUPrevious."/tools/ctestfw "
.$ICUPrevious."/test/perf/collperf2/collperf2"; |
| 57 $p2 = "LD_LIBRARY_PATH=".$ICULatest."/lib:".$ICULatest."/tools/ctestfw ".$IC
ULatest."/test/perf/collperf2/collperf2"; |
| 58 } |
| 59 |
| 60 my $tests = { |
| 61 "ucol_strcoll/len", ["$p1,TestStrcoll", "$p2,TestStrcoll"], |
| 62 "ucol_strcoll/null", ["$p1,TestStrcollNull", "$p2,TestStrcollNull
"], |
| 63 "ucol_strcoll/len/similar", ["$p1,TestStrcollSimilar", "$p2,TestStrcollS
imilar"], |
| 64 |
| 65 "ucol_strcollUTF8/len", ["$p1,TestStrcollUTF8", "$p2,TestStrcollUTF8
"], |
| 66 "ucol_strcollUTF8/null", ["$p1,TestStrcollUTF8Null", "$p2,TestStrcoll
UTF8Null"], |
| 67 "ucol_strcollUTF8/len/similar", ["$p1,TestStrcollUTF8Similar", "$p2,TestStrc
ollUTF8Similar"], |
| 68 |
| 69 "ucol_getSortKey/len", ["$p1,TestGetSortKey", "$p2,TestGetSortKey"]
, |
| 70 "ucol_getSortKey/null", ["$p1,TestGetSortKeyNull", "$p2,TestGetSortK
eyNull"], |
| 71 |
| 72 "ucol_nextSortKeyPart/4_all", ["$p1,TestNextSortKeyPart_4All", "$p2,TestNe
xtSortKeyPart_4All"], |
| 73 "ucol_nextSortKeyPart/4x4", ["$p1,TestNextSortKeyPart_4x4", "$p2,TestNex
tSortKeyPart_4x4"], |
| 74 "ucol_nextSortKeyPart/4x8", ["$p1,TestNextSortKeyPart_4x8", "$p2,TestNex
tSortKeyPart_4x8"], |
| 75 "ucol_nextSortKeyPart/32_all", ["$p1,TestNextSortKeyPart_32All", "$p2,TestN
extSortKeyPart_32All"], |
| 76 "ucol_nextSortKeyPart/32x2", ["$p1,TestNextSortKeyPart_32x2", "$p2,TestNe
xtSortKeyPart_32x2"], |
| 77 |
| 78 "ucol_nextSortKeyPart/UTF8/4_all", ["$p1,TestNextSortKeyPartUTF8_4All", "$p
2,TestNextSortKeyPartUTF8_4All"], |
| 79 "ucol_nextSortKeyPart/UTF8/4x4", ["$p1,TestNextSortKeyPartUTF8_4x4", "$p2
,TestNextSortKeyPartUTF8_4x4"], |
| 80 "ucol_nextSortKeyPart/UTF8/4x8", ["$p1,TestNextSortKeyPartUTF8_4x8", "$p2
,TestNextSortKeyPartUTF8_4x8"], |
| 81 "ucol_nextSortKeyPart/UTF8/32_all", ["$p1,TestNextSortKeyPartUTF8_32All", "$
p2,TestNextSortKeyPartUTF8_32All"], |
| 82 "ucol_nextSortKeyPart/UTF8/32x2", ["$p1,TestNextSortKeyPartUTF8_32x2", "$p
2,TestNextSortKeyPartUTF8_32x2"], |
| 83 |
| 84 "Collator::compare/len", ["$p1,TestCppCompare", "$p2,TestCppC
ompare"], |
| 85 "Collator::compare/null", ["$p1,TestCppCompareNull", "$p2,Test
CppCompareNull"], |
| 86 "Collator::compare/len/similar", ["$p1,TestCppCompareSimilar", "$p2,T
estCppCompareSimilar"], |
| 87 |
| 88 "Collator::compareUTF8/len", ["$p1,TestCppCompareUTF8", "$p2,Test
CppCompareUTF8"], |
| 89 "Collator::compareUTF8/null", ["$p1,TestCppCompareUTF8Null", "$p2,
TestCppCompareUTF8Null"], |
| 90 "Collator::compareUTF8/len/similar", ["$p1,TestCppCompareUTF8Similar", "$
p2,TestCppCompareUTF8Similar"], |
| 91 |
| 92 "Collator::getCollationKey/len", ["$p1,TestCppGetCollationKey", "$p2,
TestCppGetCollationKey"], |
| 93 "Collator::getCollationKey/null", ["$p1,TestCppGetCollationKeyNull", "
$p2,TestCppGetCollationKeyNull"], |
| 94 |
| 95 "sort UnicodeString*[]: compare()", ["$p1,TestUniStrSort", "$p2,Test
UniStrSort"], |
| 96 "sort StringPiece[]: compareUTF8()", ["$p1,TestStringPieceSortCpp", "
$p2,TestStringPieceSortCpp"], |
| 97 "sort StringPiece[]: ucol_strcollUTF8()", ["$p1,TestStringPieceSortC", "$p
2,TestStringPieceSortC"], |
| 98 |
| 99 "binary search UnicodeString*[]: compare()", ["$p1,TestUniStrBinSearc
h", "$p2,TestUniStrBinSearch"], |
| 100 "binary search StringPiece[]: compareUTF8()", ["$p1,TestStringPieceBin
SearchCpp", "$p2,TestStringPieceBinSearchCpp"], |
| 101 "binary search StringPiece[]: ucol_strcollUTF8()", ["$p1,TestStringPieceBin
SearchC", "$p2,TestStringPieceBinSearchC"], |
| 102 }; |
| 103 |
| 104 my $dataFiles = { |
| 105 "en_US", |
| 106 [ |
| 107 "TestNames_Latin.txt" |
| 108 ], |
| 109 |
| 110 "de-u-co-phonebk-ks-level2", |
| 111 [ |
| 112 "TestRandomWordsUDHR_de.txt" |
| 113 ], |
| 114 |
| 115 "fr-u-ks-level1-kc", |
| 116 [ |
| 117 "TestRandomWordsUDHR_fr.txt" |
| 118 ], |
| 119 |
| 120 "es", |
| 121 [ |
| 122 "TestRandomWordsUDHR_es.txt" |
| 123 ], |
| 124 |
| 125 "pl", |
| 126 [ |
| 127 "TestRandomWordsUDHR_pl.txt" |
| 128 ], |
| 129 |
| 130 "tr", |
| 131 [ |
| 132 "TestRandomWordsUDHR_tr.txt" |
| 133 ], |
| 134 |
| 135 "el", |
| 136 [ |
| 137 "TestRandomWordsUDHR_el.txt" |
| 138 ], |
| 139 |
| 140 "ru", |
| 141 [ |
| 142 "TestNames_Russian.txt" |
| 143 ], |
| 144 |
| 145 "ru-u-ks-level4-ka-shifted", |
| 146 [ |
| 147 "TestRandomWordsUDHR_ru.txt" |
| 148 ], |
| 149 |
| 150 "ja", |
| 151 [ |
| 152 "TestNames_Japanese.txt", |
| 153 "TestNames_Japanese_h.txt", |
| 154 "TestNames_Japanese_k.txt" |
| 155 ], |
| 156 |
| 157 "ja-u-ks-identic", |
| 158 [ |
| 159 "TestNames_Latin.txt", |
| 160 "TestNames_Japanese.txt" |
| 161 ], |
| 162 |
| 163 "ko", |
| 164 [ |
| 165 "TestNames_Korean.txt" |
| 166 ], |
| 167 |
| 168 "zh_Hans", |
| 169 [ |
| 170 "TestNames_Simplified_Chinese.txt" |
| 171 ], |
| 172 |
| 173 "zh_Hans-u-co-pinyin", |
| 174 [ |
| 175 "TestNames_Latin.txt", |
| 176 "TestNames_Simplified_Chinese.txt" |
| 177 ], |
| 178 |
| 179 "zh_Hant", |
| 180 [ |
| 181 "TestNames_Chinese.txt", |
| 182 ], |
| 183 |
| 184 "th-u-kk-ka-shifted", |
| 185 [ |
| 186 "TestNames_Latin.txt", |
| 187 "TestNames_Thai.txt", |
| 188 "TestRandomWordsUDHR_th.txt" |
| 189 ], |
| 190 |
| 191 "ar", |
| 192 [ |
| 193 "TestRandomWordsUDHR_ar.txt" |
| 194 ], |
| 195 |
| 196 "he", |
| 197 [ |
| 198 "TestRandomWordsUDHR_he.txt" |
| 199 ] |
| 200 }; |
| 201 |
| 202 runTests($options, $tests, $dataFiles); |
OLD | NEW |