Ignore:
Timestamp:
Jun 30, 2018, 3:56:54 PM (6 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
Children:
22cf65e
Parents:
2ebcb28 (diff), 35a9e41 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg2:software/cfa/cfa-cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/papers/concurrency/Paper.tex

    r2ebcb28 r73de175  
    764764};
    765765void main( Format & fmt ) with( fmt ) {
    766         for ( ;; ) {   
     766        for ( ;; ) {
    767767                for ( g = 0; g < 5; g += 1 ) {      // group
    768768                        for ( b = 0; b < 4; b += 1 ) { // block
     
    15461546A thread blocks until an appropriate partner arrives.
    15471547The complexity is exchanging phone numbers in the monitor because of the mutual-exclusion property.
    1548 For signal scheduling, the @exchange@ condition is necessary to block the thread finding the match, while the matcher unblocks to take the opposite number, post its phone number, and unblock the partner. 
     1548For signal scheduling, the @exchange@ condition is necessary to block the thread finding the match, while the matcher unblocks to take the opposite number, post its phone number, and unblock the partner.
    15491549For signal-block scheduling, the implicit urgent-queue replaces the explict @exchange@-condition and @signal_block@ puts the finding thread on the urgent condition and unblocks the matcher.
    15501550
     
    22292229\multicolumn{1}{c|}{} & \multicolumn{1}{c|}{Median} &\multicolumn{1}{c|}{Average} & \multicolumn{1}{c|}{Std Dev} \\
    22302230\hline
    2231 Kernel Thread   & 241.5         & 243.86        & 5.08 \\
    2232 \CFA Coroutine  & 38            & 38            & 0    \\
    2233 \CFA Thread             & 103           & 102.96        & 2.96 \\
    2234 \uC Coroutine   & 46            & 45.86         & 0.35 \\
    2235 \uC Thread              & 98            & 99.11         & 1.42 \\
    2236 Goroutine               & 150           & 149.96        & 3.16 \\
    2237 Java Thread             & 289           & 290.68        & 8.72 \\
     2231Kernel Thread   & 333.5 & 332.96        & 4.1 \\
     2232\CFA Coroutine  & 49            & 48.68 & 0.47    \\
     2233\CFA Thread             & 105           & 105.57        & 1.37 \\
     2234\uC Coroutine   & 44            & 44            & 0 \\
     2235\uC Thread              & 100           & 99.29 & 0.96 \\
     2236Goroutine               & 145           & 147.25        & 4.15 \\
     2237Java Thread             & 373.5 & 375.14        & 8.72 \\
    22382238\hline
    22392239\end{tabular}
     
    22642264\multicolumn{1}{c|}{} & \multicolumn{1}{c|}{Median} &\multicolumn{1}{c|}{Average} & \multicolumn{1}{c|}{Std Dev} \\
    22652265\hline
    2266 C routine                                                       & 2                     & 2                     & 0    \\
    2267 FetchAdd + FetchSub                                     & 26            & 26            & 0    \\
    2268 Pthreads Mutex Lock                                     & 31            & 31.86         & 0.99 \\
    2269 \uC @monitor@ member routine            & 30            & 30            & 0    \\
    2270 \CFA @mutex@ routine, 1 argument        & 41            & 41.57         & 0.9  \\
    2271 \CFA @mutex@ routine, 2 argument        & 76            & 76.96         & 1.57 \\
    2272 \CFA @mutex@ routine, 4 argument        & 145           & 146.68        & 3.85 \\
    2273 Java synchronized routine                       & 27            & 28.57         & 2.6  \\
     2266C routine                                       & 2             & 2             & 0    \\
     2267FetchAdd + FetchSub                     & 26            & 26            & 0    \\
     2268Pthreads Mutex Lock                     & 31            & 31.71 & 0.97 \\
     2269\uC @monitor@ member routine            & 31            & 31            & 0    \\
     2270\CFA @mutex@ routine, 1 argument        & 46            & 46.68 & 0.93  \\
     2271\CFA @mutex@ routine, 2 argument        & 84            & 85.36 & 1.99 \\
     2272\CFA @mutex@ routine, 4 argument        & 158           & 161           & 4.22 \\
     2273Java synchronized routine               & 27.5  & 29.79 & 2.93  \\
    22742274\hline
    22752275\end{tabular}
     
    23282328\multicolumn{1}{c|}{} & \multicolumn{1}{c|}{Median} &\multicolumn{1}{c|}{Average} & \multicolumn{1}{c|}{Std Dev} \\
    23292329\hline
    2330 Pthreads Condition Variable             & 5902.5        & 6093.29       & 714.78 \\
    2331 \uC @signal@                                    & 322           & 323           & 3.36   \\
    2332 \CFA @signal@, 1 @monitor@              & 352.5         & 353.11        & 3.66   \\
    2333 \CFA @signal@, 2 @monitor@              & 430           & 430.29        & 8.97   \\
    2334 \CFA @signal@, 4 @monitor@              & 594.5         & 606.57        & 18.33  \\
    2335 Java @notify@                                   & 13831.5       & 15698.21      & 4782.3 \\
     2330Pthreads Condition Variable             & 6005  & 5681.43       & 835.45 \\
     2331\uC @signal@                                    & 324           & 325.54        & 3,02   \\
     2332\CFA @signal@, 1 @monitor@              & 368.5         & 370.61        & 4.77   \\
     2333\CFA @signal@, 2 @monitor@              & 467           & 470.5 & 6.79   \\
     2334\CFA @signal@, 4 @monitor@              & 700.5         & 702.46        & 7.23  \\
     2335Java @notify@                                   & 15471 & 172511        & 5689 \\
    23362336\hline
    23372337\end{tabular}
     
    23792379\multicolumn{1}{c|}{} & \multicolumn{1}{c|}{Median} &\multicolumn{1}{c|}{Average} & \multicolumn{1}{c|}{Std Dev} \\
    23802380\hline
    2381 \uC @_Accept@                           & 350           & 350.61        & 3.11  \\
    2382 \CFA @waitfor@, 1 @monitor@     & 358.5         & 358.36        & 3.82  \\
    2383 \CFA @waitfor@, 2 @monitor@     & 422           & 426.79        & 7.95  \\
    2384 \CFA @waitfor@, 4 @monitor@     & 579.5         & 585.46        & 11.25 \\
     2381\uC @_Accept@                           & 358           & 359.11        & 2.53  \\
     2382\CFA @waitfor@, 1 @monitor@     & 359           & 360.93        & 4.07  \\
     2383\CFA @waitfor@, 2 @monitor@     & 450           & 449.39        & 6.62  \\
     2384\CFA @waitfor@, 4 @monitor@     & 652           & 655.64        & 7.73 \\
    23852385\hline
    23862386\end{tabular}
     
    24112411\multicolumn{1}{c|}{} & \multicolumn{1}{c|}{Median} & \multicolumn{1}{c|}{Average} & \multicolumn{1}{c|}{Std Dev} \\
    24122412\hline
    2413 Pthreads                                & 26996         & 26984.71      & 156.6  \\
    2414 \CFA Coroutine Lazy             & 6                     & 5.71          & 0.45   \\
    2415 \CFA Coroutine Eager    & 708           & 706.68        & 4.82   \\
    2416 \CFA Thread                             & 1173.5        & 1176.18       & 15.18  \\
    2417 \uC Coroutine                   & 109           & 107.46        & 1.74   \\
    2418 \uC Thread                              & 526           & 530.89        & 9.73   \\
    2419 Goroutine                               & 2520.5        & 2530.93       & 61.56  \\
    2420 Java Thread                             & 91114.5       & 92272.79      & 961.58 \\
     2413Pthreads                                & 28091         & 28073.39      & 163.1  \\
     2414\CFA Coroutine Lazy             & 6                     & 6.07          & 0.26   \\
     2415\CFA Coroutine Eager    & 520           & 520.61        & 2.04   \\
     2416\CFA Thread                             & 2032  & 2016.29       & 112.07  \\
     2417\uC Coroutine                   & 106           & 107.36        & 1.47   \\
     2418\uC Thread                              & 536.5 & 537.07        & 4.64   \\
     2419Goroutine                               & 3103  & 3086.29       & 90.25  \\
     2420Java Thread                             & 103416.5      & 103732.29     & 1137 \\
    24212421\hline
    24222422\end{tabular}
Note: See TracChangeset for help on using the changeset viewer.