Last Comment Bug 508117 - TM: locking stats for SS
: TM: locking stats for SS
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: x86 Mac OS X
: -- normal (vote)
: ---
Assigned To: general
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-08-03 14:50 PDT by Gregor Wagner
Modified: 2011-12-07 19:58 PST (History)
6 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
string-fasta.js locking results (73.77 KB, text/plain)
2009-08-03 14:50 PDT, Gregor Wagner
no flags Details
3d-cube lock results (71.70 KB, text/plain)
2009-08-03 14:59 PDT, Gregor Wagner
no flags Details
3d-morph lock results (70.39 KB, text/plain)
2009-08-03 15:01 PDT, Gregor Wagner
no flags Details
3d-raytrace lock results (73.43 KB, text/plain)
2009-08-03 15:03 PDT, Gregor Wagner
no flags Details
access-nbody lock results (70.56 KB, text/plain)
2009-08-03 15:06 PDT, Gregor Wagner
no flags Details
string-unpack-code lock results (75.96 KB, text/plain)
2009-08-03 15:15 PDT, Gregor Wagner
no flags Details
validate-input lock results (74.01 KB, text/plain)
2009-08-03 15:17 PDT, Gregor Wagner
no flags Details
string-base64 lock results (73.58 KB, text/plain)
2009-08-03 15:20 PDT, Gregor Wagner
no flags Details
Summary of all benchmarks (79.41 KB, text/plain)
2009-08-03 16:15 PDT, Gregor Wagner
no flags Details
v8 run.js lock stats (11.57 KB, text/plain)
2009-08-03 16:40 PDT, Gregor Wagner
no flags Details
SS getc_unlocked results (78.05 KB, text/plain)
2009-08-03 17:15 PDT, Gregor Wagner
no flags Details

Description Gregor Wagner 2009-08-03 14:50:26 PDT
Created attachment 392335 [details]
string-fasta.js locking results

plockstat results for string-fasta
plockstat -A -s 4 ./js -j ../t/string-fasta.js

top:
      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 55569 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |   196 js`js_RegisterCloseableIterator+0xcd
     32768 |                        |   147 js`InitNativeIterator(JSContext*, 

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  1850 libSystem.B.dylib`getc+0x5f
     16384 |                        |     5 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |     5 js`js_GetToken+0x3e6
Comment 1 Gregor Wagner 2009-08-03 14:59:30 PDT
Created attachment 392337 [details]
3d-cube lock results

3d-cube top: 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 8086     8699 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`getc+0x5f

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  7831 libSystem.B.dylib`getc+0x5f
     16384 |                        |   218 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |    30 js`js_GetToken+0x3e6
     65536 |                        |     5 
    131072 |                        |     0 
    262144 |                        |     1 
    524288 |                        |     0 
   1048576 |                        |     1 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
    1 16777216 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`fgetc+0x5f

      nsec ---- Time Distribution --- count Stack
  16777216 |@@@@@@@@@@@@@@@@@@@@@@@@|     1 libSystem.B.dylib`fgetc+0x5f
                                            js`Process(JSContext*, JSObject*,
                                            js`main+0x3c1
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 1788     8993 0x20af70                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  1751 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |     2 js`RefillDoubleFreeList(JSContext*)
     32768 |                        |    20 js`js_NewDoubleInRootedValue+0x44
     65536 |                        |    14 
    131072 |                        |     1 
-------------------------------------------------------------------------------
Comment 2 Gregor Wagner 2009-08-03 15:01:54 PDT
Created attachment 392339 [details]
3d-morph lock results

3d-morph top:
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 6659     8868 0x20af70                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  6525 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |     8 js`RefillDoubleFreeList(JSContext*)
     32768 |                        |    87 js`js_NewDoubleInRootedValue+0x44
     65536 |                        |    38 
    131072 |                        |     1 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
    1 33554432 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`fgetc+0x5f

      nsec ---- Time Distribution --- count Stack
  33554432 |@@@@@@@@@@@@@@@@@@@@@@@@|     1 libSystem.B.dylib`fgetc+0x5f
                                            js`Process(JSContext*, JSObject*,
                                            js`main+0x3c1
Comment 3 Gregor Wagner 2009-08-03 15:03:17 PDT
Created attachment 392340 [details]
3d-raytrace lock results

-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
12384     8357 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`getc+0x5f

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 12330 libSystem.B.dylib`getc+0x5f
     16384 |                        |    30 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |    21 js`js_GetToken+0x3e6
     65536 |                        |     0 
    131072 |                        |     2 
    262144 |                        |     0 
    524288 |                        |     0 
   1048576 |                        |     1 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
    1 33554432 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`fgetc+0x5f

      nsec ---- Time Distribution --- count Stack
  33554432 |@@@@@@@@@@@@@@@@@@@@@@@@|     1 libSystem.B.dylib`fgetc+0x5f
                                            js`Process(JSContext*, JSObject*,
                                            js`main+0x3c1
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 1556    11793 0x20ae30                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@          |   910 libnspr4.dylib`PR_Unlock+0x4a
     16384 |@@@@@@@@@               |   631 js`JS_dtostr+0x1f1
     32768 |                        |    13 js`js_NumberValueToStringBuffer
     65536 |                        |     2
Comment 4 Gregor Wagner 2009-08-03 15:06:00 PDT
Created attachment 392342 [details]
access-nbody lock results

access-nbody top:
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
10815     8879 0x20af70                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 10616 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |    13 js`RefillDoubleFreeList(JSContext*)
     32768 |                        |   118 js`js_NewDoubleInRootedValue+0x44
     65536 |                        |    62 
    131072 |                        |     5 
    262144 |                        |     1 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 4082     8657 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`getc+0x5f

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  3994 libSystem.B.dylib`getc+0x5f
     16384 |                        |    78 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |     9 js`js_GetToken+0x3e6
     65536 |                        |     0 
    131072 |                        |     0 
    262144 |                        |     0 
    524288 |                        |     0 
   1048576 |                        |     1 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
    1 16777216 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`fgetc+0x5f

      nsec ---- Time Distribution --- count Stack
  16777216 |@@@@@@@@@@@@@@@@@@@@@@@@|     1 libSystem.B.dylib`fgetc+0x5f
                                            js`Process(JSContext*, JSObject*,
                                            js`main+0x3c1
-------------------------------------------------------------------------------
Comment 5 Gregor Wagner 2009-08-03 15:15:10 PDT
Created attachment 392347 [details]
string-unpack-code lock results


string-unpack-code results top:

-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
162246     8280 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`getc+0x5f

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 161618 libSystem.B.dylib`getc+0x5f
     16384 |                        |   205 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |   397 js`js_GetToken+0x1d48
     65536 |                        |    20 
    131072 |                        |     4 
    262144 |                        |     1 
    524288 |                        |     0 
   1048576 |                        |     1 
-------------------------------------------------------------------------------

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  5106 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |    40 js`GetPropertyTreeChild(JSContext
     32768 |                        |    19 js`JSScope::add(JSContext*, long, 
     65536 |                        |     5 
    131072 |                        |     0 
    262144 |                        |     0 
    524288 |                        |     0 
   1048576 |                        |     1 
-------------------------------------------------------------------------------
Comment 6 Gregor Wagner 2009-08-03 15:17:30 PDT
Created attachment 392348 [details]
validate-input lock results

top:

-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
19994     8234 0x20b810                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 19949 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |    22 js`math_random_tn(JSRuntime*)+0x155
     32768 |                        |    22 0x1f2ed7
     65536 |                        |     0 
    131072 |                        |     1 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
11994     8241 0x20b810                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 11958 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |    22 js`math_random_tn(JSRuntime*)+0x155
     32768 |                        |    12 0x35ceac
     65536 |                        |     2 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 3998     8276 0x20b810                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  3985 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |     5 js`math_random_tn(JSRuntime*)+0x155
     32768 |                        |     5 0x1f8b91
     65536 |                        |     3 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 3997     8245 0x20b810                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  3983 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |     8 js`math_random_tn(JSRuntime*)+0x155
     32768 |                        |     6 0x1f2d16
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 1968     8791 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`getc+0x5f

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@  |  1834 libSystem.B.dylib`getc+0x5f
     16384 |@                       |   129 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |     5 js`js_GetToken+0x3e6
-------------------------------------------------------------------------------
Comment 7 Gregor Wagner 2009-08-03 15:20:05 PDT
Created attachment 392349 [details]
string-base64 lock results

top:
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
24759     8271 0x20ae30                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ | 24667 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |    40 js`JS_strtod+0x201
     32768 |                        |    45 js`js_strtod+0x1cc
     65536 |                        |     5 
    131072 |                        |     2 
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 8189     8248 0x20b800                     libnspr4.dylib`PR_Unlock+0x4a

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  8163 libnspr4.dylib`PR_Unlock+0x4a
     16384 |                        |    11 js`math_random_tn(JSRuntime*)+0x155
     32768 |                        |    15 0x1e5f4d
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
    1 33554432 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`fgetc+0x5f

      nsec ---- Time Distribution --- count Stack
  33554432 |@@@@@@@@@@@@@@@@@@@@@@@@|     1 libSystem.B.dylib`fgetc+0x5f
                                            js`Process(JSContext*, JSObject*,
                                            js`main+0x3c1
-------------------------------------------------------------------------------
Count     nsec Lock                         Caller
 3165     8735 libSystem.B.dylib`usual_extra+0x4 libSystem.B.dylib`getc+0x5f

      nsec ---- Time Distribution --- count Stack
      8192 |@@@@@@@@@@@@@@@@@@@@@@@ |  3101 libSystem.B.dylib`getc+0x5f
     16384 |                        |    53 js`GetChar(JSTokenStream*)+0x42e
     32768 |                        |    10 js`js_GetToken+0x3e6
     65536 |                        |     0 
    131072 |                        |     0 
    262144 |                        |     0 
    524288 |                        |     0 
   1048576 |                        |     1 
-------------------------------------------------------------------------------
Comment 8 Gregor Wagner 2009-08-03 16:15:16 PDT
Created attachment 392359 [details]
Summary of all benchmarks

As a summary the top 5 results for all benchmarks with the ranking according to plockstat.
Comment 9 Gregor Wagner 2009-08-03 16:40:50 PDT
Created attachment 392369 [details]
v8 run.js lock stats

As a summary the top 20 results for all v8 benchmarks with the ranking according to plockstat.
Comment 10 Brendan Eich [:brendan] 2009-08-03 16:57:45 PDT
Really want to see results with the patch for bug 507526 applied.

/be
Comment 11 Gregor Wagner 2009-08-03 17:15:00 PDT
Created attachment 392377 [details]
SS getc_unlocked results

SS benchmarks with getc_unlocked instead of getc.
All locks for getc called from GetChar disappear.
Comment 12 Robert Sayre 2009-08-03 17:27:01 PDT
which shell did you use to make these?
Comment 13 Gregor Wagner 2009-08-03 17:29:42 PDT
I used ../configure  --enable-threadsafe --with-system-nspr
Comment 14 Ryan VanderMeulen [:RyanVM] 2011-11-22 19:56:07 PST
Is there something to do here still?
Comment 15 Ryan VanderMeulen [:RyanVM] 2011-12-07 19:58:14 PST
Per Gregor, this doesn't need to be open anymore.

Note You need to log in before you can comment on or make changes to this bug.