1#!/usr/bin/perl
2#  ********************************************************************
3#  * COPYRIGHT:
4#  * Copyright (c) 2002-2008, International Business Machines
5#  * Corporation and others. All Rights Reserved.
6#  ********************************************************************
7
8#use strict;
9
10require "../perldriver/Common.pl";
11
12use lib '../perldriver';
13
14use PerfFramework;
15
16my $options = {
17	       "title"=>"Normalization performance regression: ICU (".$ICUPreviousVersion." and ".$ICULatestVersion.")",
18           "headers"=>"ICU".$ICUPreviousVersion." ICU".$ICULatestVersion,
19	       "operationIs"=>"code point",
20	       "timePerOperationIs"=>"Time per code point",
21	       "passes"=>"10",
22	       "time"=>"5",
23	       #"outputType"=>"HTML",
24	       "dataDir"=>$CollationDataPath,
25           "outputDir"=>"../results"
26	      };
27
28# programs
29
30my $p1; # Previous
31my $p2; # Latest
32
33if ($OnWindows) {
34	$p1 = $ICUPathPrevious."/normperf/$WindowsPlatform/Release/normperf.exe";
35	$p2 = $ICUPathLatest."/normperf/$WindowsPlatform/Release/normperf.exe";
36} else {
37	$p1 = $ICUPathPrevious."/normperf/normperf";
38    $p2 = $ICUPathLatest."/normperf/normperf";
39}
40
41my $dataFiles = {
42		 "",
43		 [
44		  "TestNames_Asian.txt",
45		  "TestNames_Chinese.txt",
46		  "TestNames_Japanese.txt",
47		  "TestNames_Japanese_h.txt",
48		  "TestNames_Japanese_k.txt",
49		  "TestNames_Korean.txt",
50		  "TestNames_Latin.txt",
51		  "TestNames_SerbianSH.txt",
52		  "TestNames_SerbianSR.txt",
53		  "TestNames_Thai.txt",
54		  "Testnames_Russian.txt",
55		  "th18057.txt",
56		  "thesis.txt",
57		  "vfear11a.txt",
58		 ]
59		};
60
61
62my $tests = {
63	     "NFC_NFD_Text",  ["$p1 TestICU_NFC_NFD_Text"  ,  "$p2 TestICU_NFC_NFD_Text" ],
64	     "NFC_NFC_Text",  ["$p1 TestICU_NFC_NFC_Text"  ,  "$p2 TestICU_NFC_NFC_Text" ],
65	     "NFC_Orig_Text", ["$p1 TestICU_NFC_Orig_Text" ,  "$p2 TestICU_NFC_Orig_Text"],
66	     "NFD_NFD_Text",  ["$p1 TestICU_NFD_NFD_Text"  ,  "$p2 TestICU_NFD_NFD_Text" ],
67	     "NFD_NFC_Text",  ["$p1 TestICU_NFD_NFC_Text"  ,  "$p2 TestICU_NFD_NFC_Text" ],
68	     "NFD_Orig_Text", ["$p1 TestICU_NFD_Orig_Text" ,  "$p2 TestICU_NFD_Orig_Text"],
69	     ##
70	     "QC_NFC_NFD_Text",  ["$p1 TestQC_NFC_NFD_Text"  ,  "$p2 TestQC_NFC_NFD_Text" ],
71	     "QC_NFC_NFC_Text",  ["$p1 TestQC_NFC_NFC_Text"  ,  "$p2 TestQC_NFC_NFC_Text" ],
72	     "QC_NFC_Orig_Text", ["$p1 TestQC_NFC_Orig_Text" ,  "$p2 TestQC_NFC_Orig_Text"],
73	     "QC_NFD_NFD_Text",  ["$p1 TestQC_NFD_NFD_Text"  ,  "$p2 TestQC_NFD_NFD_Text" ],
74	     "QC_NFD_NFC_Text",  ["$p1 TestQC_NFD_NFC_Text"  ,  "$p2 TestQC_NFD_NFC_Text" ],
75	     "QC_NFD_Orig_Text", ["$p1 TestQC_NFD_Orig_Text" ,  "$p2 TestQC_NFD_Orig_Text"],
76	     ##
77	     "IsNormalized_NFC_NFD_Text",  ["$p1 TestIsNormalized_NFC_NFD_Text"  ,  "$p2 TestIsNormalized_NFC_NFD_Text" ],
78	     "IsNormalized_NFC_NFC_Text",  ["$p1 TestIsNormalized_NFC_NFC_Text"  ,  "$p2 TestIsNormalized_NFC_NFC_Text" ],
79	     "IsNormalized_NFC_Orig_Text", ["$p1 TestIsNormalized_NFC_Orig_Text" ,  "$p2 TestIsNormalized_NFC_Orig_Text"],
80	     "IsNormalized_NFD_NFD_Text",  ["$p1 TestIsNormalized_NFD_NFD_Text"  ,  "$p2 TestIsNormalized_NFD_NFD_Text" ],
81	     "IsNormalized_NFD_NFC_Text",  ["$p1 TestIsNormalized_NFD_NFC_Text"  ,  "$p2 TestIsNormalized_NFD_NFC_Text" ],
82	     "IsNormalized_NFD_Orig_Text", ["$p1 TestIsNormalized_NFD_Orig_Text" ,  "$p2 TestIsNormalized_NFD_Orig_Text"]
83	    };
84
85
86runTests($options, $tests, $dataFiles);
87
88
89