You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
3.5 KiB
86 lines
3.5 KiB
#!/usr/bin/perl
|
|
# ********************************************************************
|
|
# * COPYRIGHT:
|
|
# * © 2016 and later: Unicode, Inc. and others.
|
|
# * License & terms of use: http://www.unicode.org/copyright.html
|
|
# * Copyright (c) 2002-2007, International Business Machines
|
|
# * Corporation and others. All Rights Reserved.
|
|
# ********************************************************************
|
|
|
|
use strict;
|
|
|
|
#Assume we are running outside of the ICU4J source
|
|
use lib './icu4jsrc_3_4/src/com/ibm/icu/dev/test/perf/perldriver';
|
|
|
|
use PerfFramework4j;
|
|
|
|
#---------------------------------------------------------------------
|
|
# Test class
|
|
my $TESTCLASS = 'com.ibm.icu.dev.test.perf.NormalizerPerformanceTest';
|
|
|
|
my $options = {
|
|
"title"=>"Normalization performance regression (ICU4J 3.2 and 3.4)",
|
|
"headers"=>"ICU4J32 ICU4J34",
|
|
"operationIs"=>"code point",
|
|
"timePerOperationIs"=>"Time per code point",
|
|
"passes"=>"10",
|
|
"time"=>"5",
|
|
#"outputType"=>"HTML",
|
|
"dataDir"=>"c:\\src\\perf\\data",
|
|
"outputDir"=>"results_ICU4J"
|
|
};
|
|
|
|
# programs
|
|
|
|
my $jvm1 = "java -cp ./icu4jsrc_3_2/icu4j32.jar;./icu4jsrc_3_2/perf32.jar $TESTCLASS -l -e UTF-8";
|
|
my $jvm2 = "java -cp ./icu4jsrc_3_4/icu4j34.jar;./icu4jsrc_3_4/perf34.jar $TESTCLASS -l -e UTF-8";
|
|
|
|
my $dataFiles = {
|
|
"",
|
|
[
|
|
"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",
|
|
# "th18057.txt",
|
|
# "thesis.txt",
|
|
# "vfear11a.txt",
|
|
]
|
|
};
|
|
|
|
|
|
my $tests = {
|
|
"NFC_NFD_Text", ["$jvm1 TestICU_NFC_NFD_Text" , "$jvm2 TestICU_NFC_NFD_Text" ],
|
|
"NFC_NFC_Text", ["$jvm1 TestICU_NFC_NFC_Text" , "$jvm2 TestICU_NFC_NFC_Text" ],
|
|
"NFC_Orig_Text", ["$jvm1 TestICU_NFC_Orig_Text" , "$jvm2 TestICU_NFC_Orig_Text"],
|
|
"NFD_NFD_Text", ["$jvm1 TestICU_NFD_NFD_Text" , "$jvm2 TestICU_NFD_NFD_Text" ],
|
|
"NFD_NFC_Text", ["$jvm1 TestICU_NFD_NFC_Text" , "$jvm2 TestICU_NFD_NFC_Text" ],
|
|
"NFD_Orig_Text", ["$jvm1 TestICU_NFD_Orig_Text" , "$jvm2 TestICU_NFD_Orig_Text"],
|
|
##
|
|
"QC_NFC_NFD_Text", ["$jvm1 TestQC_NFC_NFD_Text" , "$jvm2 TestQC_NFC_NFD_Text" ],
|
|
"QC_NFC_NFC_Text", ["$jvm1 TestQC_NFC_NFC_Text" , "$jvm2 TestQC_NFC_NFC_Text" ],
|
|
"QC_NFC_Orig_Text", ["$jvm1 TestQC_NFC_Orig_Text" , "$jvm2 TestQC_NFC_Orig_Text"],
|
|
"QC_NFD_NFD_Text", ["$jvm1 TestQC_NFD_NFD_Text" , "$jvm2 TestQC_NFD_NFD_Text" ],
|
|
"QC_NFD_NFC_Text", ["$jvm1 TestQC_NFD_NFC_Text" , "$jvm2 TestQC_NFD_NFC_Text" ],
|
|
"QC_NFD_Orig_Text", ["$jvm1 TestQC_NFD_Orig_Text" , "$jvm2 TestQC_NFD_Orig_Text"],
|
|
##
|
|
"IsNormalized_NFC_NFD_Text", ["$jvm1 TestIsNormalized_NFC_NFD_Text" , "$jvm2 TestIsNormalized_NFC_NFD_Text" ],
|
|
"IsNormalized_NFC_NFC_Text", ["$jvm1 TestIsNormalized_NFC_NFC_Text" , "$jvm2 TestIsNormalized_NFC_NFC_Text" ],
|
|
"IsNormalized_NFC_Orig_Text", ["$jvm1 TestIsNormalized_NFC_Orig_Text" , "$jvm2 TestIsNormalized_NFC_Orig_Text"],
|
|
"IsNormalized_NFD_NFD_Text", ["$jvm1 TestIsNormalized_NFD_NFD_Text" , "$jvm2 TestIsNormalized_NFD_NFD_Text" ],
|
|
"IsNormalized_NFD_NFC_Text", ["$jvm1 TestIsNormalized_NFD_NFC_Text" , "$jvm2 TestIsNormalized_NFD_NFC_Text" ],
|
|
"IsNormalized_NFD_Orig_Text", ["$jvm1 TestIsNormalized_NFD_Orig_Text" , "$jvm2 TestIsNormalized_NFD_Orig_Text"]
|
|
};
|
|
|
|
|
|
runTests($options, $tests, $dataFiles);
|
|
|
|
|