Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Clone in Desktop Download ZIP

Loading…

slowdown when using rtti switch #94

Closed
maykov opened this Issue · 2 comments

2 participants

@maykov
Owner

We experienced 5% slowdown when started compiling withou -fno-rtti switch.

Oracle enabled rtti in 5.6.4: http://dev.mysql.com/worklog/task/?id=5825
commit: mysql/mysql-server@a5ee727

They haven't started using rtti until 5.7 though.
Excerpt:
<< shows that there is no significant difference in execution time between
having and not having these flags.>>>

@maykov maykov self-assigned this
@maykov
Owner

I ran linkbench tests with a 15m dataset provided by Yoshinori.
QPS for RTTI binary
image

QPS for the binary without RTTI:
image

Since the QPS was so spiky I cut all datapoints with < 30000 QPS:
RTTI:
image

no RTTI:
image

The AVG QPS for RTTI was 36245 (stdev was 2044) with 37052 (stdev 2233) for no RTTI

This repesents 2% degradation, but it is within stddev.

Another observation is that QPS dropped by about 10% during the run.

@maykov
Owner

I found an easy way of enabling the RTTI just for RocksDB and disabling for everything else.
See:
https://reviews.facebook.net/differential/diff/220563/
and https://phabricator.fb.com/differential/diff/8899117/

The performance is not affected by disabling RTTI in this manner.

The reason, why we saw perf improvements above is that rocksdb code does quite a bit of string manipulations for logging. Disabling that improved QPS. See the internal t8101744 for details.

@hermanlee hermanlee referenced this issue in facebook/mysql-5.6
Open

slowdown when using rtti switch #51

@hermanlee hermanlee closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.