Hello again again,

I obviously forgot the attachments to the previous mail. Doh...

Regards, Adam.

Am 20.02.2018 um 08:58 schrieb Adam Reichold:
> Hello again,
> 
> Am 18.02.2018 um 23:23 schrieb Adam Reichold:
>>
>>
>> Am 18.02.2018 um 23:08 schrieb Albert Astals Cid:
>>> El diumenge, 18 de febrer de 2018, a les 16:55:37 CET, Adam Reichold va 
>>> escriure:
>>>> Hello,
>>>>
>>>> the attached patch replaced Poppler's internal hash table implementation
>>>> GooHash by std::unordered_map found in the C++ standard library since
>>>> C++11. This continues Poppler's slow drift towards standard library
>>>> containers and removes one of the home-grown data structures with the
>>>> main goals of reducing code size and improving the long term
>>>> maintainability of the code base.
>>>
>>> Do you have any benchmarks on "rendering" speed and code size?
>>
>> Sorry, not at hand. I will try to prepare them during the week.
> 
> I did run Splash rendering benchmarks of this branch against master with
> the result of rendering the circa 2400 documents of the TeXLive
> documentation present on my machine being:
> 
> Cumulative run time:
>         Result: 90.95 min ∓ 1.1 %
>         Reference: 91.57 min ∓ 1.2 %
>         Deviation: -0.0 %
> Cumulative memory usage:
>         Result: 37.2 MB ∓ 0.7 %
>         Reference: 37.0 MB ∓ 0.7 %
>         Deviation: +0.0 %
> 
> (Where result is this patch and the reference is master.) (The
> measurement was taken using the perftest script which I proposed here
> some time ago for which I'll attach the patch again for reproduceability.)
> 
> I'll also attach the detailed comparison, but the gist seems to be that
> if there are significant changes, the run time is reduced but the memory
> usage is increased in the majority of cases. But this does not seem to
> show up in the cumulative results.
> 
> Best regards, Adam.
> 
> P.S.: One could try to improve the memory usage by tuning the load
> factor or calling shrink_to_fit where appropriate. Would you like me to
> try to do this?
> 
> P.P.S.: One obvious area for improvement would be better
> interoperability between GooString and std::string, i.e. not converting
> them as C strings so that the length information does not need to be
> recomputed. I will try to prepare this as a separate patch on top of
> this one or should I include this here?
> 
> Best regards, Adam.
> 
>> Concerning code size, a release build of libpoppler.so goes from
>>
>>    text    data     bss     dec     hex filename
>> 2464034  288852     360 2753246  2a02de libpoppler.so.73.0.0
>>
>> for the current master to
>>
>>    text    data     bss     dec     hex filename
>> 2482129  288756     360 2771245  2a492d libpoppler.so.73.0.0
>>
>> with the patch applied, i.e. a 0.65% increase in binary size.
>>
>>
>> Please note that in my original message, I was referring only to source
>> code size, i.e.
>>
>> git diff --stat master...remove-goo-hash
>>  18 files changed, 168 insertions(+), 803 deletions(-)
>>
>>> Cheers,
>>>   Albert
>>
>> Best regards, Adam.
>>
>>>>
>>>> Best regards, Adam.
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> poppler mailing list
>>> [email protected]
>>> https://lists.freedesktop.org/mailman/listinfo/poppler
>>>
>>
>>
>>
>> _______________________________________________
>> poppler mailing list
>> [email protected]
>> https://lists.freedesktop.org/mailman/listinfo/poppler
>>
> 
> 
> 
> _______________________________________________
> poppler mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/poppler
> 
From f080d40f1dba236a2d317fc7c9d9c77b5db8654c Mon Sep 17 00:00:00 2001
From: Adam Reichold <[email protected]>
Date: Tue, 20 Feb 2018 08:41:04 +0100
Subject: [PATCH] Add simple Python script to measure and comprare rendering
 performance of Poppler builds.

---
 perftest/compare.py       |  94 +++++++++++++++++++++++++++++++
 perftest/measure.py       | 139 ++++++++++++++++++++++++++++++++++++++++++++++
 perftest/poppler-perftest |  40 +++++++++++++
 perftest/util.py          |  29 ++++++++++
 4 files changed, 302 insertions(+)
 create mode 100644 perftest/compare.py
 create mode 100644 perftest/measure.py
 create mode 100755 perftest/poppler-perftest
 create mode 100644 perftest/util.py

diff --git a/perftest/compare.py b/perftest/compare.py
new file mode 100644
index 00000000..c19f1cab
--- /dev/null
+++ b/perftest/compare.py
@@ -0,0 +1,94 @@
+import pickle
+import zlib
+
+from util import reference, reldev, maxabs
+
+def collect_stats3(stats, entry):
+    if stats is None:
+        stats = (0, 0)
+
+    sum, acc = stats
+    mean, stdev = entry
+    stats = (sum + mean, acc + abs(stdev / mean))
+
+    return stats
+
+def collect_stats2(stats, entry):
+    if stats is None:
+        stats = { 'run_time': None, 'memory_usage': None }
+
+    stats['run_time'] = collect_stats3(stats['run_time'], entry['run_time'])
+    stats['memory_usage'] = collect_stats3(stats['memory_usage'], entry['memory_usage'])
+
+    return stats
+
+def collect_stats1(stats, entry, ref_entry):
+    if stats is None:
+        stats = { 'results': None, 'ref_results': None }
+
+    stats['results'] = collect_stats2(stats['results'], entry)
+    stats['ref_results'] = collect_stats2(stats['ref_results'], ref_entry)
+
+    return stats
+
+def compare(args):
+    with open(args.results, 'rb') as file:
+        data = file.read()
+        data = zlib.decompress(data)
+        results = pickle.loads(data)
+    with open(args.reference_results, 'rb') as file:
+        data = file.read()
+        data = zlib.decompress(data)
+        ref_results = pickle.loads(data)
+
+    count = 0
+    stats = None
+
+    for document in results.keys() & ref_results.keys():
+        entries = results[document]
+        ref_entries = ref_results[document]
+
+        for page in entries.keys() & ref_entries.keys():
+            entry = entries[page]
+            ref_entry = ref_entries[page]
+
+            count += 1
+            stats = collect_stats1(stats, entry, ref_entry)
+
+            run_time_mean, run_time_stdev = entry['run_time']
+            ref_run_time_mean, ref_run_time_stdev = ref_entry['run_time']
+            run_time_reldev = reldev(run_time_mean, ref_run_time_mean)
+
+            memory_usage_mean, memory_usage_stdev = entry['memory_usage']
+            ref_memory_usage_mean, ref_memory_usage_stdev = ref_entry['memory_usage']
+            memory_usage_reldev = reldev(memory_usage_mean, ref_memory_usage_mean)
+
+            if maxabs(run_time_reldev, memory_usage_reldev) <= args.threshold:
+                continue
+
+            print('%s:' % (reference(document, page)))
+            print('\tRun time:')
+            print('\t\tResult: %.2f ∓ %.3f s' % (run_time_mean, run_time_stdev))
+            print('\t\tReference: %.2f ∓ %.3f s' % (ref_run_time_mean, ref_run_time_stdev))
+            print('\t\tDeviation: %.1f %%' % (run_time_reldev * 100.0))
+            print('\tMemory usage:')
+            print('\t\tResult: %.1f ∓ %.2f kB' % (memory_usage_mean / 1024.0, memory_usage_stdev / 1024.0))
+            print('\t\tReference: %.1f ∓ %.2f kB' % (ref_memory_usage_mean / 1024.0, ref_memory_usage_stdev / 1024.0))
+            print('\t\tDeviation: %.1f %%' % (memory_usage_reldev * 100.0))
+
+    run_time_sum, ref_run_time_sum = stats['results']['run_time'][0], stats['ref_results']['run_time'][0]
+    run_time_acc, ref_run_time_acc = stats['results']['run_time'][1] / count, stats['ref_results']['run_time'][1] / count
+    run_time_reldev = reldev(run_time_sum, ref_run_time_sum)
+
+    memory_usage_sum, ref_memory_usage_sum = stats['results']['memory_usage'][0], stats['ref_results']['memory_usage'][0]
+    memory_usage_acc, ref_memory_usage_acc = stats['results']['memory_usage'][1] / count, stats['ref_results']['memory_usage'][1] / count
+    memory_usage_reldev = reldev(memory_usage_sum, ref_memory_usage_sum)
+
+    print('Cumulative run time:')
+    print('\tResult: %.2f min ∓ %.1f %%' % (run_time_sum / 60, run_time_acc * 100))
+    print('\tReference: %.2f min ∓ %.1f %%' % (ref_run_time_sum / 60, ref_run_time_acc * 100))
+    print('\tDeviation: %+.1f %%' % (run_time_reldev))
+    print('Cumulative memory usage:')
+    print('\tResult: %.1f MB ∓ %.1f %%' % (memory_usage_sum / 1024 / 1024, memory_usage_acc * 100))
+    print('\tReference: %.1f MB ∓ %.1f %%' % (ref_memory_usage_sum / 1024 / 1024, ref_memory_usage_acc * 100))
+    print('\tDeviation: %+.1f %%' % (memory_usage_reldev))
diff --git a/perftest/measure.py b/perftest/measure.py
new file mode 100644
index 00000000..d5bc5392
--- /dev/null
+++ b/perftest/measure.py
@@ -0,0 +1,139 @@
+import multiprocessing
+import os
+import pickle
+import re
+import statistics
+import subprocess
+import sys
+import time
+import zlib
+
+from util import rewrite, reference, accuracy
+
+def check_page_count(document):
+    global utils
+
+    try:
+        output = subprocess.check_output([ os.path.join(utils, 'pdfinfo'), document ], stderr = subprocess.DEVNULL)
+
+        match = re.search(rb'Pages:\s*(\d+)', output)
+
+        if match is None:
+            return 0
+
+        return int(match.group(1))
+    except subprocess.CalledProcessError:
+        return 0
+
+def measure_command(command):
+    global warm_up_iterations, min_iterations, max_iterations, target_accuracy
+
+    for _ in range(warm_up_iterations):
+        process = subprocess.Popen(command, stdout = subprocess.DEVNULL, stderr = subprocess.DEVNULL)
+
+        status = process.wait()
+
+        if not os.WIFEXITED(status):
+            return None
+
+    run_times = []
+    memory_usages = []
+
+    for iteration in range(1, max_iterations + 1):
+        process = subprocess.Popen(command, stdout = subprocess.DEVNULL, stderr = subprocess.DEVNULL)
+
+        _, status, resources = os.wait4(process.pid, 0)
+
+        if not os.WIFEXITED(status):
+            return False
+
+        run_times.append(resources.ru_utime + resources.ru_stime)
+        memory_usages.append(resources.ru_maxrss)
+
+        if iteration >= min_iterations and max(accuracy(run_times), accuracy(memory_usages)) <= target_accuracy:
+            break
+
+    run_time = (statistics.mean(run_times), statistics.stdev(run_times))
+    memory_usage = (statistics.mean(memory_usages), statistics.stdev(memory_usages))
+
+    return (run_time, memory_usage)
+
+def measure_task(task):
+    global utils, mode
+
+    document, page = task
+
+    if mode == 'splash':
+        command = 'pdftoppm'
+    elif mode == 'cairo':
+        command = 'pdftocairo'
+    elif mode == 'text':
+        command = 'pdftotext'
+
+    command = [ os.path.join(utils, command), document, os.devnull ]
+
+    if page is not None:
+        command.extend([ '-f', str(page), '-l', str(page) ])
+
+    return (document, page, measure_command(command))
+
+def measure(args):
+    global utils, mode, warm_up_iterations, min_iterations, max_iterations, target_accuracy
+
+    utils = args.utils
+    mode = args.mode
+    warm_up_iterations = args.warm_up_iterations
+    min_iterations = args.min_iterations
+    max_iterations = args.max_iterations
+    target_accuracy = args.target_accuracy
+
+    todo = 0
+
+    written = rewrite(0, 'Scanning...')
+
+    tasks = []
+
+    for path, _, files in os.walk(args.documents):
+        for file in files:
+            file_path = os.path.join(path, file)
+
+            page_count = check_page_count(file_path)
+
+            if page_count == 0:
+                continue
+
+            pages = range(1, page_count + 1) if args.pages else [ None ]
+
+            for page in pages:
+                tasks.append((file_path, page))
+
+                todo +=1
+                if todo % 100 == 0:
+                    written = rewrite(written, 'Found %d...' % todo)
+
+    done = 0
+
+    written = rewrite(written, '%d/%d (%.1f%%): Measuring...' % (done, todo, 0))
+    begin = time.time()
+
+    with multiprocessing.Pool() as pool:
+        results = {}
+
+        for result in pool.imap(measure_task, tasks):
+            document, page, (run_time, memory_usage) = result
+
+            entry = results.setdefault(document, {}).setdefault(page, {})
+            entry['run_time'] = run_time
+            entry['memory_usage'] = memory_usage
+
+            done += 1
+            if done % max(1, todo // 500) == 0:
+                written = rewrite(written, '%d/%d (%.1f%%): Measured %s...' % (done, todo, 100 * done / todo, reference(document, page)))
+
+    end = time.time()
+    rewrite(written, '%d/%d (%.1f%%): Measurement took %s.\n' % (done, todo, 100, time.strftime('%T', time.gmtime(end - begin))))
+
+    with open(args.results, 'wb') as file:
+        data = pickle.dumps(results)
+        data = zlib.compress(data)
+        file.write(data)
diff --git a/perftest/poppler-perftest b/perftest/poppler-perftest
new file mode 100755
index 00000000..3269386f
--- /dev/null
+++ b/perftest/poppler-perftest
@@ -0,0 +1,40 @@
+#!/usr/bin/env python3
+
+import argparse
+import sys
+
+from measure import measure
+from compare import compare
+
+def main(args):
+    parser = argparse.ArgumentParser()
+    subparsers = parser.add_subparsers()
+
+    measure_parser = subparsers.add_parser('measure')
+    measure_parser.set_defaults(func=measure)
+    measure_parser.add_argument('--utils', default='../utils')
+    measure_parser.add_argument('--mode', choices=[ 'splash', 'cairo', 'text' ], default='splash')
+    measure_parser.add_argument('--pages', action='store_true')
+    measure_parser.add_argument('--warm_up_iterations', type = int, default=5)
+    measure_parser.add_argument('--min_iterations', type=int, default=5)
+    measure_parser.add_argument('--max_iterations', type=int, default=25)
+    measure_parser.add_argument('--target_accuracy', type=float, default=0.01)
+    measure_parser.add_argument('documents')
+    measure_parser.add_argument('results')
+
+    compare_parser = subparsers.add_parser('compare')
+    compare_parser.set_defaults(func=compare)
+    compare_parser.add_argument('--threshold', type=float, default=0.05)
+    compare_parser.add_argument('results')
+    compare_parser.add_argument('reference_results')
+
+    try:
+        args = parser.parse_args(args)
+        args.func(args)
+        return 0
+    except AttributeError:
+        parser.print_help()
+        return 1
+
+if __name__ == '__main__':
+    sys.exit(main(sys.argv[1:]))
diff --git a/perftest/util.py b/perftest/util.py
new file mode 100644
index 00000000..ecfb301e
--- /dev/null
+++ b/perftest/util.py
@@ -0,0 +1,29 @@
+import math
+import statistics
+import sys
+
+def rewrite(written, message):
+    sys.stdout.write('\r' * written + ' ' * written + '\r')
+    written = sys.stdout.write(message)
+    sys.stdout.flush()
+    return written
+
+def reference(document, page):
+    if page is not None:
+        return '%s[%d]' % (document, page)
+    else:
+        return document
+
+def accuracy(values):
+    try:
+        mean = statistics.mean(values)
+        stdev = statistics.stdev(values, mean)
+        return abs(stdev / mean)
+    except statistics.StatisticsError:
+        return math.inf
+
+def reldev(x, y):
+    return (x - y) / y
+
+def maxabs(x, y):
+    return max(abs(x), abs(y))
-- 
2.16.1

/usr/share/texmf/doc/latex/presentations/images/beamer/zedat.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.002 s
                Deviation: 2.1 %
        Memory usage:
                Result: 10.0 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/sciposter/sciposterexample/blocks3op.pdf:
        Run time:
                Result: 0.04 ∓ 0.001 s
                Reference: 0.04 ∓ 0.002 s
                Deviation: -3.8 %
        Memory usage:
                Result: 10.6 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 5.1 %
/usr/share/texmf/doc/latex/l2picfaq/ctanlion.pdf:
        Run time:
                Result: 0.10 ∓ 0.002 s
                Reference: 0.10 ∓ 0.002 s
                Deviation: -3.3 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.3 %
/usr/share/texmf/doc/context/sources/general/manuals/start/graphics/cow.pdf:
        Run time:
                Result: 0.05 ∓ 0.002 s
                Reference: 0.05 ∓ 0.002 s
                Deviation: -7.0 %
        Memory usage:
                Result: 10.1 ∓ 0.13 kB
                Reference: 9.8 ∓ 0.17 kB
                Deviation: 2.9 %
/usr/share/texmf/doc/support/latexindent/latexindent.pdf:
        Run time:
                Result: 10.30 ∓ 0.023 s
                Reference: 9.62 ∓ 0.026 s
                Deviation: 7.0 %
        Memory usage:
                Result: 22.0 ∓ 0.12 kB
                Reference: 21.9 ∓ 0.11 kB
                Deviation: 0.3 %
/usr/share/texmf/doc/context/sources/general/manuals/start/graphics/fig-page-parameters-en.pdf:
        Run time:
                Result: 0.21 ∓ 0.001 s
                Reference: 0.23 ∓ 0.009 s
                Deviation: -6.7 %
        Memory usage:
                Result: 18.4 ∓ 0.16 kB
                Reference: 18.3 ∓ 0.18 kB
                Deviation: 0.6 %
/usr/share/texmf/doc/latex/sciposter/sciposterexample/blocks2.pdf:
        Run time:
                Result: 0.04 ∓ 0.001 s
                Reference: 0.04 ∓ 0.001 s
                Deviation: -0.8 %
        Memory usage:
                Result: 9.6 ∓ 0.02 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: -5.5 %
/usr/share/texmf/doc/latex/presentations/images/beamer/beamer2.pdf:
        Run time:
                Result: 0.08 ∓ 0.001 s
                Reference: 0.08 ∓ 0.001 s
                Deviation: -2.7 %
        Memory usage:
                Result: 10.0 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/math-into-latex-4/babybeamer10.pdf:
        Run time:
                Result: 0.18 ∓ 0.001 s
                Reference: 0.18 ∓ 0.001 s
                Deviation: -0.3 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.00 kB
                Deviation: 5.6 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemePittsburgh.pdf:
        Run time:
                Result: 0.11 ∓ 0.001 s
                Reference: 0.11 ∓ 0.001 s
                Deviation: -2.0 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.2 %
/usr/share/texmf/doc/latex/math-into-latex-4/basem3-1.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: 1.3 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.01 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/presentations-en/images/beamer/beamer1.pdf:
        Run time:
                Result: 0.07 ∓ 0.000 s
                Reference: 0.08 ∓ 0.003 s
                Deviation: -5.2 %
        Memory usage:
                Result: 10.1 ∓ 0.00 kB
                Reference: 9.8 ∓ 0.00 kB
                Deviation: 3.1 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemeBoadilla.pdf:
        Run time:
                Result: 0.14 ∓ 0.002 s
                Reference: 0.14 ∓ 0.001 s
                Deviation: -0.7 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.2 ∓ 0.00 kB
                Deviation: 5.2 %
/usr/share/texmf/doc/plain/present/Pfeil2.pdf:
        Run time:
                Result: 0.01 ∓ 0.002 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: -14.0 %
        Memory usage:
                Result: 9.0 ∓ 0.00 kB
                Reference: 9.0 ∓ 0.00 kB
                Deviation: 0.3 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugouterthemeshadow.pdf:
        Run time:
                Result: 0.13 ∓ 0.002 s
                Reference: 0.13 ∓ 0.001 s
                Deviation: -1.7 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.2 ∓ 0.00 kB
                Deviation: 5.2 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemeCambridgeUS.pdf:
        Run time:
                Result: 0.15 ∓ 0.002 s
                Reference: 0.15 ∓ 0.001 s
                Deviation: 0.1 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.2 ∓ 0.00 kB
                Deviation: 5.3 %
/usr/share/texmf/doc/latex/math-into-latex-4/basem3-2.pdf:
        Run time:
                Result: 0.02 ∓ 0.002 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: 5.7 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.01 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/frontespizio/exampled.pdf:
        Run time:
                Result: 0.05 ∓ 0.002 s
                Reference: 0.06 ∓ 0.002 s
                Deviation: -6.4 %
        Memory usage:
                Result: 16.2 ∓ 0.14 kB
                Reference: 16.1 ∓ 0.15 kB
                Deviation: 0.2 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemeEastLansing.pdf:
        Run time:
                Result: 0.15 ∓ 0.001 s
                Reference: 0.15 ∓ 0.001 s
                Deviation: -0.4 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.2 %
/usr/share/texmf/doc/generic/tracklang/samples/animals/sample-animals2.pdf:
        Run time:
                Result: 0.03 ∓ 0.001 s
                Reference: 0.04 ∓ 0.002 s
                Deviation: -5.8 %
        Memory usage:
                Result: 16.0 ∓ 0.16 kB
                Reference: 16.0 ∓ 0.19 kB
                Deviation: 0.4 %
/usr/share/texmf/doc/latex/presentations/images/beamer/beamer1.pdf:
        Run time:
                Result: 0.08 ∓ 0.001 s
                Reference: 0.08 ∓ 0.001 s
                Deviation: -2.7 %
        Memory usage:
                Result: 10.0 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/beamer/doc/beameruginnerthemedefault.pdf:
        Run time:
                Result: 0.14 ∓ 0.001 s
                Reference: 0.14 ∓ 0.001 s
                Deviation: -1.5 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.6 %
/usr/share/texmf/doc/context/documents/general/manuals/tiptrick.pdf:
        Run time:
                Result: 2.24 ∓ 0.018 s
                Reference: 2.26 ∓ 0.003 s
                Deviation: -0.6 %
        Memory usage:
                Result: 25.5 ∓ 1.65 kB
                Reference: 19.6 ∓ 0.12 kB
                Deviation: 30.0 %
/usr/share/texmf/doc/context/sources/general/manuals/start/graphics/fig-page-areas-en.pdf:
        Run time:
                Result: 0.25 ∓ 0.002 s
                Reference: 0.26 ∓ 0.011 s
                Deviation: -5.1 %
        Memory usage:
                Result: 18.8 ∓ 0.18 kB
                Reference: 18.7 ∓ 0.15 kB
                Deviation: 0.6 %
/usr/share/texmf/doc/latex/math-into-latex-4/babybeamer6mod2.pdf:
        Run time:
                Result: 0.15 ∓ 0.001 s
                Reference: 0.15 ∓ 0.001 s
                Deviation: 1.0 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.00 kB
                Deviation: 5.6 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemeLuebeck.pdf:
        Run time:
                Result: 0.14 ∓ 0.001 s
                Reference: 0.14 ∓ 0.001 s
                Deviation: -1.9 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.6 %
/usr/share/texmf/doc/latex/presentations/images/beamer/FUlogo.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: -0.1 %
        Memory usage:
                Result: 10.0 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/frontespizio/fakelogo.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: -6.2 %
        Memory usage:
                Result: 10.7 ∓ 0.01 kB
                Reference: 10.0 ∓ 0.00 kB
                Deviation: 6.6 %
/usr/share/texmf/doc/latex/presentations/images/beamer/fu-berlin.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: -0.9 %
        Memory usage:
                Result: 10.0 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/sciposter/sciposterexample/blocks1.pdf:
        Run time:
                Result: 0.04 ∓ 0.001 s
                Reference: 0.04 ∓ 0.001 s
                Deviation: -2.1 %
        Memory usage:
                Result: 10.6 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 5.3 %
/usr/share/texmf/doc/latex/math-into-latex-4/babybeamer3.pdf:
        Run time:
                Result: 0.10 ∓ 0.001 s
                Reference: 0.10 ∓ 0.001 s
                Deviation: 0.7 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.00 kB
                Deviation: 5.6 %
/usr/share/texmf/doc/context/third/pgfplots/pgfplotsexample-context.pdf:
        Run time:
                Result: 0.07 ∓ 0.003 s
                Reference: 0.06 ∓ 0.000 s
                Deviation: 5.8 %
        Memory usage:
                Result: 16.6 ∓ 0.14 kB
                Reference: 16.4 ∓ 0.11 kB
                Deviation: 0.8 %
/usr/share/texmf/doc/xelatex/quran/defaulttext.pdf:
        Run time:
                Result: 0.02 ∓ 0.002 s
                Reference: 0.02 ∓ 0.002 s
                Deviation: 4.9 %
        Memory usage:
                Result: 9.9 ∓ 0.00 kB
                Reference: 9.3 ∓ 0.00 kB
                Deviation: 6.4 %
/usr/share/texmf/doc/latex/feupphdteses/Figures/uporto-feup.pdf:
        Run time:
                Result: 0.03 ∓ 0.002 s
                Reference: 0.03 ∓ 0.003 s
                Deviation: -4.7 %
        Memory usage:
                Result: 9.5 ∓ 0.00 kB
                Reference: 10.0 ∓ 0.00 kB
                Deviation: -5.2 %
/usr/share/texmf/doc/latex/titlepages/titlepages.pdf:
        Run time:
                Result: 4.42 ∓ 0.019 s
                Reference: 4.49 ∓ 0.027 s
                Deviation: -1.4 %
        Memory usage:
                Result: 18.3 ∓ 0.12 kB
                Reference: 19.4 ∓ 0.98 kB
                Deviation: -5.7 %
/usr/share/texmf/doc/latex/math-into-latex-4/babybeamer5.pdf:
        Run time:
                Result: 0.18 ∓ 0.002 s
                Reference: 0.18 ∓ 0.001 s
                Deviation: 0.4 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/generic/tracklang/samples/animals/sample-animals-babel.pdf:
        Run time:
                Result: 0.04 ∓ 0.002 s
                Reference: 0.04 ∓ 0.000 s
                Deviation: 5.5 %
        Memory usage:
                Result: 16.0 ∓ 0.14 kB
                Reference: 15.8 ∓ 0.02 kB
                Deviation: 1.4 %
/usr/share/texmf/doc/latex/cnbwp/graph18.pdf:
        Run time:
                Result: 0.06 ∓ 0.001 s
                Reference: 0.06 ∓ 0.001 s
                Deviation: -0.5 %
        Memory usage:
                Result: 10.3 ∓ 0.00 kB
                Reference: 9.6 ∓ 0.00 kB
                Deviation: 7.5 %
/usr/share/texmf/doc/generic/lecturer/LecturerDemo-SimplePresentation.pdf:
        Run time:
                Result: 0.42 ∓ 0.002 s
                Reference: 0.43 ∓ 0.002 s
                Deviation: -1.1 %
        Memory usage:
                Result: 11.3 ∓ 0.10 kB
                Reference: 10.7 ∓ 0.10 kB
                Deviation: 5.4 %
/usr/share/texmf/doc/xelatex/quran/uthmanitext.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: 0.2 %
        Memory usage:
                Result: 9.9 ∓ 0.00 kB
                Reference: 9.3 ∓ 0.00 kB
                Deviation: 6.4 %
/usr/share/texmf/doc/latex/milog/milog-example.pdf:
        Run time:
                Result: 0.23 ∓ 0.002 s
                Reference: 0.23 ∓ 0.001 s
                Deviation: 1.1 %
        Memory usage:
                Result: 26.9 ∓ 0.99 kB
                Reference: 17.1 ∓ 0.14 kB
                Deviation: 57.4 %
/usr/share/texmf/doc/latex/presentations/images/beamer/beamer0.pdf:
        Run time:
                Result: 0.08 ∓ 0.001 s
                Reference: 0.08 ∓ 0.001 s
                Deviation: -1.8 %
        Memory usage:
                Result: 10.0 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/presentations/images/beamer/beamernavsymbols.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.002 s
                Deviation: -0.9 %
        Memory usage:
                Result: 10.1 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.8 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemeHannover.pdf:
        Run time:
                Result: 0.12 ∓ 0.001 s
                Reference: 0.12 ∓ 0.001 s
                Deviation: -1.2 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.2 ∓ 0.00 kB
                Deviation: 5.2 %
/usr/share/texmf/doc/latex/cjk/examples/pdf/GB.pdf:
        Run time:
                Result: 0.09 ∓ 0.002 s
                Reference: 0.10 ∓ 0.001 s
                Deviation: -5.3 %
        Memory usage:
                Result: 17.0 ∓ 0.14 kB
                Reference: 16.8 ∓ 0.05 kB
                Deviation: 1.0 %
/usr/share/texmf/doc/latex/draftcopy/draftcopy.pdf:
        Run time:
                Result: 1.39 ∓ 0.011 s
                Reference: 1.41 ∓ 0.012 s
                Deviation: -1.2 %
        Memory usage:
                Result: 23.5 ∓ 1.37 kB
                Reference: 26.0 ∓ 0.25 kB
                Deviation: -9.6 %
/usr/share/texmf/doc/latex/translation-europecv-de/Beispiele/at.pdf:
        Run time:
                Result: 0.03 ∓ 0.001 s
                Reference: 0.03 ∓ 0.001 s
                Deviation: 3.0 %
        Memory usage:
                Result: 10.6 ∓ 0.00 kB
                Reference: 9.6 ∓ 0.00 kB
                Deviation: 9.9 %
/usr/share/texmf/doc/support/ltximg/ltximg-doc.pdf:
        Run time:
                Result: 0.36 ∓ 0.001 s
                Reference: 0.31 ∓ 0.015 s
                Deviation: 14.6 %
        Memory usage:
                Result: 17.6 ∓ 0.06 kB
                Reference: 17.5 ∓ 0.09 kB
                Deviation: 0.7 %
/usr/share/texmf/doc/generic/tracklang/samples/animals/sample-animals-de-poly.pdf:
        Run time:
                Result: 0.03 ∓ 0.001 s
                Reference: 0.03 ∓ 0.001 s
                Deviation: -6.1 %
        Memory usage:
                Result: 15.9 ∓ 0.16 kB
                Reference: 15.7 ∓ 0.15 kB
                Deviation: 0.7 %
/usr/share/texmf/doc/generic/lecturer/LecturerDemo-SquaresOfAs.pdf:
        Run time:
                Result: 0.63 ∓ 0.003 s
                Reference: 0.64 ∓ 0.002 s
                Deviation: -1.8 %
        Memory usage:
                Result: 15.8 ∓ 1.05 kB
                Reference: 14.5 ∓ 0.89 kB
                Deviation: 9.3 %
/usr/share/texmf/doc/latex/sciposter/sciposterexample/blocks3rec.pdf:
        Run time:
                Result: 0.04 ∓ 0.001 s
                Reference: 0.04 ∓ 0.001 s
                Deviation: -3.6 %
        Memory usage:
                Result: 10.6 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 5.4 %
/usr/share/texmf/doc/latex/math-into-latex-4/babybeamer9.pdf:
        Run time:
                Result: 0.10 ∓ 0.001 s
                Reference: 0.10 ∓ 0.001 s
                Deviation: -0.3 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.00 kB
                Deviation: 5.6 %
/usr/share/texmf/doc/latex/correctmathalign/eqnarray-org.pdf:
        Run time:
                Result: 0.02 ∓ 0.001 s
                Reference: 0.02 ∓ 0.001 s
                Deviation: -1.0 %
        Memory usage:
                Result: 10.1 ∓ 0.00 kB
                Reference: 9.5 ∓ 0.00 kB
                Deviation: 5.8 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugouterthemetree.pdf:
        Run time:
                Result: 0.12 ∓ 0.001 s
                Reference: 0.13 ∓ 0.001 s
                Deviation: -2.2 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.1 %
/usr/share/texmf/doc/latex/math-into-latex-4/babybeamer7.pdf:
        Run time:
                Result: 0.31 ∓ 0.002 s
                Reference: 0.31 ∓ 0.002 s
                Deviation: 1.1 %
        Memory usage:
                Result: 10.8 ∓ 0.00 kB
                Reference: 10.3 ∓ 0.00 kB
                Deviation: 5.7 %
/usr/share/texmf/doc/latex/sciposter/sciposterexample/blocks3.pdf:
        Run time:
                Result: 0.04 ∓ 0.000 s
                Reference: 0.04 ∓ 0.001 s
                Deviation: -2.8 %
        Memory usage:
                Result: 10.6 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 5.2 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugcolorthemedefault.pdf:
        Run time:
                Result: 0.11 ∓ 0.001 s
                Reference: 0.11 ∓ 0.000 s
                Deviation: -0.4 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.1 %
/usr/share/texmf/doc/context/documents/general/manuals/units-mkiv.pdf:
        Run time:
                Result: 1.37 ∓ 0.013 s
                Reference: 1.36 ∓ 0.013 s
                Deviation: 0.3 %
        Memory usage:
                Result: 22.1 ∓ 0.87 kB
                Reference: 17.4 ∓ 0.12 kB
                Deviation: 26.7 %
/usr/share/texmf/doc/support/texosquery/texosquery.pdf:
        Run time:
                Result: 9.81 ∓ 0.881 s
                Reference: 10.69 ∓ 0.075 s
                Deviation: -8.2 %
        Memory usage:
                Result: 19.2 ∓ 0.12 kB
                Reference: 19.0 ∓ 0.09 kB
                Deviation: 1.0 %
/usr/share/texmf/doc/generic/knuth/errata/errata.pdf:
        Run time:
                Result: 12.54 ∓ 0.101 s
                Reference: 12.69 ∓ 0.044 s
                Deviation: -1.1 %
        Memory usage:
                Result: 18.9 ∓ 0.19 kB
                Reference: 16.1 ∓ 0.14 kB
                Deviation: 17.4 %
/usr/share/texmf/doc/latex/beamer/doc/beamerugthemeBerlin.pdf:
        Run time:
                Result: 0.14 ∓ 0.001 s
                Reference: 0.15 ∓ 0.001 s
                Deviation: -2.9 %
        Memory usage:
                Result: 10.7 ∓ 0.00 kB
                Reference: 10.1 ∓ 0.00 kB
                Deviation: 6.1 %
Cumulative run time:
        Result: 90.95 min ∓ 1.1 %
        Reference: 91.57 min ∓ 1.2 %
        Deviation: -0.0 %
Cumulative memory usage:
        Result: 37.2 MB ∓ 0.7 %
        Reference: 37.0 MB ∓ 0.7 %
        Deviation: +0.0 %

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
poppler mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/poppler

Reply via email to