comparison tests/_perf_config.py @ 496:36ab39e3de53

A script to measure some basic performance characteristics of configmix. BUGS: Not yet finished.
author Franz Glasner <fzglas.hg@dom66.de>
date Fri, 17 Dec 2021 23:53:11 +0100
parents
children e7c82706b67a
comparison
equal deleted inserted replaced
495:3f0c932588fc 496:36ab39e3de53
1 # -*- coding: utf-8 -*-
2
3 from __future__ import print_function
4
5 import os
6 import sys
7 import timeit
8
9 sys.path.insert(
10 0,
11 os.path.abspath(
12 os.path.normpath(os.path.join(os.path.dirname(__file__), ".."))))
13
14 setup = """
15 import os
16
17 import configmix
18
19 TESTDATADIR = os.path.join(
20 os.path.abspath(os.path.dirname(configmix.__file__)),
21 "..",
22 "tests",
23 "data")
24
25 cfg = configmix.load(os.path.join(TESTDATADIR, "conf_perf.py"))
26
27 """
28
29
30 num = 1000000
31
32 print("xxx: %.3f" % timeit.timeit('cfg.getvarl(u"xxx", u"yyy", default=None)', setup=setup, number=num))
33 print("xxx: %.3f" % timeit.timeit('cfg.getvarl_s(u"xxx", "yyy", default=None)', setup=setup, number=num))
34 print("xxx: %.3f" % timeit.timeit('cfg.getvar(u"xxx.yyy", default=None)', setup=setup, number=num))
35 print("xxx: %.3f" % timeit.timeit('cfg.getvar_s(u"xxx.yyy", default=None)', setup=setup, number=num))
36
37 print("xxx: %.3f" % timeit.timeit('cfg.getvarl(u"tree1", u"tree2", "key4")', setup=setup, number=num))
38 print("xxx: %.3f" % timeit.timeit('cfg.getvarl_s(u"tree1", u"tree2", "key4")', setup=setup, number=num))
39 print("xxx: %.3f" % timeit.timeit('cfg.getvar(u"tree1.tree2.key4")', setup=setup, number=num))
40 print("xxx: %.3f" % timeit.timeit('cfg.getvar_s(u"tree1.tree2.key4")', setup=setup, number=num))
41
42 print("xxx: %.3f" % timeit.timeit('cfg.getvarl(u"tree1", u"tree2", "key10")', setup=setup, number=num))
43 print("xxx: %.3f" % timeit.timeit('cfg.getvarl_s(u"tree1", u"tree2", "key10")', setup=setup, number=num))
44 print("xxx: %.3f" % timeit.timeit('cfg.getvar(u"tree1.tree2.key10")', setup=setup, number=num))
45 print("xxx: %.3f" % timeit.timeit('cfg.getvar_s(u"tree1.tree2.key10")', setup=setup, number=num))
46
47 print("xxx: %.3f" % timeit.timeit('cfg.getvarl(u"tree1", u"tree2", "key8")', setup=setup, number=num))
48 print("xxx: %.3f" % timeit.timeit('cfg.getvarl_s(u"tree1", u"tree2", "key8")', setup=setup, number=num))
49 print("xxx: %.3f" % timeit.timeit('cfg.getvar(u"tree1.tree2.key8")', setup=setup, number=num))
50 print("xxx: %.3f" % timeit.timeit('cfg.getvar_s(u"tree1.tree2.key8")', setup=setup, number=num))