Add a microbenchmark for Hindi (complex-text) line-layout
authoreric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 27 Oct 2012 01:37:12 +0000 (01:37 +0000)
committereric@webkit.org <eric@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 27 Oct 2012 01:37:12 +0000 (01:37 +0000)
https://bugs.webkit.org/show_bug.cgi?id=100024

Reviewed by Ryosuke Niwa.

I wrote this to make sure that we don't regress line-breaking performance
for the complex-text codepath. This test has shown me that TOT is
already 5% slower than Safari 6.0.1 here. :(

* Layout/hindi-line-layout.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@132717 268f45cc-cd09-0410-ab3c-d52691b4dbfc

PerformanceTests/ChangeLog
PerformanceTests/Layout/hindi-line-layout.html [new file with mode: 0644]

index 076c361..01ee07a 100644 (file)
@@ -1,3 +1,16 @@
+2012-10-26  Eric Seidel  <eric@webkit.org>
+
+        Add a microbenchmark for Hindi (complex-text) line-layout
+        https://bugs.webkit.org/show_bug.cgi?id=100024
+
+        Reviewed by Ryosuke Niwa.
+
+        I wrote this to make sure that we don't regress line-breaking performance
+        for the complex-text codepath. This test has shown me that TOT is
+        already 5% slower than Safari 6.0.1 here. :(
+
+        * Layout/hindi-line-layout.html: Added.
+
 2012-10-26  Zoltan Horvath  <zoltan@webkit.org>
 
         Turn PageLoad tests into simple performancetests, commit #6 
diff --git a/PerformanceTests/Layout/hindi-line-layout.html b/PerformanceTests/Layout/hindi-line-layout.html
new file mode 100644 (file)
index 0000000..f642885
--- /dev/null
@@ -0,0 +1,41 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <title>Hindi Line breaking performance test</title>
+    <script src="../resources/runner.js"></script>
+</head>
+<body>
+    <!-- Example hindi from http://people.w3.org/rishida/scripts/samples/hindi.php. Hindi was chosen, as its ligatures should cause us to use the complex-text path. -->
+    <pre id="log"></pre>
+    <div id="target" style="width: 300px; display: none;">
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+        <p lang="hi" xml:lang="hi" title="This is Hindi"><span id="e8" class="ex">हालाँकि</span> सूर के जीवन के बारे में कई जनश्रुतियाँ <span id="e9" class="ex">प्रचलित</span> <span id="e3" class="ex">हैं</span>, पर इन में कितनी सच्चाई है यह कहना कठिन है। कहा जाता है उनका जन्म सन् <span id="e10" class="ex">१४७८</span> में <span id="e4" class="ex">दिल्ली</span> के पास एक ग़रीब ब्राह्मीण परिवार <span id="e1" class="ex">में</span> हुआ। जनश्रुति के अनुसार सूरदास जन्म से ही अंधे थे। आजकल थी <span id="e2" class="ex">अंधे</span> आदमी अक्सर 'सूरदास' कहलाते हैं। कई लोगों ने उन्हें गुरु के <span id="e6" class="ex">रूप</span> में अपनाया और उनकी <span id="e7" class="ex">पूजा</span> करना शुरु कर दिया । </p>
+    </div>
+    <script>
+        var target = document.getElementById("target");
+        var style = target.style;
+
+        function test() {
+            style.display = "block";
+            style.width = "280px";
+            target.offsetLeft;
+            style.width = "300px";
+            target.offsetLeft;
+            style.width = "290px";
+            target.offsetLeft;
+            style.display = "none";
+        }
+
+        PerfTestRunner.measureRunsPerSecond({ run: test });
+    </script>
+</body>
+</html>