Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Unified Diff: source/test/perf/collationperf/CollPerf.pl

Issue 2435373002: Delete source/test (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « source/test/perf/charperf/charperf.vcxproj.filters ('k') | source/test/perf/collationperf/Makefile.in » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: source/test/perf/collationperf/CollPerf.pl
diff --git a/source/test/perf/collationperf/CollPerf.pl b/source/test/perf/collationperf/CollPerf.pl
deleted file mode 100755
index 26d236b0d939546d89a6b2ef6fd45a8b3ad49b85..0000000000000000000000000000000000000000
--- a/source/test/perf/collationperf/CollPerf.pl
+++ /dev/null
@@ -1,277 +0,0 @@
-#!/usr/bin/perl
-# ********************************************************************
-# * COPYRIGHT:
-# * Copyright (c) 2002-2013, International Business Machines Corporation and
-# * others. All Rights Reserved.
-# ********************************************************************
-
-require "../perldriver/Common.pl";
-
-use lib '../perldriver';
-
-my $p;
-if ($OnWindows) {
- $p = "cd ".$ICULatest."/bin && ".$ICUPathLatest . "/collationperf/$WindowsPlatform/Release/collationperf.exe";
-}
-else {
- $p = "LD_LIBRARY_PATH=".$ICULatest."/source/lib:".$ICULatest."/source/tools/ctestfw ".$ICUPathLatest . "/collationperf/collperf";
-}
-
-my @locale = (
- "en_US",
- "da_DK",
- "de_DE",
- "fr_FR",
- "ja_JP",
- "ja_JP",
- "ja_JP",
- "ja_JP",
- "zh_CN",
- "zh_CN",
- "zh_CN",
- "zh_TW",
- "zh_TW",
- "ko_KR",
- "ko_KR",
- "ru_RU",
- "ru_RU",
- "th_TH",
- "th_TH"
-);
-
-my $filePath = $CollationDataPath . "/";
-my $filePrefix = "TestNames_";
-my @data = (
- $filePrefix."Latin.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Japanese_h.txt",
- $filePrefix."Japanese_k.txt",
- $filePrefix."Asian.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Chinese.txt",
- $filePrefix."Simplified_Chinese.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Chinese.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Korean.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Russian.txt",
- $filePrefix."Latin.txt",
- $filePrefix."Thai.txt"
-);
-
-my @resultPER;
-my @resultFIN;
-
-for ( $n = 0 ; $n < @data ; $n++ ) {
- my $resultICU;
- my $resultNIX;
- $resultICU = @locale[$n].",".@data[$n].",";
- $resultNIX = @locale[$n].",".@data[$n].",";
- @resultFIN[$n] = @locale[$n].",".@data[$n].",";
-
- #quicksort
- my @icu = `$p -locale @locale[$n] -loop 1000 -file $filePath@data[$n] -qsort`;
- my @nix = `$p -locale @locale[$n] -unix -loop 1000 -file $filePath@data[$n] -qsort`;
-
- my @icua = split( ' = ', $icu[2] );
- my @icub = split( ' ', $icua[1] );
- my @nixa = split( ' = ', $nix[2] );
- my @nixb = split( ' ', $nixa[1] );
-
- $resultICU = $resultICU.$icub[0].",";
- $resultNIX = $resultNIX.$nixb[0].",";
-
- #keygen time
- @icu = `$p -locale @locale[$n] -loop 1000 -file $filePath@data[$n] -keygen`;
- @nix = `$p -locale @locale[$n] -unix -loop 1000 -file $filePath@data[$n] -keygen`;
-
- @icua = split( ' = ', $icu[2] );
- @icub = split( ' ', $icua[1] );
- @nixa = split( ' = ', $nix[2] );
- @nixb = split( ' ', $nixa[1] );
-
- $resultICU = $resultICU.$icub[0].",";
- $resultNIX = $resultNIX.$nixb[0].",";
-
- #keygen len
- @icua = split( ' = ', $icu[3] );
- @nixa = split( ' = ', $nix[3] );
-
- chomp( @icua[1] );
- chomp( @nixa[1] );
-
- $resultICU = $resultICU.$icua[1].",";
- $resultNIX = $resultNIX.$nixa[1].",";
-
- my @resultSplitICU;
- my @resultSplitNIX;
-
- #percent
- for ( $i = 0 ; $i < 3 ; $i++ ) {
- my $percent = 0;
- @resultSplitICU = split( ',', $resultICU );
- @resultSplitNIX = split( ',', $resultNIX );
- if ( @resultSplitICU[ 2 + $i ] > 0 ) {
- $percent = substr((((
- @resultSplitNIX[ 2 + $i ] - @resultSplitICU[ 2 + $i ]) / @resultSplitICU[ 2 + $i ]) * 100),
- 0, 7);
- }
- @resultPER[$n] = @resultPER[$n].$percent."%,";
- }
-
- #store ICU result
- for ( $j = 0 ; $j < 3 ; $j++ ) {
- @resultFIN[$n] = @resultFIN[$n].@resultSplitICU[ 2 + $j ].",";
- }
-
- #store Unix result
- for ( $j = 0 ; $j < 3 ; $j++ ) {
- @resultFIN[$n] = @resultFIN[$n].@resultSplitNIX[ 2 + $j ].",";
- }
-
- #store Percent result
- @resultFIN[$n] = @resultFIN[$n].@resultPER[$n];
-}
-
-# Print the results in a HTML page
-printOutput();
-
-exit(0);
-
-# This subroutine creates the web page and prints out the results in a table
-sub printOutput {
- my $title = "Collation: ICU " . $ICULatestVersion . " vs GLIBC";
- my $html = localtime;
- $html =~ s/://g; # ':' illegal
- $html =~ s/\s*\d+$//; # delete year
- $html =~ s/^\w+\s*//; # delete dow
- $html = "CollationPerformance $html.html";
- $html = "../results/" . $html;
- $html =~ s/ /_/g;
- open( HTML, ">$html" ) or die "Can't write to $html: $!";
- print HTML <<EOF;
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<title>Collation: ICU4C vs. glibc</title>
-<link rel="stylesheet" href="../icu.css" type="text/css" />
-</head>
-<body>
-<!--#include virtual="../ssi/header.html" -->
-EOF
-
- print HTML "<h2>Collation: ICU4C ".$ICULatestVersion." vs. GLIBC</h2>\n";
-
- print HTML <<EOF;
-<p>The performance test takes a locale and creates a RuleBasedCollator with
-default options. A large list of names is used as data in each test, where the
-names vary according to language. Each Collation operation over the whole list
-is repeated 1000 times. The percentage values in the final column are the most
-useful. They measure differences, where positive is better for ICU4C, and
-negative is better for the compared implementation.</p>
-<h3>Key</h3>
-<table border="1" cellspacing="0" cellpadding="4">
-<tr>
-<th align="left">Operation</th>
-<th align="left">Units</th>
-<th align="left">Description</th>
-</tr>
-<tr>
-<td>strcoll</td>
-<td>nanosecs</td>
-<td>Timing for string collation, an incremental compare of strings.</td>
-</tr>
-<tr>
-<td>keygen</td>
-<td>nanosecs</td>
-<td>Timing for generation of sort keys, used to 'precompile' information so
-that subsequent operations can use binary comparison.</td>
-</tr>
-<tr>
-<td>keylen</td>
-<td>bytes/char</td>
-<td>The average length of the generated sort keys, in bytes per character
-(Unicode/ISO 10646 code point). Generally this is the important field for sort
-key performance, since it directly impacts the time necessary for binary
-comparison, and the overhead of memory usage and retrieval time for sort
-keys.</td>
-</tr>
-</table>
-EOF
- printData();
-
- print HTML <<EOF;
-<h3><i>Notes</i></h3>
-<ol>
-<li>As with all performance measurements, the results will vary according to
-the hardware and compiler. The strcoll operation is particularly sensitive; we
-have found that even slight changes in code alignment can produce 10%
-differences.</li>
-<li>For more information on incremental vs. sort key comparison, the importance
-of multi-level sorting, and other features of collation, see <a href=
-"http://www.unicode.org/reports/tr10/">Unicode Collation (UCA)</a>.</li>
-<li>For general information on ICU collation see <a href=
-"/userguide/Collate_Intro.html">User Guide</a>.</li>
-<li>For information on APIs, see <a href="/apiref/icu4c/ucol_8h.html">C</a>,
-<a href="/apiref/icu4c/classCollator.html">C++</a>, or <a href=
-"/apiref/icu4j/com/ibm/icu/text/Collator.html">Java</a>.</li>
-</ol>
-<!--#include virtual="../ssi/footer.html" -->
-</body>
-</html>
-
-EOF
-
- close(HTML) or die "Can't close $html: $!";
-}
-
-# This subroutine formats and prints the table.
-sub printData() {
- print HTML <<EOF;
-<h3>Data</h3>
-<table border="1" cellspacing="0" cellpadding="4">
-<tr>
-<td align="left"><b>Locale</b></td>
-<td align="left"><b>Data file</b></td>
-<td align="left"><b>strcoll</b> <i>(ICU)</i></td>
-<td align="left"><b>keygen</b> <i>(ICU)</i></td>
-<td align="left"><b>keylen</b> <i>(ICU)</i></td>
-<td align="left"><b>strcoll</b> <i>(GLIBC)</i></td>
-<td align="left"><b>keygen</b> <i>(GLIBC)</i></td>
-<td align="left"><b>keylen</b> <i>(GLIBC)</i></td>
-<td align="left"><b>strcoll</b> <i>(GLIBC-ICU)/ICU)</i></td>
-<td align="left"><b>keygen</b> <i>(GLIBC-ICU)/ICU)</i></td>
-<td align="left"><b>keylen</b> <i>(GLIBC-ICU)/ICU)</i></td>
-</tr>
-EOF
-
- for ( $n = 0 ; $n < @resultFIN ; $n++ ) {
- print HTML "<tr>";
- my @parsed = split( ',', @resultFIN[$n] );
- for ( $i = 0 ; $i < @parsed ; $i++ ) {
- my $value = @parsed[$i];
- print HTML "<td align=\"center\">";
-
- if ( $value =~ m/^[-]/ ) {
- print HTML "<font color=\"red\">$value</font>";
- }
- else {
- print HTML "$value";
- }
-
- print HTML "</td>";
-
- }
- print HTML "</tr>\n";
- }
-
- print HTML<<EOF;
-</table>
-EOF
-}
« no previous file with comments | « source/test/perf/charperf/charperf.vcxproj.filters ('k') | source/test/perf/collationperf/Makefile.in » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698