Title: [199567] trunk/Source/_javascript_Core
- Revision
- 199567
- Author
- [email protected]
- Date
- 2016-04-14 16:33:54 -0700 (Thu, 14 Apr 2016)
Log Message
CopiedBlock should be 8kB
https://bugs.webkit.org/show_bug.cgi?id=156610
Reviewed by Michael Saboff.
On Mac Pro, this is:
15% faster on kraken-audio-beat-detection
5% faster on v8-splay
Hopefully, this will be OK on MacBook* bots as well.
32kB is the full size of L1 cache on x86. So, allocating and zero-filling
a 32kB CopiedBlock would basically flush the L1 cache. We can ameliorate
this problem by using smaller blocks -- or, if that doesn't work, we can
use larger blocks to amortize the cost.
* heap/CopiedBlock.h:
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (199566 => 199567)
--- trunk/Source/_javascript_Core/ChangeLog 2016-04-14 23:08:07 UTC (rev 199566)
+++ trunk/Source/_javascript_Core/ChangeLog 2016-04-14 23:33:54 UTC (rev 199567)
@@ -1,3 +1,25 @@
+2016-04-14 Geoffrey Garen <[email protected]>
+
+ CopiedBlock should be 8kB
+ https://bugs.webkit.org/show_bug.cgi?id=156610
+
+ Reviewed by Michael Saboff.
+
+ On Mac Pro, this is:
+
+ 15% faster on kraken-audio-beat-detection
+
+ 5% faster on v8-splay
+
+ Hopefully, this will be OK on MacBook* bots as well.
+
+ 32kB is the full size of L1 cache on x86. So, allocating and zero-filling
+ a 32kB CopiedBlock would basically flush the L1 cache. We can ameliorate
+ this problem by using smaller blocks -- or, if that doesn't work, we can
+ use larger blocks to amortize the cost.
+
+ * heap/CopiedBlock.h:
+
2016-04-14 Filip Pizlo <[email protected]>
PolymorphicAccess should try to generate a stub only once
Modified: trunk/Source/_javascript_Core/heap/CopiedBlock.h (199566 => 199567)
--- trunk/Source/_javascript_Core/heap/CopiedBlock.h 2016-04-14 23:08:07 UTC (rev 199566)
+++ trunk/Source/_javascript_Core/heap/CopiedBlock.h 2016-04-14 23:33:54 UTC (rev 199567)
@@ -79,7 +79,7 @@
size_t size();
size_t capacity();
- static const size_t blockSize = 32 * KB;
+ static const size_t blockSize = 8 * KB;
bool hasWorkList();
CopyWorkList& workList();
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes