On 15/12/2019 00:27, Richard Hipp wrote:
A new feature on a branch has the following disadvantages:
(1) It uses about 0.25% more CPU cycles. (Each release of SQLite is
normally about 0.5% faster, so enabling this feature is sort of like
going back by one-half of a release cycle.)
(2) The code space (the size of the library) is between 400 and 500
bytes larger (depending on compiler and optimization settings).
The this one advantage:
(3) Each database connection uses about 72 KB less heap space.
QUESTION: Should this feature be default-on or default-off?
What's more important to you? 0.25% fewer CPU cycles or about 72KB
less heap space used per database connection?
The feature can be activated or deactivated at start-time, but you
take the disadvantages (the performance hit and slightly larger
library size) regardless, unless you disable the feature at
compile-time. If the feature is compile-time disabled, then the
corresponding code is omitted and and it cannot be turned on at
start-time.
If you have opinions, you can reply to this mailing list, or directly to me.
I'll vote for "default on"
- 72KB of heap is a fair old whack, particularly for those on bare
silicon.
- the half-a-step back in performance is a "meh," given that only those
who manage to push the latest version to production quickly will
probably even notice, that is, if they look for it.
- 400-500 bytes is not a dramatic cost, but it still might be too much
for someone's PROM.
Cheers,
Gary B-)
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users