Commit Graph

10 Commits

Author SHA1 Message Date
Nadav Rotem
3c23f144ab Continue to reduce the size of the metadata cache by dynamically allocating the mutex.
Swift SVN r23359
2014-11-16 23:08:52 +00:00
Nadav Rotem
3bb9279bcf Reapply "Remove the locks from getGenericMetadata to accelerate Debug builds."
This commits also reduces the size of the metadata cache by allocating the
map dynamically,

There are no regressions and many perf wins:
NestedLoop     1.96x
Life           1.92x
CaptureProp    1.84x
Ary            1.67x
Ary2           1.60x
ArraySubscript 1.57x
ArrayLiteral   1.54x
StdlibSort     1.52x
Havlak         1.51x
TwoSum         1.49x
DollarFilter   1.37x
PrimeNum       1.35x
NBody          1.30x
RangeAssignmen 1.29x
DollarFunction 1.28x
Walsh          1.27x
Memset         1.27x
Histogram      1.27x
RIPEMD         1.27x

Swift SVN r23358
2014-11-16 22:45:30 +00:00
Arnold Schwaighofer
866a4facba Revert "Remove the locks from getGenericMetadata to accelerate Debug builds."
This reverts commit 23353.

It broke the build.

Swift SVN r23354
2014-11-15 18:24:25 +00:00
Nadav Rotem
dbcdfff724 Remove the locks from getGenericMetadata to accelerate Debug builds.
This commit removes the locks from the family of getXXXXMetadata APIs in the
fast path that does not create a new metadata. We still need the lock for the
cache-miss case because constructing metadata has side effects and we must
not construct two metadatas at the same time.

I am seeing a 25% - 30% boost in performance on most workloads that are built
with -Onone.

Swift SVN r23353
2014-11-15 07:07:38 +00:00
Nadav Rotem
866477d241 Small cleanups. NFC.
Swift SVN r23337
2014-11-14 22:29:28 +00:00
Nadav Rotem
22b5204719 Move the debug flag into the MetaCache implementation, where it is used.
Swift SVN r23336
2014-11-14 22:29:27 +00:00
Nadav Rotem
fd9824366c Move the DenseMap EntryRef entry into MetadataCache.
Swift SVN r23335
2014-11-14 22:29:27 +00:00
Graham Batty
a61085a562 Fix missing include of condition_variable.
Swift SVN r23334
2014-11-14 22:09:21 +00:00
Joe Groff
a8a2ff3f95 Case sensitivity fix
Swift SVN r23330
2014-11-14 21:54:47 +00:00
Nadav Rotem
70ce09c0f3 Refactor the metadata cache classes into a new file.
Swift SVN r23327
2014-11-14 20:28:07 +00:00