[webkit-reviews] review denied: [Bug 182951] Play with stack frame randomization : [Attachment 334287] Randomize with a slab

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Feb 20 11:26:06 PST 2018


JF Bastien <jfbastien at apple.com> has denied  review:
Bug 182951: Play with stack frame randomization
https://bugs.webkit.org/show_bug.cgi?id=182951

Attachment 334287: Randomize with a slab

https://bugs.webkit.org/attachment.cgi?id=334287&action=review




--- Comment #3 from JF Bastien <jfbastien at apple.com> ---
Created attachment 334287

  --> https://bugs.webkit.org/attachment.cgi?id=334287&action=review

Randomize with a slab

This patch randomizes using:

 - A slab of random values which we update every 1 ms. This creates a thread,
but we should just use the same thread for all random things, or use the GC
thread.
 - Mixes in prior stack content.
 - Mixes in a random immediate that's generated at codegen time (so different
on every compile).

This means that recursion gets different values (because stack) and
alternatively calling two functions gets different values (because codegen
immediate). It also means that one can't warm up much because the slab changes
every 1 ms.

Running all benchmarks with --outer 10, I get:

							  after 	       
   original					
SunSpider:
   <arithmetic> 				      4.2632+-0.0234	       
4.2392+-0.0350		might be 1.0057x faster
V8Spider:
   <geometric>					     34.2187+-0.2149	      
33.8160+-0.3134 	 might be 1.0119x faster
Octane:
   <geometric>					     4.31879+-0.03799	 ^    
4.21199+-0.02822       ^ definitely 1.0254x faster
Kraken:
   <arithmetic> 				      42.515+-0.358	       
42.190+-1.147		might be 1.0077x faster
TailBench:
   <geometric>					    287.1674+-2.6893	 ^   
278.2981+-3.4959	^ definitely 1.0319x faster
Microbenchmarks:
   <geometric>					      6.9822+-0.0104	 ^     
6.9129+-0.0103	      ^ definitely 1.0100x faster
AsmBench:
   <geometric>					    643.1675+-1.7432	 ^   
628.5469+-7.5472	^ definitely 1.0233x faster
Geomean of preferred means:
   <scaled-result>				     32.0231+-0.0706	 ^    
31.5000+-0.1103        ^ definitely 1.0166x faster


More information about the webkit-reviews mailing list