Re: -warmup
Ahmet Göksu <[email protected]>
| Newsgroups | gmane.comp.fonts.freetype.devel |
|---|---|
| Message-ID | <4b460218-1d64-468a-8eba-4d0e5b09bf17@Spark> |
Hi, I have added the total table that you suggested. I think Get_Char_Index is not the problem, the results varies all the time. Here are the three results that i had in the same minute (one has different flags). Should I proceed to detect outliers? Since we do not get the same error rate consistently, I think we will not find the target we expected by outliers. Best, Goksu goksu.in On 7 Aug 2023 15:57 +0300, Werner LEMBERG <[email protected]>, wrote: > > > > What exactly means 'Baseline (ms)'? Is the shown number the time > > > for one loop? For all loops together? Please clarify and mention > > > this on the HTML page. > > > > Clarified that the times are milliseconds for the cumulative time > > for all iterations. > > Thanks. The sentence is not easily comprehensible. Perhaps change it > to something like > > ``` > Cumulative time for all iterations. Smaller values means better. > ``` > > BTW, in column 'N' I see stuff like '68160 | 65880'. What does this > mean? Please add an explanatory comment to the HTML page. > > Another thing: Please mention on the HTML page the completion time for > each test, and the total execution time of all tests together. > > > > Looking at the 'Load_Advances (Unscaled)' row, I think that 100% > > > difference between 0.001 and 0.002 doesn't make any sense. How do > > > you compute the percentage? Is this based on the cumulative time > > > of all loops? If so, and you really get such small numbers, there > > > must be some fine-tuning for high-speed tests (for example, > > > increasing N for this particular test by a factor of 10, say) to > > > get meaningful timing values. > > > > it was cumulative time in milliseconds but converted it microseconds > > as how it was and it seem got better. > > We are getting nearer, again :-) > > What worries me, though, is that we still have such enormous > differences. For `Get_Char_Index` I think it's lack of precision. > Please try to fix this – if the ratio > > cumulative_time / N > > is smaller than a given threshold, N must be increased a lot. In > other words, for `Roboto_subset.ttf`, N should be set to, say, 10*N. > > For the other large differences I think we need some statistical > analysis to get better results – simple cumulation is not good enough. > In particular, outliers should be removed (at least this is my > hypothesis). Maybe you can look up the internet to find some simple > code to handle them. > > An idea to identify outliers could be to split the cumulation time > into, say, 100 smaller intervals. You can the discard the too-large > values and compute the mean of the remaining data. My reasoning is > that other CPU activity happens in parallel, but only for short > amounts of time. > > Have you actually done a statistical analysis of, say, 'Load_Advances > (Normal)' for `Arial_subset.ttf`? For example, printing all timings > of the datapoints as histograms for runs A and B? *Are* there > outliers? Maybe there is another statistical mean value that gives > more meaningful results. > > > Werner
benchmark_res0.html
(text/html, 17.3 KB)
<html>
<head>
<style>
table {
}
th, td {
padding: 3px;
text-align: center;
}
th {
background-color: #ccc;
color: black;
}
.warning{
color: red;
}
.col1 {
background-color: #eee;
}
.highlight {
background-color: #0a0;
}
</style>
</head>
<body>
<h1>Freetype Benchmark Results</h1>
<h2 class="warning">Warning: Baseline and Benchmark have the same commit ID!</h2>
<h2>Info</h2>
<table border="1">
<tr><th>Info</th><th>Baseline</th><th>Benchmark</th></tr>
<tr><td class="col1">Parameters</td><td>-c 1000 -w 50</td><td>-c 1000 -w 50</td></tr>
<tr><td class="col1">Commit ID</td><td><a href="https://gitlab.freedesktop.org/freetype/freetype/-/commit/4bcd9711da943a865230ee7ab15dc31640c87245">4bcd9711</a></td><td><a href="https://gitlab.freedesktop.org/freetype/freetype/-/commit/4bcd9711da943a865230ee7ab15dc31640c87245">4bcd9711</a></td></tr>
<tr><td class="col1">Commit Date</td><td>2023-08-07 15:11:28 +0300</td><td>2023-08-07 15:11:28 +0300</td></tr>
<tr><td class="col1">Branch</td><td>GSoC-2023-Ahmet</td><td>GSoC-2023-Ahmet</td></tr>
</table><br/><p>* Cumulative time for all iterations. Smaller values are better.</p><p>** N count in (x | y) format is for showing baseline and benchmark N counts seperately when they differs.</p><h2>Total Results</h2>
<table border="1">
<tr><th>Test</th><th>N</th><th>Baseline (µs)</th> <th>Benchmark (µs)</th><th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>500000</td> <td class="highlight">3482359</td> <td class="">3519568</td><td>-1.1</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>500000</td> <td class="highlight">2922257</td> <td class="">3129046</td><td>-7.1</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>500000</td> <td class="highlight">13671</td> <td class="">15627</td><td>-14.3</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>500000</td> <td class="highlight">12459</td> <td class="">15309</td><td>-22.9</td></tr>
<tr><td class="col1">Render</td><td>500000</td> <td class="highlight">1827123</td> <td class="">1878593</td><td>-2.8</td></tr>
<tr><td class="col1">Get_Glyph</td><td>500000</td> <td class="">768199</td> <td class="highlight">754315</td><td>1.8</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>470000</td> <td class="">13396</td> <td class="highlight">12799</td><td>4.5</td></tr>
<tr><td class="col1">Iterate CMap</td><td>5000</td> <td class="">9860</td> <td class="highlight">9378</td><td>4.9</td></tr>
<tr><td class="col1">New_Face</td><td>5000</td> <td class="">248768</td> <td class="highlight">240591</td><td>3.3</td></tr>
<tr><td class="col1">Embolden</td><td>500000</td> <td class="highlight">1107786</td> <td class="">1109611</td><td>-0.2</td></tr>
<tr><td class="col1">Stroke</td><td>294205 | 289365</td> <td class="">7804180</td> <td class="highlight">7776247</td><td>0.4</td></tr>
<tr><td class="col1">Get_BBox</td><td>500000</td> <td class="highlight">491174</td> <td class="">496942</td><td>-1.2</td></tr>
<tr><td class="col1">Get_CBox</td><td>500000</td> <td class="highlight">355009</td> <td class="">355822</td><td>-0.2</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>500000</td> <td class="">571172</td> <td class="highlight">547008</td><td>4.2</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">5774205 | 5769365</td> <td class="col1">19627413</td><td class="col1">19860856</td> <td class="col1">-1.2</td></tr>
</table><br/>
<h3>Results for Roboto_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Roboto_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Roboto_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>120000</td> <td class="lowlight">611913</td><td class="highlight">576710</td><td>5.8</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>120000</td> <td class="highlight">498485</td><td class="lowlight">538696</td><td>-8.1</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>120000</td> <td class="highlight">2964</td><td class="lowlight">4976</td><td>-67.9</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>120000</td> <td class="highlight">2790</td><td class="lowlight">5476</td><td>-96.3</td></tr>
<tr><td class="col1">Render</td><td>120000</td> <td class="highlight">419155</td><td class="lowlight">437405</td><td>-4.4</td></tr>
<tr><td class="col1">Get_Glyph</td><td>120000</td> <td class="lowlight">173820</td><td class="highlight">166131</td><td>4.4</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="lowlight">2701</td><td class="highlight">2641</td><td>2.2</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="lowlight">2084</td><td class="highlight">1861</td><td>10.7</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="highlight">42066</td><td class="lowlight">42190</td><td>-0.3</td></tr>
<tr><td class="col1">Embolden</td><td>120000</td> <td class="highlight">220170</td><td class="lowlight">222545</td><td>-1.1</td></tr>
<tr><td class="col1">Stroke</td><td>62880 | 61080</td> <td class="lowlight">1631852</td><td class="highlight">1624032</td><td>0.5</td></tr>
<tr><td class="col1">Get_BBox</td><td>120000</td> <td class="lowlight">108119</td><td class="highlight">107892</td><td>0.2</td></tr>
<tr><td class="col1">Get_CBox</td><td>120000</td> <td class="highlight">81597</td><td class="lowlight">83621</td><td>-2.5</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>120000</td> <td class="highlight">104217</td><td class="lowlight">107909</td><td>-3.5</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2715960</td> <td class="col1">3901933</td><td class="col1">3922085</td><td class="col1">0.5</td></tr>
</table><br/>
<h3>Results for Arial_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Arial_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Arial_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="lowlight">853309</td><td class="highlight">836516</td><td>2.0</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">680709</td><td class="lowlight">732802</td><td>-7.7</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="lowlight">3067</td><td class="highlight">2448</td><td>20.2</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="lowlight">2527</td><td class="highlight">2256</td><td>10.7</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="lowlight">357791</td><td class="highlight">344429</td><td>3.7</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="highlight">143432</td><td class="lowlight">147740</td><td>-3.0</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="highlight">2713</td><td class="lowlight">2881</td><td>-6.2</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="highlight">1826</td><td class="lowlight">1829</td><td>-0.2</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="highlight">47776</td><td class="lowlight">50312</td><td>-5.3</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="highlight">199248</td><td class="lowlight">213090</td><td>-6.9</td></tr>
<tr><td class="col1">Stroke</td><td>57665 | 56430</td> <td class="lowlight">1485411</td><td class="highlight">1481296</td><td>0.3</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="lowlight">95626</td><td class="highlight">94663</td><td>1.0</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="highlight">68720</td><td class="lowlight">69159</td><td>-0.6</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="highlight">103873</td><td class="lowlight">105626</td><td>-1.7</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2206095</td> <td class="col1">4046028</td><td class="col1">4085047</td><td class="col1">1.0</td></tr>
</table><br/>
<h3>Results for TimesNewRoman_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/TimesNewRoman_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/TimesNewRoman_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="highlight">916144</td><td class="lowlight">926065</td><td>-1.1</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">813784</td><td class="lowlight">875632</td><td>-7.6</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="highlight">2417</td><td class="lowlight">2424</td><td>-0.3</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="lowlight">2269</td><td class="highlight">2258</td><td>0.5</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="highlight">378067</td><td class="lowlight">383493</td><td>-1.4</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="lowlight">158690</td><td class="highlight">147819</td><td>6.9</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="lowlight">3060</td><td class="highlight">2418</td><td>21.0</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="lowlight">2331</td><td class="highlight">1907</td><td>18.2</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="lowlight">64601</td><td class="highlight">54391</td><td>15.8</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="lowlight">284773</td><td class="highlight">265059</td><td>6.9</td></tr>
<tr><td class="col1">Stroke</td><td>44365 | 44460</td> <td class="highlight">1544248</td><td class="lowlight">1545269</td><td>-0.1</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="highlight">109597</td><td class="lowlight">115606</td><td>-5.5</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="highlight">70540</td><td class="lowlight">71610</td><td>-1.5</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="highlight">130336</td><td class="lowlight">134454</td><td>-3.2</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2180825</td> <td class="col1">4480857</td><td class="col1">4528405</td><td class="col1">1.1</td></tr>
</table><br/>
<h3>Results for Tahoma_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Tahoma_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Tahoma_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="highlight">568933</td><td class="lowlight">628873</td><td>-10.5</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">481014</td><td class="lowlight">513665</td><td>-6.8</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="highlight">2477</td><td class="lowlight">2870</td><td>-15.9</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="highlight">2273</td><td class="lowlight">2423</td><td>-6.6</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="highlight">330628</td><td class="lowlight">358159</td><td>-8.3</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="highlight">143448</td><td class="lowlight">146595</td><td>-2.2</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="lowlight">2458</td><td class="highlight">2426</td><td>1.3</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="highlight">1818</td><td class="lowlight">1909</td><td>-5.0</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="lowlight">49076</td><td class="highlight">46468</td><td>5.3</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="highlight">206672</td><td class="lowlight">209651</td><td>-1.4</td></tr>
<tr><td class="col1">Stroke</td><td>62700 | 61845</td> <td class="lowlight">1560479</td><td class="highlight">1547480</td><td>0.8</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="highlight">89719</td><td class="lowlight">89857</td><td>-0.2</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="highlight">65364</td><td class="lowlight">65460</td><td>-0.1</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="lowlight">102598</td><td class="highlight">98787</td><td>3.7</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2216545</td> <td class="col1">3606957</td><td class="col1">3714623</td><td class="col1">3.0</td></tr>
</table><br/>
<h3>Results for Verdana_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Verdana_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Verdana_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="highlight">532060</td><td class="lowlight">551404</td><td>-3.6</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">448265</td><td class="lowlight">468251</td><td>-4.5</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="highlight">2746</td><td class="lowlight">2909</td><td>-5.9</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="highlight">2600</td><td class="lowlight">2896</td><td>-11.4</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="highlight">341482</td><td class="lowlight">355107</td><td>-4.0</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="lowlight">148809</td><td class="highlight">146030</td><td>1.9</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="lowlight">2464</td><td class="highlight">2433</td><td>1.3</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="highlight">1801</td><td class="lowlight">1872</td><td>-3.9</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="highlight">45249</td><td class="lowlight">47230</td><td>-4.4</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="highlight">196923</td><td class="lowlight">199266</td><td>-1.2</td></tr>
<tr><td class="col1">Stroke</td><td>66595 | 65550</td> <td class="lowlight">1582190</td><td class="highlight">1578170</td><td>0.3</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="highlight">88113</td><td class="lowlight">88924</td><td>-0.9</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="lowlight">68788</td><td class="highlight">65972</td><td>4.1</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="lowlight">130148</td><td class="highlight">100232</td><td>23.0</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2224145</td> <td class="col1">3591638</td><td class="col1">3610696</td><td class="col1">0.5</td></tr>
</table><br/>
<center>Freetype Benchmark</center>
</body>
</html>
benchmark_res2.html
(text/html, 17.3 KB)
<html>
<head>
<style>
table {
}
th, td {
padding: 3px;
text-align: center;
}
th {
background-color: #ccc;
color: black;
}
.warning{
color: red;
}
.col1 {
background-color: #eee;
}
.highlight {
background-color: #0a0;
}
</style>
</head>
<body>
<h1>Freetype Benchmark Results</h1>
<h2 class="warning">Warning: Baseline and Benchmark have the same commit ID!</h2>
<h2>Info</h2>
<table border="1">
<tr><th>Info</th><th>Baseline</th><th>Benchmark</th></tr>
<tr><td class="col1">Parameters</td><td>-c 550 -w 50</td><td>-c 550 -w 50</td></tr>
<tr><td class="col1">Commit ID</td><td><a href="https://gitlab.freedesktop.org/freetype/freetype/-/commit/4bcd9711da943a865230ee7ab15dc31640c87245">4bcd9711</a></td><td><a href="https://gitlab.freedesktop.org/freetype/freetype/-/commit/4bcd9711da943a865230ee7ab15dc31640c87245">4bcd9711</a></td></tr>
<tr><td class="col1">Commit Date</td><td>2023-08-07 15:11:28 +0300</td><td>2023-08-07 15:11:28 +0300</td></tr>
<tr><td class="col1">Branch</td><td>GSoC-2023-Ahmet</td><td>GSoC-2023-Ahmet</td></tr>
</table><br/><p>* Cumulative time for all iterations. Smaller values are better.</p><p>** N count in (x | y) format is for showing baseline and benchmark N counts seperately when they differs.</p><h2>Total Results</h2>
<table border="1">
<tr><th>Test</th><th>N</th><th>Baseline (µs)</th> <th>Benchmark (µs)</th><th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>275000</td> <td class="highlight">1940945</td> <td class="">1960259</td><td>-1.0</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>275000</td> <td class="highlight">1693643</td> <td class="">1757029</td><td>-3.7</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>275000</td> <td class="">6966</td> <td class="highlight">6847</td><td>1.7</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>275000</td> <td class="">6382</td> <td class="highlight">6322</td><td>0.9</td></tr>
<tr><td class="col1">Render</td><td>275000</td> <td class="highlight">968631</td> <td class="">1047055</td><td>-8.1</td></tr>
<tr><td class="col1">Get_Glyph</td><td>275000</td> <td class="highlight">410428</td> <td class="">445338</td><td>-8.5</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>258500</td> <td class="highlight">6847</td> <td class="">7183</td><td>-4.9</td></tr>
<tr><td class="col1">Iterate CMap</td><td>2750</td> <td class="">5289</td> <td class="highlight">5164</td><td>2.4</td></tr>
<tr><td class="col1">New_Face</td><td>2750</td> <td class="">137845</td> <td class="highlight">137268</td><td>0.4</td></tr>
<tr><td class="col1">Embolden</td><td>275000</td> <td class="">584074</td> <td class="highlight">581110</td><td>0.5</td></tr>
<tr><td class="col1">Stroke</td><td>262730 | 262890</td> <td class="highlight">7008914</td> <td class="">7043463</td><td>-0.5</td></tr>
<tr><td class="col1">Get_BBox</td><td>275000</td> <td class="highlight">260539</td> <td class="">272939</td><td>-4.8</td></tr>
<tr><td class="col1">Get_CBox</td><td>275000</td> <td class="highlight">188954</td> <td class="">210858</td><td>-11.6</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>275000</td> <td class="highlight">297956</td> <td class="">304196</td><td>-2.1</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">3276730 | 3276890</td> <td class="col1">13517413</td><td class="col1">13785031</td> <td class="col1">-2.0</td></tr>
</table><br/>
<h3>Results for Roboto_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Roboto_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Roboto_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>66000</td> <td class="lowlight">313889</td><td class="highlight">299486</td><td>4.6</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>66000</td> <td class="highlight">287800</td><td class="lowlight">296824</td><td>-3.1</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>66000</td> <td class="highlight">1556</td><td class="lowlight">1615</td><td>-3.8</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>66000</td> <td class="highlight">1463</td><td class="lowlight">1486</td><td>-1.6</td></tr>
<tr><td class="col1">Render</td><td>66000</td> <td class="highlight">223554</td><td class="lowlight">243002</td><td>-8.7</td></tr>
<tr><td class="col1">Get_Glyph</td><td>66000</td> <td class="highlight">92555</td><td class="lowlight">118479</td><td>-28.0</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>51700</td> <td class="highlight">1368</td><td class="lowlight">1536</td><td>-12.3</td></tr>
<tr><td class="col1">Iterate CMap</td><td>550</td> <td class="highlight">979</td><td class="lowlight">1078</td><td>-10.1</td></tr>
<tr><td class="col1">New_Face</td><td>550</td> <td class="highlight">22781</td><td class="lowlight">25196</td><td>-10.6</td></tr>
<tr><td class="col1">Embolden</td><td>66000</td> <td class="lowlight">117791</td><td class="highlight">116494</td><td>1.1</td></tr>
<tr><td class="col1">Stroke</td><td>62280 | 61680</td> <td class="lowlight">1628313</td><td class="highlight">1620486</td><td>0.5</td></tr>
<tr><td class="col1">Get_BBox</td><td>66000</td> <td class="highlight">55787</td><td class="lowlight">60158</td><td>-7.8</td></tr>
<tr><td class="col1">Get_CBox</td><td>66000</td> <td class="highlight">42881</td><td class="lowlight">56697</td><td>-32.2</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>66000</td> <td class="highlight">64676</td><td class="lowlight">67592</td><td>-4.5</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">1549560</td> <td class="col1">2855393</td><td class="col1">2910129</td><td class="col1">1.9</td></tr>
</table><br/>
<h3>Results for Arial_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Arial_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Arial_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>52250</td> <td class="highlight">504744</td><td class="lowlight">534834</td><td>-6.0</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>52250</td> <td class="highlight">351531</td><td class="lowlight">416852</td><td>-18.6</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>52250</td> <td class="highlight">1267</td><td class="lowlight">1300</td><td>-2.6</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>52250</td> <td class="highlight">1197</td><td class="lowlight">1203</td><td>-0.5</td></tr>
<tr><td class="col1">Render</td><td>52250</td> <td class="highlight">183606</td><td class="lowlight">192968</td><td>-5.1</td></tr>
<tr><td class="col1">Get_Glyph</td><td>52250</td> <td class="lowlight">79899</td><td class="highlight">79017</td><td>1.1</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>51700</td> <td class="highlight">1653</td><td class="lowlight">1664</td><td>-0.7</td></tr>
<tr><td class="col1">Iterate CMap</td><td>550</td> <td class="highlight">1041</td><td class="lowlight">1041</td><td>0.0</td></tr>
<tr><td class="col1">New_Face</td><td>550</td> <td class="lowlight">37637</td><td class="highlight">29785</td><td>20.9</td></tr>
<tr><td class="col1">Embolden</td><td>52250</td> <td class="lowlight">108637</td><td class="highlight">104053</td><td>4.2</td></tr>
<tr><td class="col1">Stroke</td><td>52250</td> <td class="highlight">1340544</td><td class="lowlight">1359642</td><td>-1.4</td></tr>
<tr><td class="col1">Get_BBox</td><td>52250</td> <td class="lowlight">49978</td><td class="highlight">49588</td><td>0.8</td></tr>
<tr><td class="col1">Get_CBox</td><td>52250</td> <td class="highlight">36291</td><td class="lowlight">36601</td><td>-0.9</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>52250</td> <td class="lowlight">56463</td><td class="highlight">55180</td><td>2.3</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">1255100</td> <td class="col1">2754488</td><td class="col1">2863728</td><td class="col1">4.0</td></tr>
</table><br/>
<h3>Results for TimesNewRoman_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/TimesNewRoman_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/TimesNewRoman_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>52250</td> <td class="highlight">528080</td><td class="lowlight">557600</td><td>-5.6</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>52250</td> <td class="lowlight">496244</td><td class="highlight">459130</td><td>7.5</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>52250</td> <td class="lowlight">1523</td><td class="highlight">1358</td><td>10.8</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>52250</td> <td class="lowlight">1313</td><td class="highlight">1230</td><td>6.3</td></tr>
<tr><td class="col1">Render</td><td>52250</td> <td class="highlight">208907</td><td class="lowlight">217202</td><td>-4.0</td></tr>
<tr><td class="col1">Get_Glyph</td><td>52250</td> <td class="lowlight">79182</td><td class="highlight">77682</td><td>1.9</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>51700</td> <td class="lowlight">1273</td><td class="highlight">1272</td><td>0.1</td></tr>
<tr><td class="col1">Iterate CMap</td><td>550</td> <td class="lowlight">981</td><td class="highlight">964</td><td>1.7</td></tr>
<tr><td class="col1">New_Face</td><td>550</td> <td class="lowlight">29084</td><td class="highlight">26761</td><td>8.0</td></tr>
<tr><td class="col1">Embolden</td><td>52250</td> <td class="highlight">139582</td><td class="lowlight">139743</td><td>-0.1</td></tr>
<tr><td class="col1">Stroke</td><td>43700 | 44460</td> <td class="highlight">1539545</td><td class="lowlight">1540181</td><td>-0.0</td></tr>
<tr><td class="col1">Get_BBox</td><td>52250</td> <td class="highlight">57729</td><td class="lowlight">67301</td><td>-16.6</td></tr>
<tr><td class="col1">Get_CBox</td><td>52250</td> <td class="highlight">37043</td><td class="lowlight">46742</td><td>-26.2</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>52250</td> <td class="highlight">67646</td><td class="lowlight">71096</td><td>-5.1</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">1238760</td> <td class="col1">3188132</td><td class="col1">3208262</td><td class="col1">0.6</td></tr>
</table><br/>
<h3>Results for Tahoma_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Tahoma_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Tahoma_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>52250</td> <td class="lowlight">318427</td><td class="highlight">307673</td><td>3.4</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>52250</td> <td class="highlight">270798</td><td class="lowlight">277004</td><td>-2.3</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>52250</td> <td class="highlight">1274</td><td class="lowlight">1277</td><td>-0.2</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>52250</td> <td class="lowlight">1216</td><td class="highlight">1187</td><td>2.4</td></tr>
<tr><td class="col1">Render</td><td>52250</td> <td class="highlight">175500</td><td class="lowlight">197229</td><td>-12.4</td></tr>
<tr><td class="col1">Get_Glyph</td><td>52250</td> <td class="highlight">80601</td><td class="lowlight">84321</td><td>-4.6</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>51700</td> <td class="highlight">1269</td><td class="lowlight">1435</td><td>-13.1</td></tr>
<tr><td class="col1">Iterate CMap</td><td>550</td> <td class="lowlight">1303</td><td class="highlight">1040</td><td>20.2</td></tr>
<tr><td class="col1">New_Face</td><td>550</td> <td class="highlight">24356</td><td class="lowlight">27740</td><td>-13.9</td></tr>
<tr><td class="col1">Embolden</td><td>52250</td> <td class="highlight">111778</td><td class="lowlight">113705</td><td>-1.7</td></tr>
<tr><td class="col1">Stroke</td><td>52250</td> <td class="highlight">1250829</td><td class="lowlight">1295714</td><td>-3.6</td></tr>
<tr><td class="col1">Get_BBox</td><td>52250</td> <td class="highlight">47728</td><td class="lowlight">49956</td><td>-4.7</td></tr>
<tr><td class="col1">Get_CBox</td><td>52250</td> <td class="highlight">35455</td><td class="lowlight">36577</td><td>-3.2</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>52250</td> <td class="highlight">52419</td><td class="lowlight">57650</td><td>-10.0</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">1255100</td> <td class="col1">2372953</td><td class="col1">2452508</td><td class="col1">3.4</td></tr>
</table><br/>
<h3>Results for Verdana_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Verdana_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Verdana_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>52250</td> <td class="lowlight">275805</td><td class="highlight">260666</td><td>5.5</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>52250</td> <td class="highlight">287270</td><td class="lowlight">307219</td><td>-6.9</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>52250</td> <td class="lowlight">1346</td><td class="highlight">1297</td><td>3.6</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>52250</td> <td class="highlight">1193</td><td class="lowlight">1216</td><td>-1.9</td></tr>
<tr><td class="col1">Render</td><td>52250</td> <td class="highlight">177064</td><td class="lowlight">196654</td><td>-11.1</td></tr>
<tr><td class="col1">Get_Glyph</td><td>52250</td> <td class="highlight">78191</td><td class="lowlight">85839</td><td>-9.8</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>51700</td> <td class="lowlight">1284</td><td class="highlight">1276</td><td>0.6</td></tr>
<tr><td class="col1">Iterate CMap</td><td>550</td> <td class="highlight">985</td><td class="lowlight">1041</td><td>-5.7</td></tr>
<tr><td class="col1">New_Face</td><td>550</td> <td class="highlight">23987</td><td class="lowlight">27786</td><td>-15.8</td></tr>
<tr><td class="col1">Embolden</td><td>52250</td> <td class="highlight">106286</td><td class="lowlight">107115</td><td>-0.8</td></tr>
<tr><td class="col1">Stroke</td><td>52250</td> <td class="lowlight">1249683</td><td class="highlight">1227440</td><td>1.8</td></tr>
<tr><td class="col1">Get_BBox</td><td>52250</td> <td class="lowlight">49317</td><td class="highlight">45936</td><td>6.9</td></tr>
<tr><td class="col1">Get_CBox</td><td>52250</td> <td class="lowlight">37284</td><td class="highlight">34241</td><td>8.2</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>52250</td> <td class="lowlight">56752</td><td class="highlight">52678</td><td>7.2</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">1255100</td> <td class="col1">2346447</td><td class="col1">2350404</td><td class="col1">0.2</td></tr>
</table><br/>
<center>Freetype Benchmark</center>
</body>
</html>
benchmark_res1.html
(text/html, 17.3 KB)
<html>
<head>
<style>
table {
}
th, td {
padding: 3px;
text-align: center;
}
th {
background-color: #ccc;
color: black;
}
.warning{
color: red;
}
.col1 {
background-color: #eee;
}
.highlight {
background-color: #0a0;
}
</style>
</head>
<body>
<h1>Freetype Benchmark Results</h1>
<h2 class="warning">Warning: Baseline and Benchmark have the same commit ID!</h2>
<h2>Info</h2>
<table border="1">
<tr><th>Info</th><th>Baseline</th><th>Benchmark</th></tr>
<tr><td class="col1">Parameters</td><td>-c 1000 -w 50</td><td>-c 1000 -w 50</td></tr>
<tr><td class="col1">Commit ID</td><td><a href="https://gitlab.freedesktop.org/freetype/freetype/-/commit/4bcd9711da943a865230ee7ab15dc31640c87245">4bcd9711</a></td><td><a href="https://gitlab.freedesktop.org/freetype/freetype/-/commit/4bcd9711da943a865230ee7ab15dc31640c87245">4bcd9711</a></td></tr>
<tr><td class="col1">Commit Date</td><td>2023-08-07 15:11:28 +0300</td><td>2023-08-07 15:11:28 +0300</td></tr>
<tr><td class="col1">Branch</td><td>GSoC-2023-Ahmet</td><td>GSoC-2023-Ahmet</td></tr>
</table><br/><p>* Cumulative time for all iterations. Smaller values are better.</p><p>** N count in (x | y) format is for showing baseline and benchmark N counts seperately when they differs.</p><h2>Total Results</h2>
<table border="1">
<tr><th>Test</th><th>N</th><th>Baseline (µs)</th> <th>Benchmark (µs)</th><th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>500000</td> <td class="">3574511</td> <td class="highlight">3384752</td><td>5.3</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>500000</td> <td class="highlight">3001429</td> <td class="">3115941</td><td>-3.8</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>500000</td> <td class="highlight">12871</td> <td class="">13708</td><td>-6.5</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>500000</td> <td class="highlight">11982</td> <td class="">12662</td><td>-5.7</td></tr>
<tr><td class="col1">Render</td><td>500000</td> <td class="highlight">1829127</td> <td class="">1895816</td><td>-3.6</td></tr>
<tr><td class="col1">Get_Glyph</td><td>500000</td> <td class="">755948</td> <td class="highlight">747654</td><td>1.1</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>470000</td> <td class="highlight">12153</td> <td class="">12350</td><td>-1.6</td></tr>
<tr><td class="col1">Iterate CMap</td><td>5000</td> <td class="">9339</td> <td class="highlight">9145</td><td>2.1</td></tr>
<tr><td class="col1">New_Face</td><td>5000</td> <td class="highlight">233723</td> <td class="">235328</td><td>-0.7</td></tr>
<tr><td class="col1">Embolden</td><td>500000</td> <td class="highlight">1094561</td> <td class="">1096360</td><td>-0.2</td></tr>
<tr><td class="col1">Stroke</td><td>292330 | 294035</td> <td class="highlight">7764649</td> <td class="">7786202</td><td>-0.3</td></tr>
<tr><td class="col1">Get_BBox</td><td>500000</td> <td class="highlight">493151</td> <td class="">493549</td><td>-0.1</td></tr>
<tr><td class="col1">Get_CBox</td><td>500000</td> <td class="">365376</td> <td class="highlight">356550</td><td>2.4</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>500000</td> <td class="">566729</td> <td class="highlight">542119</td><td>4.3</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">5772330 | 5774035</td> <td class="col1">19725549</td><td class="col1">19702136</td> <td class="col1">0.1</td></tr>
</table><br/>
<h3>Results for Roboto_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Roboto_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Roboto_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>120000</td> <td class="lowlight">587328</td><td class="highlight">573038</td><td>2.4</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>120000</td> <td class="highlight">494478</td><td class="lowlight">515420</td><td>-4.2</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>120000</td> <td class="highlight">3113</td><td class="lowlight">3278</td><td>-5.3</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>120000</td> <td class="highlight">2793</td><td class="lowlight">3210</td><td>-14.9</td></tr>
<tr><td class="col1">Render</td><td>120000</td> <td class="highlight">439328</td><td class="lowlight">452423</td><td>-3.0</td></tr>
<tr><td class="col1">Get_Glyph</td><td>120000</td> <td class="highlight">168057</td><td class="lowlight">168854</td><td>-0.5</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="highlight">2412</td><td class="lowlight">2629</td><td>-9.0</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="highlight">1821</td><td class="lowlight">1862</td><td>-2.3</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="highlight">41231</td><td class="lowlight">41691</td><td>-1.1</td></tr>
<tr><td class="col1">Embolden</td><td>120000</td> <td class="highlight">221434</td><td class="lowlight">221765</td><td>-0.1</td></tr>
<tr><td class="col1">Stroke</td><td>63000 | 62520</td> <td class="lowlight">1629833</td><td class="highlight">1625380</td><td>0.3</td></tr>
<tr><td class="col1">Get_BBox</td><td>120000</td> <td class="highlight">106660</td><td class="lowlight">107050</td><td>-0.4</td></tr>
<tr><td class="col1">Get_CBox</td><td>120000</td> <td class="lowlight">89839</td><td class="highlight">82410</td><td>8.3</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>120000</td> <td class="lowlight">127740</td><td class="highlight">104323</td><td>18.3</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2717520</td> <td class="col1">3916067</td><td class="col1">3903333</td><td class="col1">-0.3</td></tr>
</table><br/>
<h3>Results for Arial_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Arial_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Arial_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="lowlight">863660</td><td class="highlight">812012</td><td>6.0</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">703405</td><td class="lowlight">741526</td><td>-5.4</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="highlight">2449</td><td class="lowlight">2520</td><td>-2.9</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="highlight">2292</td><td class="lowlight">2388</td><td>-4.2</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="lowlight">349330</td><td class="highlight">346835</td><td>0.7</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="lowlight">151198</td><td class="highlight">145018</td><td>4.1</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="highlight">2421</td><td class="lowlight">2424</td><td>-0.1</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="lowlight">1884</td><td class="highlight">1813</td><td>3.8</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="lowlight">51398</td><td class="highlight">49008</td><td>4.6</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="lowlight">200796</td><td class="highlight">197297</td><td>1.7</td></tr>
<tr><td class="col1">Stroke</td><td>56620 | 57665</td> <td class="highlight">1480913</td><td class="lowlight">1485980</td><td>-0.3</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="lowlight">95990</td><td class="highlight">94058</td><td>2.0</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="highlight">69810</td><td class="lowlight">69850</td><td>-0.1</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="lowlight">110718</td><td class="highlight">105175</td><td>5.0</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2206285</td> <td class="col1">4086264</td><td class="col1">4055904</td><td class="col1">-0.7</td></tr>
</table><br/>
<h3>Results for TimesNewRoman_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/TimesNewRoman_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/TimesNewRoman_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="lowlight">952051</td><td class="highlight">917150</td><td>3.7</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">827119</td><td class="lowlight">873521</td><td>-5.6</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="lowlight">2454</td><td class="highlight">2425</td><td>1.2</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="lowlight">2281</td><td class="highlight">2274</td><td>0.3</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="highlight">374973</td><td class="lowlight">380720</td><td>-1.5</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="highlight">145054</td><td class="lowlight">146668</td><td>-1.1</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="highlight">2422</td><td class="lowlight">2440</td><td>-0.7</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="highlight">1851</td><td class="lowlight">1881</td><td>-1.6</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="highlight">50961</td><td class="lowlight">51140</td><td>-0.4</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="highlight">264007</td><td class="lowlight">272286</td><td>-3.1</td></tr>
<tr><td class="col1">Stroke</td><td>43985 | 44175</td> <td class="highlight">1538028</td><td class="lowlight">1543158</td><td>-0.3</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="highlight">110972</td><td class="lowlight">111756</td><td>-0.7</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="lowlight">72576</td><td class="highlight">70614</td><td>2.7</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="lowlight">131944</td><td class="highlight">130398</td><td>1.2</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2180160</td> <td class="col1">4476693</td><td class="col1">4506431</td><td class="col1">0.7</td></tr>
</table><br/>
<h3>Results for Tahoma_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Tahoma_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Tahoma_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="lowlight">602243</td><td class="highlight">544790</td><td>9.5</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">493275</td><td class="lowlight">498016</td><td>-1.0</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="highlight">2419</td><td class="lowlight">2456</td><td>-1.5</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="highlight">2345</td><td class="lowlight">2460</td><td>-4.9</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="highlight">320830</td><td class="lowlight">361343</td><td>-12.6</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="lowlight">144044</td><td class="highlight">143326</td><td>0.5</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="highlight">2413</td><td class="lowlight">2414</td><td>-0.0</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="lowlight">1955</td><td class="highlight">1835</td><td>6.1</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="lowlight">45833</td><td class="highlight">45764</td><td>0.2</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="highlight">206447</td><td class="lowlight">206567</td><td>-0.1</td></tr>
<tr><td class="col1">Stroke</td><td>63270 | 64505</td> <td class="highlight">1557771</td><td class="lowlight">1567078</td><td>-0.6</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="highlight">89870</td><td class="lowlight">90831</td><td>-1.1</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="highlight">65222</td><td class="lowlight">67532</td><td>-3.5</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="highlight">99549</td><td class="lowlight">101768</td><td>-2.2</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2219775</td> <td class="col1">3634216</td><td class="col1">3636180</td><td class="col1">0.1</td></tr>
</table><br/>
<h3>Results for Verdana_subset.ttf</h2>
<table border="1">
<tr><th>Test</th><th>N</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/baseline/Verdana_subset.txt">Baseline</a> (µs)</th> <th>* <a href="/Users/gks/Desktop/freetype/objs/benchmark/Verdana_subset.txt">Benchmark</a> (µs)</th> <th>Difference (%)</th></tr>
<tr><td class="col1">Load</td><td>95000</td> <td class="lowlight">569229</td><td class="highlight">537762</td><td>5.5</td></tr>
<tr><td class="col1">Load_Advances (Normal)</td><td>95000</td> <td class="highlight">483152</td><td class="lowlight">487458</td><td>-0.9</td></tr>
<tr><td class="col1">Load_Advances (Fast)</td><td>95000</td> <td class="highlight">2436</td><td class="lowlight">3029</td><td>-24.3</td></tr>
<tr><td class="col1">Load_Advances (Unscaled)</td><td>95000</td> <td class="highlight">2271</td><td class="lowlight">2330</td><td>-2.6</td></tr>
<tr><td class="col1">Render</td><td>95000</td> <td class="highlight">344666</td><td class="lowlight">354495</td><td>-2.9</td></tr>
<tr><td class="col1">Get_Glyph</td><td>95000</td> <td class="lowlight">147595</td><td class="highlight">143788</td><td>2.6</td></tr>
<tr><td class="col1">Get_Char_Index</td><td>94000</td> <td class="lowlight">2485</td><td class="highlight">2443</td><td>1.7</td></tr>
<tr><td class="col1">Iterate CMap</td><td>1000</td> <td class="lowlight">1828</td><td class="highlight">1754</td><td>4.0</td></tr>
<tr><td class="col1">New_Face</td><td>1000</td> <td class="highlight">44300</td><td class="lowlight">47725</td><td>-7.7</td></tr>
<tr><td class="col1">Embolden</td><td>95000</td> <td class="lowlight">201877</td><td class="highlight">198445</td><td>1.7</td></tr>
<tr><td class="col1">Stroke</td><td>65455 | 65170</td> <td class="highlight">1558104</td><td class="lowlight">1564606</td><td>-0.4</td></tr>
<tr><td class="col1">Get_BBox</td><td>95000</td> <td class="highlight">89659</td><td class="lowlight">89854</td><td>-0.2</td></tr>
<tr><td class="col1">Get_CBox</td><td>95000</td> <td class="lowlight">67929</td><td class="highlight">66144</td><td>2.6</td></tr>
<tr><td class="col1">New_Face & load glyph(s)</td><td>95000</td> <td class="highlight">96778</td><td class="lowlight">100455</td><td>-3.8</td></tr>
<tr><td class="col1">TOTAL</td><td class="col1">2222625</td> <td class="col1">3612309</td><td class="col1">3600288</td><td class="col1">-0.3</td></tr>
</table><br/>
<center>Freetype Benchmark</center>
</body>
</html>