Tim Mayberry
e84fbfe6e5
It appears that there is no performance benefit from storing properties in a map for faster lookup or it is counteracted by the penalty of storing and maintaining the additional data structure. Timing results before changes with an optimized build: XMLTest::testPerfMediumXMLDocumentTiming Create : Count: 10 Min: 41293 Max: 63746 Total: 564448 Avg: 56444 (56 msecs) Write : Count: 10 Min: 42932 Max: 49221 Total: 453955 Avg: 45395 (45 msecs) Read : Count: 10 Min: 80160 Max: 84678 Total: 824506 Avg: 82450 (82 msecs) XMLTest::testPerfLargeXMLDocumentTiming Create : Count: 10 Min: 228759 Max: 420236 Total: 3587597 Avg: 358759 (358 msecs) Write : Count: 10 Min: 307095 Max: 348767 Total: 3205704 Avg: 320570 (320 msecs) Read : Count: 10 Min: 572400 Max: 657219 Total: 5959630 Avg: 595963 (595 msecs) Perf results after changes: XMLTest::testPerfMediumXMLDocumentTiming Create : Count: 10 Min: 30610 Max: 42656 Total: 376672 Avg: 37667 (37 msecs) Write : Count: 10 Min: 42804 Max: 54277 Total: 460455 Avg: 46045 (46 msecs) Read : Count: 10 Min: 70364 Max: 85484 Total: 750909 Avg: 75090 (75 msecs) XMLTest::testPerfLargeXMLDocumentTiming Create : Count: 10 Min: 164360 Max: 356995 Total: 3064482 Avg: 306448 (306 msecs) Write : Count: 10 Min: 308655 Max: 372953 Total: 3226707 Avg: 322670 (322 msecs) Read : Count: 10 Min: 517243 Max: 541839 Total: 5289950 Avg: 528995 (528 msecs) |
||
---|---|---|
.. | ||
.DS_Store | ||
abstract_ui.cc | ||
abstract_ui.h | ||
atomic_counter.h | ||
base_ui.h | ||
basename.h | ||
boost_debug.h | ||
cartesian.h | ||
command.h | ||
compose.h | ||
configuration_variable.h | ||
configuration.h | ||
controllable.h | ||
convert.h | ||
cpus.h | ||
crossthread.h | ||
debug_rt_alloc.h | ||
debug.h | ||
demangle.h | ||
destructible.h | ||
enumwriter.h | ||
epa.h | ||
error.h | ||
event_loop.h | ||
failed_constructor.h | ||
fastlog.h | ||
ffs.h | ||
file_archive.h | ||
file_utils.h | ||
floating.h | ||
forkexec.h | ||
fpu.h | ||
functor_command.h | ||
gstdio_compat.h | ||
i18n.h | ||
id.h | ||
libpbd_visibility.h | ||
locale_guard.h | ||
localtime_r.h | ||
malign.h | ||
mathfix.h | ||
md5.h | ||
memento_command.h | ||
mountpoint.h | ||
msvc_pbd.h | ||
natsort.h | ||
openuri.h | ||
pathexpand.h | ||
pbd.h | ||
pool.h | ||
properties.h | ||
property_basics_impl.h | ||
property_basics.h | ||
property_list_impl.h | ||
property_list.h | ||
pthread_utils.h | ||
rcu.h | ||
reallocpool.h | ||
receiver.h | ||
replace_all.h | ||
resource.h | ||
ringbuffer.h | ||
ringbufferNPT.h | ||
scoped_file_descriptor.h | ||
search_path.h | ||
selectable.h | ||
semutils.h | ||
sequence_property.h | ||
shortpath.h | ||
signals.h | ||
signals.py | ||
stacktrace.h | ||
stateful_diff_command.h | ||
stateful.h | ||
statefuldestructible.h | ||
stl_delete.h | ||
stl_functors.h | ||
strsplit.h | ||
system_exec.h | ||
textreceiver.h | ||
thrown_error.h | ||
timer.h | ||
timersub.h | ||
timing.h | ||
tlsf.h | ||
tokenizer.h | ||
touchable.h | ||
transmitter.h | ||
undo.h | ||
unknown_type.h | ||
unwind.h | ||
uuid_boost.h | ||
uuid.h | ||
whitespace.h | ||
windows_mmcss.h | ||
windows_special_dirs.h | ||
windows_timer_utils.h | ||
xml++.h |