Index: source/test/perf/collperf2/CollPerf2_r.pl |
diff --git a/source/test/perf/collperf2/CollPerf2_r.pl b/source/test/perf/collperf2/CollPerf2_r.pl |
new file mode 100755 |
index 0000000000000000000000000000000000000000..c87e3034e5c092f4bc282a282534afcd6843ff1e |
--- /dev/null |
+++ b/source/test/perf/collperf2/CollPerf2_r.pl |
@@ -0,0 +1,202 @@ |
+#!/usr/bin/perl |
+# ******************************************************************** |
+# COPYRIGHT: |
+# Copyright (c) 2013-2014, International Business Machines Corporation and |
+# others. All Rights Reserved. |
+# ******************************************************************** |
+ |
+# Variables need to be set in ../perldriver/Common.pl for where ICU is on your machine. |
+# Copy Common.pl.template to Common.pl and modify it. |
+# |
+# Sample Common.pl "Settings by user" for a Linux out-of-source build: |
+# |
+# $ICULatestVersion = "collv2"; |
+# $ICUPreviousVersion = "52"; |
+# |
+# $PerformanceDataPath = "/home/mscherer/svn.icudata/trunk/src/test/perf"; |
+# |
+# $ICULatest = "/home/mscherer/svn.icu/collv2/bld"; |
+# $ICUPrevious = "/home/mscherer/svn.icu/trunk/bld"; |
+# |
+# The first time around, you also need to |
+# source/test/perf/collperf2$ mkdir ../results |
+# Then invoke |
+# source/test/perf/collperf2$ ./CollPerf2_r.pl |
+# |
+# Sample debug invocation: |
+# ~/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/trunk/src/test/perf/collation/TestNames_Latin.txt TestStringPieceSort |
+ |
+#use strict; |
+ |
+use lib '../perldriver'; |
+ |
+require "../perldriver/Common.pl"; |
+ |
+use PerfFramework; |
+ |
+my $options = { |
+ "title"=>"Collation Performance Regression: ICU (".$ICUPreviousVersion." and ".$ICULatestVersion.")", |
+ "headers"=>"ICU".$ICUPreviousVersion." ICU".$ICULatestVersion, |
+ "operationIs"=>"Collator", |
+ "passes"=>"1", |
+ "time"=>"2", |
+ #"outputType"=>"HTML", |
+ "dataDir"=>$CollationDataPath, |
+ "outputDir"=>"../results" |
+}; |
+ |
+# programs |
+# tests will be done for all the programs. Results will be stored and connected |
+my $p1, $p2; |
+ |
+if ($OnWindows) { |
+ $p1 = "cd ".$ICUPrevious."/bin && ".$ICUPathPrevious."/collperf2/$WindowsPlatform/Release/collperf2.exe"; |
+ $p2 = "cd ".$ICULatest."/bin && ".$ICUPathLatest."/collperf2/$WindowsPlatform/Release/collperf2.exe"; |
+} else { |
+ $p1 = "LD_LIBRARY_PATH=".$ICUPrevious."/lib:".$ICUPrevious."/tools/ctestfw ".$ICUPrevious."/test/perf/collperf2/collperf2"; |
+ $p2 = "LD_LIBRARY_PATH=".$ICULatest."/lib:".$ICULatest."/tools/ctestfw ".$ICULatest."/test/perf/collperf2/collperf2"; |
+} |
+ |
+my $tests = { |
+ "ucol_strcoll/len", ["$p1,TestStrcoll", "$p2,TestStrcoll"], |
+ "ucol_strcoll/null", ["$p1,TestStrcollNull", "$p2,TestStrcollNull"], |
+ "ucol_strcoll/len/similar", ["$p1,TestStrcollSimilar", "$p2,TestStrcollSimilar"], |
+ |
+ "ucol_strcollUTF8/len", ["$p1,TestStrcollUTF8", "$p2,TestStrcollUTF8"], |
+ "ucol_strcollUTF8/null", ["$p1,TestStrcollUTF8Null", "$p2,TestStrcollUTF8Null"], |
+ "ucol_strcollUTF8/len/similar", ["$p1,TestStrcollUTF8Similar", "$p2,TestStrcollUTF8Similar"], |
+ |
+ "ucol_getSortKey/len", ["$p1,TestGetSortKey", "$p2,TestGetSortKey"], |
+ "ucol_getSortKey/null", ["$p1,TestGetSortKeyNull", "$p2,TestGetSortKeyNull"], |
+ |
+ "ucol_nextSortKeyPart/4_all", ["$p1,TestNextSortKeyPart_4All", "$p2,TestNextSortKeyPart_4All"], |
+ "ucol_nextSortKeyPart/4x4", ["$p1,TestNextSortKeyPart_4x4", "$p2,TestNextSortKeyPart_4x4"], |
+ "ucol_nextSortKeyPart/4x8", ["$p1,TestNextSortKeyPart_4x8", "$p2,TestNextSortKeyPart_4x8"], |
+ "ucol_nextSortKeyPart/32_all", ["$p1,TestNextSortKeyPart_32All", "$p2,TestNextSortKeyPart_32All"], |
+ "ucol_nextSortKeyPart/32x2", ["$p1,TestNextSortKeyPart_32x2", "$p2,TestNextSortKeyPart_32x2"], |
+ |
+ "ucol_nextSortKeyPart/UTF8/4_all", ["$p1,TestNextSortKeyPartUTF8_4All", "$p2,TestNextSortKeyPartUTF8_4All"], |
+ "ucol_nextSortKeyPart/UTF8/4x4", ["$p1,TestNextSortKeyPartUTF8_4x4", "$p2,TestNextSortKeyPartUTF8_4x4"], |
+ "ucol_nextSortKeyPart/UTF8/4x8", ["$p1,TestNextSortKeyPartUTF8_4x8", "$p2,TestNextSortKeyPartUTF8_4x8"], |
+ "ucol_nextSortKeyPart/UTF8/32_all", ["$p1,TestNextSortKeyPartUTF8_32All", "$p2,TestNextSortKeyPartUTF8_32All"], |
+ "ucol_nextSortKeyPart/UTF8/32x2", ["$p1,TestNextSortKeyPartUTF8_32x2", "$p2,TestNextSortKeyPartUTF8_32x2"], |
+ |
+ "Collator::compare/len", ["$p1,TestCppCompare", "$p2,TestCppCompare"], |
+ "Collator::compare/null", ["$p1,TestCppCompareNull", "$p2,TestCppCompareNull"], |
+ "Collator::compare/len/similar", ["$p1,TestCppCompareSimilar", "$p2,TestCppCompareSimilar"], |
+ |
+ "Collator::compareUTF8/len", ["$p1,TestCppCompareUTF8", "$p2,TestCppCompareUTF8"], |
+ "Collator::compareUTF8/null", ["$p1,TestCppCompareUTF8Null", "$p2,TestCppCompareUTF8Null"], |
+ "Collator::compareUTF8/len/similar", ["$p1,TestCppCompareUTF8Similar", "$p2,TestCppCompareUTF8Similar"], |
+ |
+ "Collator::getCollationKey/len", ["$p1,TestCppGetCollationKey", "$p2,TestCppGetCollationKey"], |
+ "Collator::getCollationKey/null", ["$p1,TestCppGetCollationKeyNull", "$p2,TestCppGetCollationKeyNull"], |
+ |
+ "sort UnicodeString*[]: compare()", ["$p1,TestUniStrSort", "$p2,TestUniStrSort"], |
+ "sort StringPiece[]: compareUTF8()", ["$p1,TestStringPieceSortCpp", "$p2,TestStringPieceSortCpp"], |
+ "sort StringPiece[]: ucol_strcollUTF8()", ["$p1,TestStringPieceSortC", "$p2,TestStringPieceSortC"], |
+ |
+ "binary search UnicodeString*[]: compare()", ["$p1,TestUniStrBinSearch", "$p2,TestUniStrBinSearch"], |
+ "binary search StringPiece[]: compareUTF8()", ["$p1,TestStringPieceBinSearchCpp", "$p2,TestStringPieceBinSearchCpp"], |
+ "binary search StringPiece[]: ucol_strcollUTF8()", ["$p1,TestStringPieceBinSearchC", "$p2,TestStringPieceBinSearchC"], |
+}; |
+ |
+my $dataFiles = { |
+ "en_US", |
+ [ |
+ "TestNames_Latin.txt" |
+ ], |
+ |
+ "de-u-co-phonebk-ks-level2", |
+ [ |
+ "TestRandomWordsUDHR_de.txt" |
+ ], |
+ |
+ "fr-u-ks-level1-kc", |
+ [ |
+ "TestRandomWordsUDHR_fr.txt" |
+ ], |
+ |
+ "es", |
+ [ |
+ "TestRandomWordsUDHR_es.txt" |
+ ], |
+ |
+ "pl", |
+ [ |
+ "TestRandomWordsUDHR_pl.txt" |
+ ], |
+ |
+ "tr", |
+ [ |
+ "TestRandomWordsUDHR_tr.txt" |
+ ], |
+ |
+ "el", |
+ [ |
+ "TestRandomWordsUDHR_el.txt" |
+ ], |
+ |
+ "ru", |
+ [ |
+ "TestNames_Russian.txt" |
+ ], |
+ |
+ "ru-u-ks-level4-ka-shifted", |
+ [ |
+ "TestRandomWordsUDHR_ru.txt" |
+ ], |
+ |
+ "ja", |
+ [ |
+ "TestNames_Japanese.txt", |
+ "TestNames_Japanese_h.txt", |
+ "TestNames_Japanese_k.txt" |
+ ], |
+ |
+ "ja-u-ks-identic", |
+ [ |
+ "TestNames_Latin.txt", |
+ "TestNames_Japanese.txt" |
+ ], |
+ |
+ "ko", |
+ [ |
+ "TestNames_Korean.txt" |
+ ], |
+ |
+ "zh_Hans", |
+ [ |
+ "TestNames_Simplified_Chinese.txt" |
+ ], |
+ |
+ "zh_Hans-u-co-pinyin", |
+ [ |
+ "TestNames_Latin.txt", |
+ "TestNames_Simplified_Chinese.txt" |
+ ], |
+ |
+ "zh_Hant", |
+ [ |
+ "TestNames_Chinese.txt", |
+ ], |
+ |
+ "th-u-kk-ka-shifted", |
+ [ |
+ "TestNames_Latin.txt", |
+ "TestNames_Thai.txt", |
+ "TestRandomWordsUDHR_th.txt" |
+ ], |
+ |
+ "ar", |
+ [ |
+ "TestRandomWordsUDHR_ar.txt" |
+ ], |
+ |
+ "he", |
+ [ |
+ "TestRandomWordsUDHR_he.txt" |
+ ] |
+}; |
+ |
+runTests($options, $tests, $dataFiles); |