<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:basile_clement&#64;apple.com" title="Basile Clement &lt;basile_clement&#64;apple.com&gt;"> <span class="fn">Basile Clement</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Make FunctionRareData allocation thread-safe"
   href="https://bugs.webkit.org/show_bug.cgi?id=144001">bug 144001</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Attachment #251361 is obsolete</td>
           <td>
               &nbsp;
           </td>
           <td>1
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Attachment #251478 Flags</td>
           <td>
               &nbsp;
           </td>
           <td>review?, commit-queue?
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Make FunctionRareData allocation thread-safe"
   href="https://bugs.webkit.org/show_bug.cgi?id=144001#c7">Comment # 7</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Make FunctionRareData allocation thread-safe"
   href="https://bugs.webkit.org/show_bug.cgi?id=144001">bug 144001</a>
              from <span class="vcard"><a class="email" href="mailto:basile_clement&#64;apple.com" title="Basile Clement &lt;basile_clement&#64;apple.com&gt;"> <span class="fn">Basile Clement</span></a>
</span></b>
        <pre>Created <span class=""><a href="attachment.cgi?id=251478&amp;action=diff" name="attach_251478" title="Also ObjectAllocationProfile::isNull to private scope">attachment 251478</a> <a href="attachment.cgi?id=251478&amp;action=edit" title="Also ObjectAllocationProfile::isNull to private scope">[details]</a></span>
Also ObjectAllocationProfile::isNull to private scope

The previous benchmarking issues were apparently present for unrelated reasons.
I am getting weird results:

Basiles-MacBook-Pro:OpenSource elarnon$ JSC_useFTLJIT1=true /Volumes/Data/SVN/Baseline/Internal/Tools/Scripts/run-jsc-benchmarks /Volumes/Data/SVN/Baseline/OpenSource/WebKitBuild/Release/jsc --outer 6 --kraken --benchmark astar
32/32                                        
Generating benchmark report at /Volumes/Data/SVN/Baseline/OpenSource/Kraken_Basiles-MacBook-Pro_20150423_1135_report.txt
And raw data at /Volumes/Data/SVN/Baseline/OpenSource/Kraken_Basiles-MacBook-Pro_20150423_1135.json

Benchmark report for Kraken on Basiles-MacBook-Pro (MacBookPro11,3).

VMs tested:
&quot;Conf#1&quot; at /Volumes/Data/SVN/Baseline/OpenSource/WebKitBuild/Release/jsc (r183152)

Collected 6 samples per benchmark/VM, with 6 VM invocations per benchmark.
Emitted a call to gc() between sample measurements. Used 1 benchmark iteration
per VM invocation for warm-up. Used the jsc-specific preciseTime() function to
get microsecond-level timing. Reporting benchmark execution times with 95%
confidence intervals in milliseconds.

                          Conf#1            

ai-astar             424.889+-7.874     

&lt;arithmetic&gt;         424.889+-7.874     


(note the useFTLJIT1=true, so the option has no effect, just triggers the parsing code) VS

Basiles-MacBook-Pro:OpenSource elarnon$ /Volumes/Data/SVN/Baseline/Internal/Tools/Scripts/run-jsc-benchmarks /Volumes/Data/SVN/Baseline/OpenSource/WebKitBuild/Release/jsc --outer 6 --kraken --benchmark astar
32/32                                        
Generating benchmark report at /Volumes/Data/SVN/Baseline/OpenSource/Kraken_Basiles-MacBook-Pro_20150423_1132_report.txt
And raw data at /Volumes/Data/SVN/Baseline/OpenSource/Kraken_Basiles-MacBook-Pro_20150423_1132.json

Benchmark report for Kraken on Basiles-MacBook-Pro (MacBookPro11,3).

VMs tested:
&quot;Conf#1&quot; at /Volumes/Data/SVN/Baseline/OpenSource/WebKitBuild/Release/jsc (r183152)

Collected 6 samples per benchmark/VM, with 6 VM invocations per benchmark.
Emitted a call to gc() between sample measurements. Used 1 benchmark iteration
per VM invocation for warm-up. Used the jsc-specific preciseTime() function to
get microsecond-level timing. Reporting benchmark execution times with 95%
confidence intervals in milliseconds.

                          Conf#1            

ai-astar             591.127+-5.260     

&lt;arithmetic&gt;         591.127+-5.260     

Note that this is on the *Baseline*, i.e. w/o patches applied (actually the timings are similar w/ the patch applied but reversed, i.e. around 600 w/ options and around 420 w/ no options).
I discussed this with mlam, who thinks this might be memory alignment issues, which are in any case not related to this patch.

I have also run tests for Kraken/ai-astar (which was the only test w/ significant difference) against r183069 :

Benchmark report for Kraken on Basiles-MacBook-Pro (MacBookPro11,3).

VMs tested:
&quot;Conf#1&quot; at /Volumes/Data/BenchTest/ICloudFix/OpenSource/WebKitBuild/Release/jsc
&quot;Conf#2&quot; at /Volumes/Data/BenchTest/RemoveNode/OpenSource/WebKitBuild/Release/jsc
&quot;Conf#3&quot; at /Volumes/Data/BenchTest/NoDeallocate/OpenSource/WebKitBuild/Release/jsc

Collected 6 samples per benchmark/VM, with 6 VM invocations per benchmark. Emitted a call to gc() between sample
measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime() function to
get microsecond-level timing. Reporting benchmark execution times with 95% confidence intervals in milliseconds.

                          Conf#1                    Conf#2                    Conf#3                 Conf#3 v. Conf#1     

ai-astar             399.571+-4.196      ?     400.163+-3.402            399.722+-4.901         ?

&lt;arithmetic&gt;         399.571+-4.196      ?     400.163+-3.402            399.722+-4.901         ? might be 1.0004x slower

(Conf#1 is r183069, Conf#2 is r183069 + <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - Remove AllocationProfileWatchpoint node"
   href="show_bug.cgi?id=143999">https://bugs.webkit.org/show_bug.cgi?id=143999</a>, and Conf#3 is Conf#2 + <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - Don't de-allocate FunctionRareData"
   href="show_bug.cgi?id=144000">https://bugs.webkit.org/show_bug.cgi?id=144000</a> + this patch).

So I think this can safely be considered perf-neutral.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>