- Timestamp:
- May 29, 2023, 11:44:29 AM (3 years ago)
- Branches:
- ADT
- Children:
- fa2c005
- Parents:
- 3a513d89 (diff), 2b78949 (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. - Location:
- doc
- Files:
-
- 285 added
- 3 deleted
- 30 edited
-
LaTeXmacros/lstlang.sty (modified) (2 diffs)
-
bibliography/pl.bib (modified) (16 diffs)
-
papers/llheap/.gitignore (added)
-
papers/llheap/AMA-stix_New.zip (added)
-
papers/llheap/AMA-stix_New/Documents/.log (added)
-
papers/llheap/AMA-stix_New/Documents/README.txt (added)
-
papers/llheap/AMA-stix_New/Documents/wileyNJD-Doc.tex (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/STIXGeneral-Bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/STIXGeneral-BoldItalic.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/STIXGeneral-Italic.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/STIXGeneral-Regular.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/Windows-Stix-fontinstaller.exe (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/a_axxd65.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls1stix.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls1stixbb.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls1stixfrak.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls1stixscr.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls1stixsf.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls2stix.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls2stixcal.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls2stixex.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ls2stixtt.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ly1sti.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneral-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneral-bolditalic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneral-italic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneral.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneralsc-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneralsc-bold.vf (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneralsc.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1-stixgeneralsc.vf (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot1stix.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneral-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneral-bolditalic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneral-italic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneral.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneralsc-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneralsc-bold.vf (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneralsc.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2-stixgeneralsc.vf (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ot2stix.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-extra1.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-extra1.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-extra2.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-extra2.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-extra3.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-extra3.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbb-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbb-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbb.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbb.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbbit-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbbit-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbbit.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathbbit.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathcal-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathcal-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathcal.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathcal.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathex-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathex-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathex.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathex.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathfrak-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathfrak-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathfrak.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathfrak.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathit-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathit-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathit.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathit.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathrm-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathrm-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathrm.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathrm.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathscr-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathscr-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathscr.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathscr.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsf-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsf-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsf.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsf.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsfit-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsfit-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsfit.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathsfit.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathtt-bold.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathtt-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathtt.pfb (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-mathtt.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-ot1.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-ot2.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-t1.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix-ts1.enc (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix.dtx (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix.fdd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix.map (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/stix.sty (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneral-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneral-bolditalic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneral-italic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneral.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneralsc-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneralsc-bold.vf (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneralsc.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1-stixgeneralsc.vf (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/t1stix.fd (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ts1-stixgeneral-bold.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ts1-stixgeneral-bolditalic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ts1-stixgeneral-italic.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ts1-stixgeneral.tfm (added)
-
papers/llheap/AMA-stix_New/Stix-fonts/ts1stix.fd (added)
-
papers/llheap/AMA-stix_New/ama/NJDnatbib.sty (added)
-
papers/llheap/AMA-stix_New/ama/WileyNJD-v2.cls (added)
-
papers/llheap/AMA-stix_New/ama/empty.eps (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.aux (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.bbl (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.bib (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.blg (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.log (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.pag (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.synctex (added)
-
papers/llheap/AMA-stix_New/ama/wileyNJD-AMA.tex (added)
-
papers/llheap/Makefile (added)
-
papers/llheap/Paper.tex (added)
-
papers/llheap/WileyNJD-v2.cls (added)
-
papers/llheap/evaluations/algol-perf-eps/cache_scratch_0-scratch.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/cache_thrash_0-thrash.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/churn.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-dl.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-glc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-hrd.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-je.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-llh.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-pt3.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-rp.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-1-prod-1-cons-100-tbb.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-dl.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-glc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-hrd.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-je.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-llh.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-pt3.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-rp.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/mem-4-prod-4-cons-100-tbb.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-1-malloc-null.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-10-malloc-realloc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-11-calloc-realloc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-12-malloc-realloc-free.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-13-calloc-realloc-free.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-14-m-c-re-alloc-free.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-2-free-null.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-3-malloc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-4-realloc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-5-free.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-6-calloc.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-7-malloc-free.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-8-realloc-free.eps (added)
-
papers/llheap/evaluations/algol-perf-eps/speed-9-calloc-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/cache_scratch_0-scratch.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/cache_thrash_0-thrash.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/churn.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-dl.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-glc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-hrd.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-je.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-llh.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-pt3.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-rp.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-1-prod-1-cons-100-tbb.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-dl.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-glc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-hrd.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-je.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-llh.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-pt3.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-rp.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/mem-4-prod-4-cons-100-tbb.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-1-malloc-null.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-10-malloc-realloc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-11-calloc-realloc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-12-malloc-realloc-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-13-calloc-realloc-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-14-m-c-re-alloc-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-2-free-null.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-3-malloc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-4-realloc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-5-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-6-calloc.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-7-malloc-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-8-realloc-free.eps (added)
-
papers/llheap/evaluations/nasus-perf-eps/speed-9-calloc-free.eps (added)
-
papers/llheap/examples/C++Cor-ts.cpp (added)
-
papers/llheap/examples/DatingServiceThread.cfa (added)
-
papers/llheap/examples/Fib.c (added)
-
papers/llheap/examples/Fib.cfa (added)
-
papers/llheap/examples/Fib.cpp (added)
-
papers/llheap/examples/Fib.js (added)
-
papers/llheap/examples/Fib.py (added)
-
papers/llheap/examples/Fib.sim (added)
-
papers/llheap/examples/Fib1.c (added)
-
papers/llheap/examples/Fib2.c (added)
-
papers/llheap/examples/Fib2.cfa (added)
-
papers/llheap/examples/Fib2.cpp (added)
-
papers/llheap/examples/Fib2.py (added)
-
papers/llheap/examples/Fib3.c (added)
-
papers/llheap/examples/Fib3.cc (added)
-
papers/llheap/examples/FibRefactor.py (added)
-
papers/llheap/examples/Fmt.sim (added)
-
papers/llheap/examples/Format.c (added)
-
papers/llheap/examples/Format.cc (added)
-
papers/llheap/examples/Format.cfa (added)
-
papers/llheap/examples/Format.cpp (added)
-
papers/llheap/examples/Format.data (added)
-
papers/llheap/examples/Format.js (added)
-
papers/llheap/examples/Format.py (added)
-
papers/llheap/examples/Format.sim (added)
-
papers/llheap/examples/Format1.c (added)
-
papers/llheap/examples/PingPong.c (added)
-
papers/llheap/examples/PingPong.cc (added)
-
papers/llheap/examples/Pingpong.cc (added)
-
papers/llheap/examples/Pingpong.cfa (added)
-
papers/llheap/examples/Pingpong.py (added)
-
papers/llheap/examples/Pingpong2.cfa (added)
-
papers/llheap/examples/ProdCons.cfa (added)
-
papers/llheap/examples/ProdCons.cpp (added)
-
papers/llheap/examples/ProdCons.py (added)
-
papers/llheap/examples/ProdCons.sim (added)
-
papers/llheap/examples/RWMonitorEXT.cfa (added)
-
papers/llheap/examples/RWMonitorINT.cfa (added)
-
papers/llheap/examples/Refactor.py (added)
-
papers/llheap/examples/channels.go (added)
-
papers/llheap/examples/channels.rs (added)
-
papers/llheap/examples/counter.cpp (added)
-
papers/llheap/examples/future.rs (added)
-
papers/llheap/figures/AddressSpace.fig (added)
-
papers/llheap/figures/Alignment1.fig (added)
-
papers/llheap/figures/Alignment2.fig (added)
-
papers/llheap/figures/Alignment2Impl.fig (added)
-
papers/llheap/figures/AllocDS1.fig (added)
-
papers/llheap/figures/AllocDS2.fig (added)
-
papers/llheap/figures/AllocInducedActiveFalseSharing.fig (added)
-
papers/llheap/figures/AllocInducedPassiveFalseSharing.fig (added)
-
papers/llheap/figures/AllocatedObject.fig (added)
-
papers/llheap/figures/AllocatorComponents.fig (added)
-
papers/llheap/figures/AllocatorComponents.fig.bak (added)
-
papers/llheap/figures/CoalesceAllocated.fig (added)
-
papers/llheap/figures/CoalesceFree.fig (added)
-
papers/llheap/figures/CondSigWait.fig (added)
-
papers/llheap/figures/Container.fig (added)
-
papers/llheap/figures/ContainerFalseSharing1.fig (added)
-
papers/llheap/figures/ContainerFalseSharing2.fig (added)
-
papers/llheap/figures/ContainerNoOwnership.fig (added)
-
papers/llheap/figures/ContainerNoOwnershipFreelist.fig (added)
-
papers/llheap/figures/ContainerOwnership.fig (added)
-
papers/llheap/figures/ContainerOwnershipFreelist.fig (added)
-
papers/llheap/figures/ContigFragmentation.fig (added)
-
papers/llheap/figures/FakeHeader.fig (added)
-
papers/llheap/figures/FreeListAmongContainers.fig (added)
-
papers/llheap/figures/FreeListWithinContainers.fig (added)
-
papers/llheap/figures/FullCoroutinePhases.fig (added)
-
papers/llheap/figures/FullProdConsStack.fig (added)
-
papers/llheap/figures/Header.fig (added)
-
papers/llheap/figures/HeapStructure.fig (added)
-
papers/llheap/figures/IntExtFragmentation.fig (added)
-
papers/llheap/figures/MemoryFragmentation.fig (added)
-
papers/llheap/figures/MultipleHeapsNoOwnership.fig (added)
-
papers/llheap/figures/MultipleHeapsOwnership.fig (added)
-
papers/llheap/figures/MultipleHeapsOwnershipStorage.fig (added)
-
papers/llheap/figures/MultipleHeapsStorage.fig (added)
-
papers/llheap/figures/NewHeapStructure.eps (added)
-
papers/llheap/figures/NonContigFragmentation.fig (added)
-
papers/llheap/figures/ObjectHeaders.fig (added)
-
papers/llheap/figures/PerThreadHeap.fig (added)
-
papers/llheap/figures/PrivatePublicHeaps.fig (added)
-
papers/llheap/figures/ProgramFalseSharing.fig (added)
-
papers/llheap/figures/RemoteFreeList.fig (added)
-
papers/llheap/figures/RunTimeStructure.fig (added)
-
papers/llheap/figures/SharedHeaps.fig (added)
-
papers/llheap/figures/SingleHeap.fig (added)
-
papers/llheap/figures/SuperContainers.fig (added)
-
papers/llheap/figures/UserKernelHeaps.fig (added)
-
papers/llheap/figures/llheap.fig (added)
-
papers/llheap/local.bib (added)
-
proposals/alt-enums.md (added)
-
theses/colby_parsons_MMAth/Makefile (modified) (2 diffs)
-
theses/colby_parsons_MMAth/benchmarks/actors/data/nasus_CFA.txt (modified) (15 diffs)
-
theses/colby_parsons_MMAth/benchmarks/actors/data/pyke_CFA.txt (modified) (15 diffs)
-
theses/colby_parsons_MMAth/benchmarks/actors/plotData.py (modified) (3 diffs)
-
theses/colby_parsons_MMAth/benchmarks/channels/plotData.py (modified) (4 diffs)
-
theses/colby_parsons_MMAth/benchmarks/mutex_stmt/plotData.py (modified) (3 diffs)
-
theses/colby_parsons_MMAth/benchmarks/mutex_stmt/run (modified) (1 diff)
-
theses/colby_parsons_MMAth/code/swap_queues.cfa (modified) (3 diffs)
-
theses/colby_parsons_MMAth/figures/nasus_Aggregate_Lock_2.pgf (modified) (28 diffs)
-
theses/colby_parsons_MMAth/figures/nasus_Aggregate_Lock_4.pgf (modified) (47 diffs)
-
theses/colby_parsons_MMAth/figures/nasus_Aggregate_Lock_8.pgf (modified) (27 diffs)
-
theses/colby_parsons_MMAth/figures/nasus_Channel_Contention.pgf (modified) (16 diffs)
-
theses/colby_parsons_MMAth/figures/pyke_Aggregate_Lock_2.pgf (modified) (26 diffs)
-
theses/colby_parsons_MMAth/figures/pyke_Aggregate_Lock_4.pgf (modified) (48 diffs)
-
theses/colby_parsons_MMAth/figures/pyke_Aggregate_Lock_8.pgf (modified) (27 diffs)
-
theses/colby_parsons_MMAth/figures/pyke_Channel_Contention.pgf (modified) (16 diffs)
-
theses/colby_parsons_MMAth/glossary.tex (modified) (1 diff)
-
theses/colby_parsons_MMAth/local.bib (modified) (1 diff)
-
theses/colby_parsons_MMAth/style/cfa-format.tex (deleted)
-
theses/colby_parsons_MMAth/style/style.tex (modified) (1 diff)
-
theses/colby_parsons_MMAth/text/CFA_concurrency.tex (modified) (2 diffs)
-
theses/colby_parsons_MMAth/text/CFA_intro.tex (modified) (7 diffs)
-
theses/colby_parsons_MMAth/text/actors.tex (modified) (1 diff)
-
theses/colby_parsons_MMAth/text/channels.tex (modified) (4 diffs)
-
theses/colby_parsons_MMAth/text/frontpgs.tex (modified) (1 diff)
-
theses/colby_parsons_MMAth/text/intro.tex (modified) (1 diff)
-
theses/colby_parsons_MMAth/text/mutex_stmt.tex (modified) (10 diffs)
-
theses/colby_parsons_MMAth/text/waituntil.tex (added)
-
theses/colby_parsons_MMAth/thesis.tex (modified) (1 diff)
-
theses/colby_parsons_MMAth/version (deleted)
-
theses/colby_parsons_MMAth/version.sh (deleted)
-
theses/mike_brooks_MMath/pictures/lst-issues-direct.vsdx (modified) ( previous)
Legend:
- Unmodified
- Added
- Removed
-
doc/LaTeXmacros/lstlang.sty
r3a513d89 r044ae62 8 8 %% Created On : Sat May 13 16:34:42 2017 9 9 %% Last Modified By : Peter A. Buhr 10 %% Last Modified On : Mon May 31 08:20:41 202111 %% Update Count : 2810 %% Last Modified On : Tue May 2 08:52:35 2023 11 %% Update Count : 30 12 12 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 13 13 … … 112 112 \lstdefinelanguage{CFA}[ANSI]{C}{ 113 113 morekeywords={ 114 _Alignas, _Alignof, __alignof, __alignof__, asm, __asm, __asm__, __attribute, __attribute__, 115 auto, basetypeof, _Bool, catch, catchResume, choose, _Complex, __complex, __complex__, __const, __const__, 116 coroutine, disable, dtype, enable, exception, __extension__, fallthrough, fallthru, finally, fixup, 117 __float80, float80, __float128, float128, forall, ftype, generator, _Generic, _Imaginary, __imag, __imag__, 118 inline, __inline, __inline__, __int128, int128, __label__, monitor, mutex, _Noreturn, one_t, or, 119 otype, restrict, __restrict, __restrict__, recover, report, __signed, __signed__, _Static_assert, suspend, 120 thread, __thread, _Thread_local, throw, throwResume, timeout, trait, try, ttype, typeof, __typeof, __typeof__, 121 virtual, __volatile, __volatile__, waitfor, when, with, zero_t, 114 _Alignas, _Alignof, __alignof, __alignof__, and, asm, __asm, __asm__, _Atomic, __attribute, __attribute__, 115 __auto_type, basetypeof, _Bool, catch, catchResume, choose, coerce, _Complex, __complex, __complex__, __const, __const__, 116 coroutine, _Decimal32, _Decimal64, _Decimal128, disable, enable, exception, __extension__, fallthrough, fallthru, finally, fixup, 117 __float80, float80, __float128, float128, _Float16, _Float32, _Float32x, _Float64, _Float64x, _Float128, _Float128x, 118 forall, fortran, generator, _Generic, _Imaginary, __imag, __imag__, inline, __inline, __inline__, int128, __int128, __int128_t, 119 __label__, monitor, mutex, _Noreturn, __builtin_offsetof, one_t, or, recover, report, restrict, __restrict, __restrict__, 120 __signed, __signed__, _Static_assert, suspend, thread, __thread, _Thread_local, throw, throwResume, timeout, trait, try, 121 typeof, __typeof, __typeof__, typeid, __uint128_t, __builtin_va_arg, __builtin_va_list, virtual, __volatile, __volatile__, 122 vtable, waitfor, waituntil, when, with, zero_t, 122 123 }, 123 124 moredirectives={defined,include_next}% -
doc/bibliography/pl.bib
r3a513d89 r044ae62 198 198 } 199 199 200 @inproceedings{Koster16, 201 keywords = {Actor Model, Concurrency}, 202 contributer = {pabuhr@plg}, 203 author = {De Koster, Joeri and Van Cutsem, Tom and De Meuter, Wolfgang}, 204 title = {43 Years of Actors: A Taxonomy of Actor Models and Their Key Properties}, 205 publisher = {ACM}, 206 address = {New York, NY, USA}, 207 organization= {Proceedings of the 6th International Workshop on Programming Based on Actors, Agents, and Decentralized Control}, 208 pages = {31-40}, 209 numpages = {10}, 210 year = {2016}, 211 location = {Amsterdam, Netherlands}, 212 series = {AGERE 2016} 213 } 214 200 215 @misc{ActorBenchmarks, 201 keywords = {Actors, microbenchmarks, uC++. CAF, AkkaC, AkkaT, ProtoActor},216 keywords = {Actors, microbenchmarks, uC++. CAF, ProtoActor, AkkaC, AkkaT}, 202 217 contributer = {pabuhr@plg}, 203 218 key = {ActorBenchmarks}, … … 215 230 publisher = {MIT Press, Cambridge}, 216 231 year = 1986 232 } 233 234 @inproceedings{Srinivasan08, 235 author = {Srinivasan, Sriram and Mycroft, Alan}, 236 editor = {Vitek, Jan}, 237 title = {Kilim: Isolation-Typed Actors for Java}, 238 organization= {ECOOP 2008 -- Object-Oriented Programming}, 239 year = {2008}, 240 publisher = {Springer Berlin Heidelberg}, 241 address = {Berlin, Heidelberg}, 242 pages = {104--128}, 243 } 244 245 @inproceedings{Haller07, 246 author = {Haller, Philipp and Odersky, Martin}, 247 editor = {Murphy, Amy L. and Vitek, Jan}, 248 title = {Actors That Unify Threads and Events}, 249 organization= {Coordination Models and Languages}, 250 year = 2007, 251 publisher = {Springer Berlin Heidelberg}, 252 address = {Berlin, Heidelberg}, 253 pages = {171-190}, 217 254 } 218 255 … … 303 340 304 341 @article{Agrawal08, 305 keywords = {Adaptive scheduling, adversary, instantaneous parallelism, job scheduling, multiprocessing, multiprogramming, parallel computation, parallelism feedback, processor allocation, randomized algorithm, space sharing, span, thread scheduling, trim analysis, two-level scheduling, work, work-stealing},342 keywords = {Adaptive scheduling, multiprocessing, processor allocation, randomized algorithm, space sharing, thread scheduling, two-level scheduling, work-stealing}, 306 343 author = {Agrawal, Kunal and Leiserson, Charles E. and He, Yuxiong and Hsu, Wen Jing}, 307 344 title = {Adaptive Work-stealing with Parallelism Feedback}, … … 435 472 month = sep, 436 473 year = 2016, 437 note = {\href{http://doc.akka.io/docs/akka/2.4/AkkaScala.pdf}{http://\-doc.akka.io/\-docs/\-akka/\-2.4/\-AkkaScala.pdf}}, 474 note = {\url{http://doc.akka.io/docs/akka/2.4/AkkaScala.pdf}}, 475 } 476 477 @misc{AkkaClassic, 478 contributer = {pabuhr@plg}, 479 key = {AkkaClassic}, 480 title = {Akka Classic Actors}, 481 author = {{Lightbend}}, 482 howpublished= {\url{https://doc.akka.io/docs/akka/current/index-classic.html}}, 483 year = 2023, 438 484 } 439 485 … … 443 489 title = {Akka Futures}, 444 490 author = {{Lightbend}}, 445 howpublished= {\href{https://doc.akka.io/docs/akka/2.5/futures.html}{https://\-doc.akka.io/\-docs/\-akka/\-2.5/\-futures.html}}, 491 howpublished= {\url{https://doc.akka.io/docs/akka/2.5/futures.html}}, 492 year = 2022, 493 } 494 495 @misc{AkkaTyped, 496 contributer = {pabuhr@plg}, 497 key = {AkkaTyped}, 498 title = {Akka Typed Actors}, 499 author = {{Lightbend}}, 500 howpublished= {\url{https://doc.akka.io/docs/akka/2.5/typed-actors.html}}, 446 501 year = 2022, 447 502 } … … 1118 1173 @inproceedings{CAF, 1119 1174 keywords = {performance measurement, actor model, c++, message-oriented middleware, distributed debugging}, 1175 contributer = {pabuhr@plg}, 1120 1176 author = {Charousset, Dominik and Hiesgen, Raphael and Schmidt, Thomas C.}, 1121 title = {{CAF} - the {C}++ Actor Framework for Scalable and Resource-Efficient Applications},1177 title = {{CAF} -- the {C}++ Actor Framework for Scalable and Resource-Efficient Applications}, 1122 1178 publisher = {ACM}, 1123 1179 address = {New York, NY, USA}, 1124 1180 organization= {Proceedings of the 4th International Workshop on Programming Based on Actors Agents \& Decentralized Control}, 1125 1181 pages = {15-28}, 1126 numpages = {14},1182 numpages = 14, 1127 1183 location = {Portland, Oregon, USA}, 1128 1184 series = {AGERE'14}, 1129 year = {2014},1185 year = 2014, 1130 1186 } 1131 1187 … … 3102 3158 year = 2016, 3103 3159 note = {\href{http://erlang.org/doc/pdf/otp-system-documentation.pdf}{http://\-erlang.org/\-doc/\-pdf/\-otp-system-documentation.pdf}}, 3160 } 3161 3162 @misc{Soleimani16, 3163 keywords = {Erlang, scheduler, history}, 3164 contributer = {pabuhr@plg}, 3165 author = {Hamidreza Soleimani}, 3166 title = {Erlang Scheduler Details and Why It Matters}, 3167 month = feb, 3168 year = 2016, 3169 howpublished= {\url{https://hamidreza-s.github.io/erlang/scheduling/real-time/preemptive/migration/2016/02/09/erlang-scheduler-details.html}}, 3104 3170 } 3105 3171 … … 5336 5402 } 5337 5403 5404 @article{Lombardo19, 5405 contributer = {pabuhr@plg}, 5406 author = {Lombardo, Gianfranco and Fornacciari, Paolo and Mordonini, Monica and Tomaiuolo, Michele and Poggi, Agostino}, 5407 title = {A Multi-Agent Architecture for Data Analysis}, 5408 journal = {Future Internet}, 5409 volume = 11, 5410 year = 2019, 5411 number = 2, 5412 } 5413 5338 5414 @article{multilisp, 5339 5415 keywords = {futures, scheme}, … … 6618 6694 } 6619 6695 6696 @article{Varela01, 6697 keywords = {programming languages, SALSA, continuations, actors, java, internet, network computing, open systems, mobile computing}, 6698 contributer = {pabuhr@plg}, 6699 author = {Varela, Carlos and Agha, Gul}, 6700 title = {Programming Dynamically Reconfigurable Open Systems with SALSA}, 6701 issue_date = {December 2001}, 6702 publisher = {Association for Computing Machinery}, 6703 address = {New York, NY, USA}, 6704 volume = 36, 6705 number = 12, 6706 journal = {SIGPLAN Not.}, 6707 year = 2001, 6708 month = dec, 6709 pages = {20-34}, 6710 } 6711 6620 6712 @book{PowerPC, 6621 6713 key = {PowerPC processor}, … … 6679 6771 title = {Programming Languages -- {C}}, 6680 6772 organization= {International Standard ISO/IEC 9899:1999 (E)}, 6681 publisher = {American National Standards Institute},6773 publisher = {American National Standards Institute}, 6682 6774 address = {www.ansi.org}, 6683 6775 year = 1999, … … 6690 6782 title = {{C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Programming Language ISO/IEC 14882:1998}, 6691 6783 edition = {1st}, 6692 organization = {International Standard Organization},6784 organization= {International Standard Organization}, 6693 6785 address = {Geneva, Switzerland}, 6694 6786 year = 1998, … … 6981 7073 } 6982 7074 7075 @misc{protoactor, 7076 contributer = {pabuhr@plg}, 7077 key = {Protoactor}, 7078 author = {{proto.actor}}, 7079 title = {Asynkron AB}, 7080 year = 2023, 7081 howpublished= {\url{https://proto.actor}}, 7082 } 7083 6983 7084 @misc{Pthreads, 6984 7085 keywords = {pthreads, C concurrency}, … … 7458 7559 title = {The Semantics of a Simple Language for Parallel Programming}, 7459 7560 author = {Gilles Kahn}, 7460 booktitle= {IFIP Congress},7561 organization= {IFIP Congress}, 7461 7562 year = 1974, 7462 7563 } … … 8173 8274 8174 8275 @article{SysVABI, 8175 keywords = {System V ABI},8176 contributer = {a3moss@uwaterloo.ca},8276 keywords = {System V ABI}, 8277 contributer = {a3moss@uwaterloo.ca}, 8177 8278 title = {System {V} application binary interface}, 8178 8279 author = {Matz, Michael and Hubicka, Jan and Jaeger, Andreas and Mitchell, Mark}, … … 8180 8281 volume = {99}, 8181 8282 year = {2013} 8283 } 8284 8285 @article{Albert18, 8286 keywords = {actor-based concurrency, partial order reduction, systematic testing, synchronization, task independence}, 8287 contributer = {pabuhr@plg}, 8288 author = {Albert, Elvira and Arenas, Puri and G\'{o}mez-Zamalloa, Miguel}, 8289 title = {Systematic testing of actor systems}, 8290 journal = {Software Testing, Verification and Reliability}, 8291 volume = {28}, 8292 number = {3}, 8293 pages = {e1661}, 8294 year = {2018} 8182 8295 } 8183 8296 … … 8206 8319 journal = jcss, 8207 8320 year = 1978, 8208 volume = 17, pages = {348-375} 8321 volume = 17, 8322 pages = {348-375}, 8209 8323 } 8210 8324 -
doc/theses/colby_parsons_MMAth/Makefile
r3a513d89 r044ae62 13 13 ## Define the text source files. 14 14 15 SOURCES = ${addsuffix .tex, \ 16 text/CFA_intro \ 17 text/actors \ 18 text/frontpgs \ 19 text/CFA_concurrency \ 20 thesis \ 21 text/mutex_stmt \ 22 text/channels \ 15 SOURCES = ${addsuffix .tex, \ 16 text/intro \ 17 text/CFA_intro \ 18 text/actors \ 19 text/frontpgs \ 20 text/CFA_concurrency \ 21 thesis \ 22 text/mutex_stmt \ 23 text/channels \ 24 text/waituntil \ 23 25 } 24 26 25 FIGURES = ${addsuffix .pgf, \26 figures/pykeExecutor \27 figures/pykeCFAExecutor \28 figures/nasusExecutor \29 figures/nasusCFAExecutor \30 figures/pykeMatrix \31 figures/pykeCFAMatrix \32 figures/nasusMatrix \33 figures/nasusCFAMatrix \34 figures/pykeRepeat \35 figures/pykeCFARepeat \36 figures/nasusRepeat \37 figures/nasusCFARepeat \38 figures/pykeCFABalance-One \39 figures/nasusCFABalance-One \40 figures/pykeCFABalance-Multi \41 figures/nasusCFABalance-Multi \42 figures/pyke_Aggregate_Lock_2 \43 figures/pyke_Aggregate_Lock_4 \44 figures/pyke_Aggregate_Lock_8 \45 figures/nasus_Aggregate_Lock_2 \46 figures/nasus_Aggregate_Lock_4 \47 figures/nasus_Aggregate_Lock_8 \27 FIGURES = ${addsuffix .pgf, \ 28 figures/pykeExecutor \ 29 figures/pykeCFAExecutor \ 30 figures/nasusExecutor \ 31 figures/nasusCFAExecutor \ 32 figures/pykeMatrix \ 33 figures/pykeCFAMatrix \ 34 figures/nasusMatrix \ 35 figures/nasusCFAMatrix \ 36 figures/pykeRepeat \ 37 figures/pykeCFARepeat \ 38 figures/nasusRepeat \ 39 figures/nasusCFARepeat \ 40 figures/pykeCFABalance-One \ 41 figures/nasusCFABalance-One\ 42 figures/pykeCFABalance-Multi \ 43 figures/nasusCFABalance-Multi \ 44 figures/pyke_Aggregate_Lock_2 \ 45 figures/pyke_Aggregate_Lock_4 \ 46 figures/pyke_Aggregate_Lock_8 \ 47 figures/nasus_Aggregate_Lock_2 \ 48 figures/nasus_Aggregate_Lock_4 \ 49 figures/nasus_Aggregate_Lock_8 \ 48 50 figures/nasus_Channel_Contention \ 49 51 figures/pyke_Channel_Contention \ 50 52 } 51 53 52 DATA = data/pykeSendStatic \53 data/pykeSendDynamic\54 data/pykeExecutorMem\55 data/nasusSendStatic\56 data/nasusSendDynamic\57 data/pykeExecutorMem\54 DATA = data/pykeSendStatic \ 55 data/pykeSendDynamic\ 56 data/pykeExecutorMem\ 57 data/nasusSendStatic\ 58 data/nasusSendDynamic\ 59 data/pykeExecutorMem\ 58 60 59 PICTURES = ${addsuffix .tikz, \60 diagrams/standard_actor \61 diagrams/inverted_actor \62 diagrams/gulp \63 diagrams/chain_swap \64 diagrams/M_to_one_swap \65 diagrams/acyclic_swap \66 diagrams/cyclic_swap \61 PICTURES = ${addsuffix .tikz, \ 62 diagrams/standard_actor \ 63 diagrams/inverted_actor \ 64 diagrams/gulp \ 65 diagrams/chain_swap \ 66 diagrams/M_to_one_swap \ 67 diagrams/acyclic_swap \ 68 diagrams/cyclic_swap \ 67 69 } 68 70 … … 105 107 # Make index from *.aux entries and input index at end of document 106 108 makeglossaries -q -s ${Build}/${basename $@}.ist ${Build}/${basename $@} 107 -version.sh108 109 # Run again to finish citations 109 110 ${LaTeX} ${basename $@}.tex 110 111 111 112 112 ## Define the default recipes. -
doc/theses/colby_parsons_MMAth/benchmarks/actors/data/nasus_CFA.txt
r3a513d89 r044ae62 1 1 5 2 2 1 2 4 8 16 24 32 48 3 CFA-LV CFA-NS CFA-R3 Longest-Victim No-Stealing Random 4 4 executor 5 CFA-LV:5 Longest-Victim: 6 6 proc time (s) 7 7 1 29.22 … … 45 45 48 1.20 46 46 48 1.20 47 CFA-NS:47 No-Stealing: 48 48 proc time (s) 49 49 1 28.25 … … 87 87 48 1.18 88 88 48 1.16 89 CFA-R:89 Random: 90 90 proc time (s) 91 91 1 28.58 … … 131 131 132 132 matrix 133 CFA-LV:133 Longest-Victim: 134 134 proc time (s) 135 135 1 105.48 … … 173 173 48 2.75 174 174 48 2.96 175 CFA-NS:175 No-Stealing: 176 176 proc time (s) 177 177 1 106.01 … … 215 215 48 2.78 216 216 48 2.92 217 CFA-R:217 Random: 218 218 proc time (s) 219 219 1 105.91 … … 259 259 260 260 repeat 261 CFA-LV:261 Longest-Victim: 262 262 proc time (s) 263 263 1 1.17 … … 301 301 48 13.73 302 302 48 14.55 303 CFA-NS:303 No-Stealing: 304 304 proc time (s) 305 305 1 1.15 … … 343 343 48 13.03 344 344 48 12.83 345 CFA-R:345 Random: 346 346 proc time (s) 347 347 1 1.15 … … 387 387 388 388 balance_one 389 CFA-LV:389 Longest-Victim: 390 390 proc time (s) 391 391 1 20.06 … … 429 429 48 1.11 430 430 48 1.12 431 CFA-NS:431 No-Stealing: 432 432 proc time (s) 433 433 1 20.13 … … 471 471 48 19.95 472 472 48 20.00 473 CFA-R:473 Random: 474 474 proc time (s) 475 475 1 19.92 … … 515 515 516 516 balance_multi 517 CFA-LV:517 Longest-Victim: 518 518 proc time (s) 519 519 1 8.17 … … 557 557 48 5.75 558 558 48 5.68 559 CFA-NS:559 No-Stealing: 560 560 proc time (s) 561 561 1 8.10 … … 599 599 48 9.28 600 600 48 9.26 601 CFA-R:601 Random: 602 602 proc time (s) 603 603 1 8.08 -
doc/theses/colby_parsons_MMAth/benchmarks/actors/data/pyke_CFA.txt
r3a513d89 r044ae62 1 1 5 2 2 1 2 4 8 16 24 32 48 3 CFA-LV CFA-NS CFA-R3 Longest-Victim No-Stealing Random 4 4 executor 5 CFA-LV:5 Longest-Victim: 6 6 proc time (s) 7 7 1 29.04 … … 45 45 48 2.58 46 46 48 2.55 47 CFA-NS:47 No-Stealing: 48 48 proc time (s) 49 49 1 28.15 … … 87 87 48 2.59 88 88 48 2.60 89 CFA-R:89 Random: 90 90 proc time (s) 91 91 1 29.06 … … 131 131 132 132 matrix 133 CFA-LV:133 Longest-Victim: 134 134 proc time (s) 135 135 1 127.44 … … 173 173 48 6.83 174 174 48 6.81 175 CFA-NS:175 No-Stealing: 176 176 proc time (s) 177 177 1 127.64 … … 215 215 48 6.77 216 216 48 6.74 217 CFA-R:217 Random: 218 218 proc time (s) 219 219 1 127.26 … … 259 259 260 260 repeat 261 CFA-LV:261 Longest-Victim: 262 262 proc time (s) 263 263 1 1.16 … … 301 301 48 19.75 302 302 48 19.71 303 CFA-NS:303 No-Stealing: 304 304 proc time (s) 305 305 1 1.18 … … 343 343 48 13.88 344 344 48 13.71 345 CFA-R:345 Random: 346 346 proc time (s) 347 347 1 1.18 … … 387 387 388 388 balance_one 389 CFA-LV:389 Longest-Victim: 390 390 proc time (s) 391 391 1 19.46 … … 429 429 48 2.12 430 430 48 2.17 431 CFA-NS:431 No-Stealing: 432 432 proc time (s) 433 433 1 21.00 … … 471 471 48 47.50 472 472 48 47.72 473 CFA-R:473 Random: 474 474 proc time (s) 475 475 1 20.81 … … 515 515 516 516 balance_multi 517 CFA-LV:517 Longest-Victim: 518 518 proc time (s) 519 519 1 7.94 … … 557 557 48 14.38 558 558 48 14.50 559 CFA-NS:559 No-Stealing: 560 560 proc time (s) 561 561 1 8.48 … … 599 599 48 21.50 600 600 48 21.15 601 CFA-R:601 Random: 602 602 proc time (s) 603 603 1 8.49 -
doc/theses/colby_parsons_MMAth/benchmarks/actors/plotData.py
r3a513d89 r044ae62 2 2 import sys 3 3 import time 4 import itertools 4 5 import matplotlib.pyplot as plt 5 6 import matplotlib.ticker as ticks … … 17 18 'text.usetex': True, 18 19 'pgf.rcfonts': False, 20 'font.size': 16 19 21 }) 22 marker = itertools.cycle(('o', 's', 'D', 'x', 'p', '^', 'h', '*', 'v' )) 20 23 21 24 readfile = open(sys.argv[1], "r") … … 162 165 plt.xlabel("Cores") 163 166 for idx, arr in enumerate(data): 164 plt.errorbar( procs, arr, [bars[idx][0], bars[idx][1]], capsize=2, marker= 'o')167 plt.errorbar( procs, arr, [bars[idx][0], bars[idx][1]], capsize=2, marker=next(marker) ) 165 168 if currBench == Bench.Executor or currBench == Bench.Matrix or currBench == Bench.Balance_One or currBench == Bench.Repeat: 166 169 plt.yscale("log") -
doc/theses/colby_parsons_MMAth/benchmarks/channels/plotData.py
r3a513d89 r044ae62 2 2 import sys 3 3 import time 4 import itertools 4 5 import matplotlib.pyplot as plt 5 6 import matplotlib.ticker as ticks … … 17 18 'text.usetex': True, 18 19 'pgf.rcfonts': False, 20 'font.size': 16 19 21 }) 22 marker = itertools.cycle(('o', 's', 'D', 'x', 'p', '^', 'h', '*', 'v' )) 20 23 21 24 readfile = open(sys.argv[1], "r") … … 70 73 if currBench == Bench.Unset: 71 74 if line == "contend:": 72 name = "C ontend"75 name = "Channel Contention" 73 76 currBench = Bench.Contend 74 77 elif line == "zero:": … … 126 129 plt.xlabel("Cores") 127 130 for idx, arr in enumerate(data): 128 plt.errorbar( procs, arr, [bars[idx][0], bars[idx][1]], capsize=2, marker= 'o')131 plt.errorbar( procs, arr, [bars[idx][0], bars[idx][1]], capsize=2, marker=next(marker) ) 129 132 130 133 plt.yscale("log") -
doc/theses/colby_parsons_MMAth/benchmarks/mutex_stmt/plotData.py
r3a513d89 r044ae62 2 2 import sys 3 3 import time 4 import itertools 4 5 import matplotlib.pyplot as plt 5 6 import matplotlib.ticker as ticks … … 17 18 'text.usetex': True, 18 19 'pgf.rcfonts': False, 20 'font.size': 16 19 21 }) 22 marker = itertools.cycle(('o', 's', 'D', 'x', 'p', '^', 'h', '*', 'v' )) 20 23 21 24 readfile = open(sys.argv[1], "r") … … 99 102 plt.xlabel("Cores") 100 103 for idx, arr in enumerate(data): 101 plt.errorbar( procs, arr, [bars[idx][0], bars[idx][1]], capsize=2, marker= 'o')104 plt.errorbar( procs, arr, [bars[idx][0], bars[idx][1]], capsize=2, marker=next(marker) ) 102 105 plt.yscale("log") 103 106 plt.xticks(procs) -
doc/theses/colby_parsons_MMAth/benchmarks/mutex_stmt/run
r3a513d89 r044ae62 96 96 97 97 # toggle benchmarks 98 order=${ true}98 order=${false} 99 99 rand=${true} 100 100 baseline=${true} -
doc/theses/colby_parsons_MMAth/code/swap_queues.cfa
r3a513d89 r044ae62 1 // this is a code stub and will not compile 2 3 // tries to atomically swap two queues and returns 0p if the swap failed 4 // returns ptr to newly owned queue if swap succeeds 5 static inline work_queue * try_swap_queues( worker & this, unsigned int victim_idx, unsigned int my_idx ) with(this) { 1 // sequential equivalent swap 2 void swap( uint victim_idx, uint my_idx ) { 3 // Step 0: 6 4 work_queue * my_queue = request_queues[my_idx]; 7 work_queue * other_queue = request_queues[victim_idx]; 8 9 // if either queue is 0p then they are in the process of being stolen 10 if ( other_queue == 0p || my_queue == 0p ) return 0p; 11 12 // try to set our queue ptr to be 0p. If it fails someone moved our queue so return false 13 if ( !__atomic_compare_exchange_n( &request_queues[my_idx], &my_queue, 0p, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST ) ) 14 return 0p; 15 16 // try to set other queue ptr to be our queue ptr. If it fails someone moved the other queue so fix up then return false 17 if ( !__atomic_compare_exchange_n( &request_queues[victim_idx], &other_queue, my_queue, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST ) ) { 18 /* paranoid */ verify( request_queues[my_idx] == 0p ); 19 request_queues[my_idx] = my_queue; // reset my queue ptr back to appropriate val 20 return 0p; 21 } 22 23 // we have successfully swapped and since our queue is 0p no one will touch it so write back new queue ptr non atomically 24 request_queues[my_idx] = other_queue; // last write does not need to be atomic 25 return other_queue; 5 work_queue * vic_queue = request_queues[victim_idx]; 6 // Step 2: 7 request_queues[my_idx] = 0p; 8 // Step 3: 9 request_queues[victim_idx] = my_queue; 10 // Step 4: 11 request_queues[my_idx] = vic_queue; 26 12 } 27 13 … … 35 21 36 22 bool try_swap_queues( worker & this, uint victim_idx, uint my_idx ) with(this) { 23 // Step 0: 24 // request_queues is the shared array of all sharded queues 37 25 work_queue * my_queue = request_queues[my_idx]; 38 26 work_queue * vic_queue = request_queues[victim_idx]; 39 27 28 // Step 1: 40 29 // If either queue is 0p then they are in the process of being stolen 41 30 // 0p is CForAll's equivalent of C++'s nullptr 42 if ( vic_queue == 0p || my_queue == 0p) return false;31 if ( vic_queue == 0p ) return false; 43 32 44 // Try to set our queue ptr to be 0p. 45 // If this CAS fails someone moved our queue so return false 33 // Step 2: 34 // Try to set thief's queue ptr to be 0p. 35 // If this CAS fails someone stole thief's queue so return false 46 36 if ( !CAS( &request_queues[my_idx], &my_queue, 0p ) ) 47 37 return false; 48 49 // Try to set other queue ptr to be our queue ptr. 50 // If it fails someone moved the other queue, so fix up then return false 38 39 // Step 3: 40 // Try to set victim queue ptr to be thief's queue ptr. 41 // If it fails someone stole the other queue, so fix up then return false 51 42 if ( !CAS( &request_queues[victim_idx], &vic_queue, my_queue ) ) { 52 43 request_queues[my_idx] = my_queue; // reset queue ptr back to prev val … … 54 45 } 55 46 47 // Step 4: 56 48 // Successfully swapped. 57 // Our queue is 0p so no one will touch it so write back without CAS is safe 49 // Thief's ptr is 0p so no one will touch it 50 // Write back without CAS is safe 58 51 request_queues[my_idx] = vic_queue; 59 52 return true; -
doc/theses/colby_parsons_MMAth/figures/nasus_Aggregate_Lock_2.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=1.092918in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{5}\)}%235 \pgftext[x=0.399655in,y=1.057810in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{5}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 258 258 \pgfsetstrokecolor{textcolor}% 259 259 \pgfsetfillcolor{textcolor}% 260 \pgftext[x=0. 501581in,y=2.054062in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{6}\)}%260 \pgftext[x=0.399655in,y=2.018954in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{6}\)}% 261 261 \end{pgfscope}% 262 262 \begin{pgfscope}% … … 283 283 \pgfsetstrokecolor{textcolor}% 284 284 \pgfsetfillcolor{textcolor}% 285 \pgftext[x=0. 501581in,y=3.015207in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{7}\)}%285 \pgftext[x=0.399655in,y=2.980099in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{7}\)}% 286 286 \end{pgfscope}% 287 287 \begin{pgfscope}% … … 308 308 \pgfsetstrokecolor{textcolor}% 309 309 \pgfsetfillcolor{textcolor}% 310 \pgftext[x=0. 501581in,y=3.976351in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{8}\)}%310 \pgftext[x=0.399655in,y=3.941243in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{8}\)}% 311 311 \end{pgfscope}% 312 312 \begin{pgfscope}% … … 903 903 \pgfsetstrokecolor{textcolor}% 904 904 \pgfsetfillcolor{textcolor}% 905 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (entries)}%905 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (entries)}% 906 906 \end{pgfscope}% 907 907 \begin{pgfscope}% … … 1492 1492 \end{pgfscope}% 1493 1493 \begin{pgfscope}% 1494 \pgfsys@transformshift{3.129697in}{ 0in}%1494 \pgfsys@transformshift{3.129697in}{-3.129697in}% 1495 1495 \pgfsys@useobject{currentmarker}{}% 1496 1496 \end{pgfscope}% … … 1632 1632 \pgfusepath{clip}% 1633 1633 \pgfsetbuttcap% 1634 \pgfset roundjoin%1634 \pgfsetmiterjoin% 1635 1635 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1636 1636 \pgfsetfillcolor{currentfill}% 1637 1637 \pgfsetlinewidth{1.003750pt}% 1638 1638 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1639 \pgfsetstrokecolor{currentstroke}% 1640 \pgfsetdash{}{0pt}% 1641 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1642 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1643 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1644 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1645 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1646 \pgfpathclose% 1647 \pgfusepath{stroke,fill}% 1648 }% 1649 \begin{pgfscope}% 1650 \pgfsys@transformshift{1.025455in}{3.944983in}% 1651 \pgfsys@useobject{currentmarker}{}% 1652 \end{pgfscope}% 1653 \begin{pgfscope}% 1654 \pgfsys@transformshift{1.326061in}{3.977510in}% 1655 \pgfsys@useobject{currentmarker}{}% 1656 \end{pgfscope}% 1657 \begin{pgfscope}% 1658 \pgfsys@transformshift{1.927273in}{3.512430in}% 1659 \pgfsys@useobject{currentmarker}{}% 1660 \end{pgfscope}% 1661 \begin{pgfscope}% 1662 \pgfsys@transformshift{3.129697in}{3.352962in}% 1663 \pgfsys@useobject{currentmarker}{}% 1664 \end{pgfscope}% 1665 \begin{pgfscope}% 1666 \pgfsys@transformshift{4.332121in}{3.334197in}% 1667 \pgfsys@useobject{currentmarker}{}% 1668 \end{pgfscope}% 1669 \begin{pgfscope}% 1670 \pgfsys@transformshift{5.534545in}{3.317793in}% 1671 \pgfsys@useobject{currentmarker}{}% 1672 \end{pgfscope}% 1673 \end{pgfscope}% 1674 \begin{pgfscope}% 1675 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1676 \pgfusepath{clip}% 1677 \pgfsetrectcap% 1678 \pgfsetroundjoin% 1679 \pgfsetlinewidth{1.505625pt}% 1680 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1681 \pgfsetstrokecolor{currentstroke}% 1682 \pgfsetdash{}{0pt}% 1683 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.858276in}}% 1684 \pgfpathlineto{\pgfqpoint{1.326061in}{3.706065in}}% 1685 \pgfpathlineto{\pgfqpoint{1.927273in}{3.410611in}}% 1686 \pgfpathlineto{\pgfqpoint{3.129697in}{3.314183in}}% 1687 \pgfpathlineto{\pgfqpoint{4.332121in}{3.289120in}}% 1688 \pgfpathlineto{\pgfqpoint{5.534545in}{3.271348in}}% 1689 \pgfusepath{stroke}% 1690 \end{pgfscope}% 1691 \begin{pgfscope}% 1692 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1693 \pgfusepath{clip}% 1694 \pgfsetbuttcap% 1695 \pgfsetmiterjoin% 1696 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1697 \pgfsetfillcolor{currentfill}% 1698 \pgfsetlinewidth{1.003750pt}% 1699 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1700 \pgfsetstrokecolor{currentstroke}% 1701 \pgfsetdash{}{0pt}% 1702 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 1703 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 1704 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 1705 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 1706 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 1707 \pgfpathclose% 1708 \pgfusepath{stroke,fill}% 1709 }% 1710 \begin{pgfscope}% 1711 \pgfsys@transformshift{1.025455in}{3.858276in}% 1712 \pgfsys@useobject{currentmarker}{}% 1713 \end{pgfscope}% 1714 \begin{pgfscope}% 1715 \pgfsys@transformshift{1.326061in}{3.706065in}% 1716 \pgfsys@useobject{currentmarker}{}% 1717 \end{pgfscope}% 1718 \begin{pgfscope}% 1719 \pgfsys@transformshift{1.927273in}{3.410611in}% 1720 \pgfsys@useobject{currentmarker}{}% 1721 \end{pgfscope}% 1722 \begin{pgfscope}% 1723 \pgfsys@transformshift{3.129697in}{3.314183in}% 1724 \pgfsys@useobject{currentmarker}{}% 1725 \end{pgfscope}% 1726 \begin{pgfscope}% 1727 \pgfsys@transformshift{4.332121in}{3.289120in}% 1728 \pgfsys@useobject{currentmarker}{}% 1729 \end{pgfscope}% 1730 \begin{pgfscope}% 1731 \pgfsys@transformshift{5.534545in}{3.271348in}% 1732 \pgfsys@useobject{currentmarker}{}% 1733 \end{pgfscope}% 1734 \end{pgfscope}% 1735 \begin{pgfscope}% 1736 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1737 \pgfusepath{clip}% 1738 \pgfsetrectcap% 1739 \pgfsetroundjoin% 1740 \pgfsetlinewidth{1.505625pt}% 1741 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1742 \pgfsetstrokecolor{currentstroke}% 1743 \pgfsetdash{}{0pt}% 1744 \pgfpathmoveto{\pgfqpoint{1.025455in}{4.050730in}}% 1745 \pgfpathlineto{\pgfqpoint{1.326061in}{2.770511in}}% 1746 \pgfpathlineto{\pgfqpoint{1.927273in}{2.067529in}}% 1747 \pgfpathlineto{\pgfqpoint{3.129697in}{0.864067in}}% 1748 \pgfpathlineto{\pgfqpoint{4.332121in}{0.696000in}}% 1749 \pgfpathlineto{\pgfqpoint{5.534545in}{1.325424in}}% 1750 \pgfusepath{stroke}% 1751 \end{pgfscope}% 1752 \begin{pgfscope}% 1753 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1754 \pgfusepath{clip}% 1755 \pgfsetbuttcap% 1756 \pgfsetroundjoin% 1757 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1758 \pgfsetfillcolor{currentfill}% 1759 \pgfsetlinewidth{1.003750pt}% 1760 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1761 \pgfsetstrokecolor{currentstroke}% 1762 \pgfsetdash{}{0pt}% 1763 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1764 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1765 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1766 \pgfpathmoveto{\pgfqpoint{-0.041667in}{0.041667in}}% 1767 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1768 \pgfusepath{stroke,fill}% 1769 }% 1770 \begin{pgfscope}% 1771 \pgfsys@transformshift{1.025455in}{4.050730in}% 1772 \pgfsys@useobject{currentmarker}{}% 1773 \end{pgfscope}% 1774 \begin{pgfscope}% 1775 \pgfsys@transformshift{1.326061in}{2.770511in}% 1776 \pgfsys@useobject{currentmarker}{}% 1777 \end{pgfscope}% 1778 \begin{pgfscope}% 1779 \pgfsys@transformshift{1.927273in}{2.067529in}% 1780 \pgfsys@useobject{currentmarker}{}% 1781 \end{pgfscope}% 1782 \begin{pgfscope}% 1783 \pgfsys@transformshift{3.129697in}{0.864067in}% 1784 \pgfsys@useobject{currentmarker}{}% 1785 \end{pgfscope}% 1786 \begin{pgfscope}% 1787 \pgfsys@transformshift{4.332121in}{0.696000in}% 1788 \pgfsys@useobject{currentmarker}{}% 1789 \end{pgfscope}% 1790 \begin{pgfscope}% 1791 \pgfsys@transformshift{5.534545in}{1.325424in}% 1792 \pgfsys@useobject{currentmarker}{}% 1793 \end{pgfscope}% 1794 \end{pgfscope}% 1795 \begin{pgfscope}% 1796 \pgfsetrectcap% 1797 \pgfsetmiterjoin% 1798 \pgfsetlinewidth{0.803000pt}% 1799 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1800 \pgfsetstrokecolor{currentstroke}% 1801 \pgfsetdash{}{0pt}% 1802 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1803 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 1804 \pgfusepath{stroke}% 1805 \end{pgfscope}% 1806 \begin{pgfscope}% 1807 \pgfsetrectcap% 1808 \pgfsetmiterjoin% 1809 \pgfsetlinewidth{0.803000pt}% 1810 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1811 \pgfsetstrokecolor{currentstroke}% 1812 \pgfsetdash{}{0pt}% 1813 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 1814 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1815 \pgfusepath{stroke}% 1816 \end{pgfscope}% 1817 \begin{pgfscope}% 1818 \pgfsetrectcap% 1819 \pgfsetmiterjoin% 1820 \pgfsetlinewidth{0.803000pt}% 1821 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1822 \pgfsetstrokecolor{currentstroke}% 1823 \pgfsetdash{}{0pt}% 1824 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1825 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 1826 \pgfusepath{stroke}% 1827 \end{pgfscope}% 1828 \begin{pgfscope}% 1829 \pgfsetrectcap% 1830 \pgfsetmiterjoin% 1831 \pgfsetlinewidth{0.803000pt}% 1832 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1833 \pgfsetstrokecolor{currentstroke}% 1834 \pgfsetdash{}{0pt}% 1835 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 1836 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1837 \pgfusepath{stroke}% 1838 \end{pgfscope}% 1839 \begin{pgfscope}% 1840 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 1841 \pgfsetstrokecolor{textcolor}% 1842 \pgfsetfillcolor{textcolor}% 1843 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Aggregate Lock Benchmark: 2 Locks}% 1844 \end{pgfscope}% 1845 \begin{pgfscope}% 1846 \pgfsetbuttcap% 1847 \pgfsetmiterjoin% 1848 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 1849 \pgfsetfillcolor{currentfill}% 1850 \pgfsetfillopacity{0.800000}% 1851 \pgfsetlinewidth{1.003750pt}% 1852 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 1853 \pgfsetstrokecolor{currentstroke}% 1854 \pgfsetstrokeopacity{0.800000}% 1855 \pgfsetdash{}{0pt}% 1856 \pgfpathmoveto{\pgfqpoint{3.602702in}{1.693747in}}% 1857 \pgfpathlineto{\pgfqpoint{5.604444in}{1.693747in}}% 1858 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{1.693747in}}{\pgfqpoint{5.648889in}{1.738192in}}% 1859 \pgfpathlineto{\pgfqpoint{5.648889in}{3.013808in}}% 1860 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.058253in}}{\pgfqpoint{5.604444in}{3.058253in}}% 1861 \pgfpathlineto{\pgfqpoint{3.602702in}{3.058253in}}% 1862 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{3.058253in}}{\pgfqpoint{3.558257in}{3.013808in}}% 1863 \pgfpathlineto{\pgfqpoint{3.558257in}{1.738192in}}% 1864 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{1.693747in}}{\pgfqpoint{3.602702in}{1.693747in}}% 1865 \pgfpathclose% 1866 \pgfusepath{stroke,fill}% 1867 \end{pgfscope}% 1868 \begin{pgfscope}% 1869 \pgfsetbuttcap% 1870 \pgfsetroundjoin% 1871 \pgfsetlinewidth{1.505625pt}% 1872 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1873 \pgfsetstrokecolor{currentstroke}% 1874 \pgfsetdash{}{0pt}% 1875 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.769364in}}% 1876 \pgfpathlineto{\pgfqpoint{3.869368in}{2.991586in}}% 1877 \pgfusepath{stroke}% 1878 \end{pgfscope}% 1879 \begin{pgfscope}% 1880 \pgfsetbuttcap% 1881 \pgfsetroundjoin% 1882 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1883 \pgfsetfillcolor{currentfill}% 1884 \pgfsetlinewidth{1.003750pt}% 1885 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1886 \pgfsetstrokecolor{currentstroke}% 1887 \pgfsetdash{}{0pt}% 1888 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1889 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1890 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1891 \pgfusepath{stroke,fill}% 1892 }% 1893 \begin{pgfscope}% 1894 \pgfsys@transformshift{3.869368in}{2.769364in}% 1895 \pgfsys@useobject{currentmarker}{}% 1896 \end{pgfscope}% 1897 \end{pgfscope}% 1898 \begin{pgfscope}% 1899 \pgfsetbuttcap% 1900 \pgfsetroundjoin% 1901 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1902 \pgfsetfillcolor{currentfill}% 1903 \pgfsetlinewidth{1.003750pt}% 1904 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1905 \pgfsetstrokecolor{currentstroke}% 1906 \pgfsetdash{}{0pt}% 1907 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1908 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1909 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1910 \pgfusepath{stroke,fill}% 1911 }% 1912 \begin{pgfscope}% 1913 \pgfsys@transformshift{3.869368in}{2.991586in}% 1914 \pgfsys@useobject{currentmarker}{}% 1915 \end{pgfscope}% 1916 \end{pgfscope}% 1917 \begin{pgfscope}% 1918 \pgfsetrectcap% 1919 \pgfsetroundjoin% 1920 \pgfsetlinewidth{1.505625pt}% 1921 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1922 \pgfsetstrokecolor{currentstroke}% 1923 \pgfsetdash{}{0pt}% 1924 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.880475in}}% 1925 \pgfpathlineto{\pgfqpoint{4.091591in}{2.880475in}}% 1926 \pgfusepath{stroke}% 1927 \end{pgfscope}% 1928 \begin{pgfscope}% 1929 \pgfsetbuttcap% 1930 \pgfsetroundjoin% 1931 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1932 \pgfsetfillcolor{currentfill}% 1933 \pgfsetlinewidth{1.003750pt}% 1934 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1639 1935 \pgfsetstrokecolor{currentstroke}% 1640 1936 \pgfsetdash{}{0pt}% … … 1653 1949 }% 1654 1950 \begin{pgfscope}% 1655 \pgfsys@transformshift{1.025455in}{3.944983in}% 1656 \pgfsys@useobject{currentmarker}{}% 1657 \end{pgfscope}% 1658 \begin{pgfscope}% 1659 \pgfsys@transformshift{1.326061in}{3.977510in}% 1660 \pgfsys@useobject{currentmarker}{}% 1661 \end{pgfscope}% 1662 \begin{pgfscope}% 1663 \pgfsys@transformshift{1.927273in}{3.512430in}% 1664 \pgfsys@useobject{currentmarker}{}% 1665 \end{pgfscope}% 1666 \begin{pgfscope}% 1667 \pgfsys@transformshift{3.129697in}{3.352962in}% 1668 \pgfsys@useobject{currentmarker}{}% 1669 \end{pgfscope}% 1670 \begin{pgfscope}% 1671 \pgfsys@transformshift{4.332121in}{3.334197in}% 1672 \pgfsys@useobject{currentmarker}{}% 1673 \end{pgfscope}% 1674 \begin{pgfscope}% 1675 \pgfsys@transformshift{5.534545in}{3.317793in}% 1676 \pgfsys@useobject{currentmarker}{}% 1677 \end{pgfscope}% 1678 \end{pgfscope}% 1679 \begin{pgfscope}% 1680 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1681 \pgfusepath{clip}% 1682 \pgfsetrectcap% 1683 \pgfsetroundjoin% 1684 \pgfsetlinewidth{1.505625pt}% 1685 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1686 \pgfsetstrokecolor{currentstroke}% 1687 \pgfsetdash{}{0pt}% 1688 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.858276in}}% 1689 \pgfpathlineto{\pgfqpoint{1.326061in}{3.706065in}}% 1690 \pgfpathlineto{\pgfqpoint{1.927273in}{3.410611in}}% 1691 \pgfpathlineto{\pgfqpoint{3.129697in}{3.314183in}}% 1692 \pgfpathlineto{\pgfqpoint{4.332121in}{3.289120in}}% 1693 \pgfpathlineto{\pgfqpoint{5.534545in}{3.271348in}}% 1694 \pgfusepath{stroke}% 1695 \end{pgfscope}% 1696 \begin{pgfscope}% 1697 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1698 \pgfusepath{clip}% 1699 \pgfsetbuttcap% 1700 \pgfsetroundjoin% 1701 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1702 \pgfsetfillcolor{currentfill}% 1703 \pgfsetlinewidth{1.003750pt}% 1704 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1705 \pgfsetstrokecolor{currentstroke}% 1706 \pgfsetdash{}{0pt}% 1707 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1708 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1709 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1710 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1711 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1712 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1713 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1714 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1715 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1716 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1717 \pgfpathclose% 1718 \pgfusepath{stroke,fill}% 1719 }% 1720 \begin{pgfscope}% 1721 \pgfsys@transformshift{1.025455in}{3.858276in}% 1722 \pgfsys@useobject{currentmarker}{}% 1723 \end{pgfscope}% 1724 \begin{pgfscope}% 1725 \pgfsys@transformshift{1.326061in}{3.706065in}% 1726 \pgfsys@useobject{currentmarker}{}% 1727 \end{pgfscope}% 1728 \begin{pgfscope}% 1729 \pgfsys@transformshift{1.927273in}{3.410611in}% 1730 \pgfsys@useobject{currentmarker}{}% 1731 \end{pgfscope}% 1732 \begin{pgfscope}% 1733 \pgfsys@transformshift{3.129697in}{3.314183in}% 1734 \pgfsys@useobject{currentmarker}{}% 1735 \end{pgfscope}% 1736 \begin{pgfscope}% 1737 \pgfsys@transformshift{4.332121in}{3.289120in}% 1738 \pgfsys@useobject{currentmarker}{}% 1739 \end{pgfscope}% 1740 \begin{pgfscope}% 1741 \pgfsys@transformshift{5.534545in}{3.271348in}% 1742 \pgfsys@useobject{currentmarker}{}% 1743 \end{pgfscope}% 1744 \end{pgfscope}% 1745 \begin{pgfscope}% 1746 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1747 \pgfusepath{clip}% 1748 \pgfsetrectcap% 1749 \pgfsetroundjoin% 1750 \pgfsetlinewidth{1.505625pt}% 1751 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1752 \pgfsetstrokecolor{currentstroke}% 1753 \pgfsetdash{}{0pt}% 1754 \pgfpathmoveto{\pgfqpoint{1.025455in}{4.050730in}}% 1755 \pgfpathlineto{\pgfqpoint{1.326061in}{2.770511in}}% 1756 \pgfpathlineto{\pgfqpoint{1.927273in}{2.067529in}}% 1757 \pgfpathlineto{\pgfqpoint{3.129697in}{0.864067in}}% 1758 \pgfpathlineto{\pgfqpoint{4.332121in}{0.696000in}}% 1759 \pgfpathlineto{\pgfqpoint{5.534545in}{1.325424in}}% 1760 \pgfusepath{stroke}% 1761 \end{pgfscope}% 1762 \begin{pgfscope}% 1763 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1764 \pgfusepath{clip}% 1765 \pgfsetbuttcap% 1766 \pgfsetroundjoin% 1767 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1768 \pgfsetfillcolor{currentfill}% 1769 \pgfsetlinewidth{1.003750pt}% 1770 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1771 \pgfsetstrokecolor{currentstroke}% 1772 \pgfsetdash{}{0pt}% 1773 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1774 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1775 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1776 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1777 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1778 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1779 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1780 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1781 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1782 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1783 \pgfpathclose% 1784 \pgfusepath{stroke,fill}% 1785 }% 1786 \begin{pgfscope}% 1787 \pgfsys@transformshift{1.025455in}{4.050730in}% 1788 \pgfsys@useobject{currentmarker}{}% 1789 \end{pgfscope}% 1790 \begin{pgfscope}% 1791 \pgfsys@transformshift{1.326061in}{2.770511in}% 1792 \pgfsys@useobject{currentmarker}{}% 1793 \end{pgfscope}% 1794 \begin{pgfscope}% 1795 \pgfsys@transformshift{1.927273in}{2.067529in}% 1796 \pgfsys@useobject{currentmarker}{}% 1797 \end{pgfscope}% 1798 \begin{pgfscope}% 1799 \pgfsys@transformshift{3.129697in}{0.864067in}% 1800 \pgfsys@useobject{currentmarker}{}% 1801 \end{pgfscope}% 1802 \begin{pgfscope}% 1803 \pgfsys@transformshift{4.332121in}{0.696000in}% 1804 \pgfsys@useobject{currentmarker}{}% 1805 \end{pgfscope}% 1806 \begin{pgfscope}% 1807 \pgfsys@transformshift{5.534545in}{1.325424in}% 1808 \pgfsys@useobject{currentmarker}{}% 1809 \end{pgfscope}% 1810 \end{pgfscope}% 1811 \begin{pgfscope}% 1812 \pgfsetrectcap% 1813 \pgfsetmiterjoin% 1814 \pgfsetlinewidth{0.803000pt}% 1815 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1816 \pgfsetstrokecolor{currentstroke}% 1817 \pgfsetdash{}{0pt}% 1818 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1819 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 1820 \pgfusepath{stroke}% 1821 \end{pgfscope}% 1822 \begin{pgfscope}% 1823 \pgfsetrectcap% 1824 \pgfsetmiterjoin% 1825 \pgfsetlinewidth{0.803000pt}% 1826 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1827 \pgfsetstrokecolor{currentstroke}% 1828 \pgfsetdash{}{0pt}% 1829 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 1830 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1831 \pgfusepath{stroke}% 1832 \end{pgfscope}% 1833 \begin{pgfscope}% 1834 \pgfsetrectcap% 1835 \pgfsetmiterjoin% 1836 \pgfsetlinewidth{0.803000pt}% 1837 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1838 \pgfsetstrokecolor{currentstroke}% 1839 \pgfsetdash{}{0pt}% 1840 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1841 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 1842 \pgfusepath{stroke}% 1843 \end{pgfscope}% 1844 \begin{pgfscope}% 1845 \pgfsetrectcap% 1846 \pgfsetmiterjoin% 1847 \pgfsetlinewidth{0.803000pt}% 1848 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1849 \pgfsetstrokecolor{currentstroke}% 1850 \pgfsetdash{}{0pt}% 1851 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 1852 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1853 \pgfusepath{stroke}% 1951 \pgfsys@transformshift{3.869368in}{2.880475in}% 1952 \pgfsys@useobject{currentmarker}{}% 1953 \end{pgfscope}% 1854 1954 \end{pgfscope}% 1855 1955 \begin{pgfscope}% … … 1857 1957 \pgfsetstrokecolor{textcolor}% 1858 1958 \pgfsetfillcolor{textcolor}% 1859 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{12.000000}{14.400000}\selectfont Aggregate Lock Benchmark: 2 Locks}% 1860 \end{pgfscope}% 1861 \begin{pgfscope}% 1862 \pgfsetbuttcap% 1863 \pgfsetmiterjoin% 1864 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 1865 \pgfsetfillcolor{currentfill}% 1866 \pgfsetfillopacity{0.800000}% 1867 \pgfsetlinewidth{1.003750pt}% 1868 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 1869 \pgfsetstrokecolor{currentstroke}% 1870 \pgfsetstrokeopacity{0.800000}% 1871 \pgfsetdash{}{0pt}% 1872 \pgfpathmoveto{\pgfqpoint{4.403517in}{1.967821in}}% 1873 \pgfpathlineto{\pgfqpoint{5.662778in}{1.967821in}}% 1874 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{1.967821in}}{\pgfqpoint{5.690556in}{1.995599in}}% 1875 \pgfpathlineto{\pgfqpoint{5.690556in}{2.756401in}}% 1876 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{2.784179in}}{\pgfqpoint{5.662778in}{2.784179in}}% 1877 \pgfpathlineto{\pgfqpoint{4.403517in}{2.784179in}}% 1878 \pgfpathquadraticcurveto{\pgfqpoint{4.375739in}{2.784179in}}{\pgfqpoint{4.375739in}{2.756401in}}% 1879 \pgfpathlineto{\pgfqpoint{4.375739in}{1.995599in}}% 1880 \pgfpathquadraticcurveto{\pgfqpoint{4.375739in}{1.967821in}}{\pgfqpoint{4.403517in}{1.967821in}}% 1881 \pgfpathclose% 1882 \pgfusepath{stroke,fill}% 1883 \end{pgfscope}% 1884 \begin{pgfscope}% 1885 \pgfsetbuttcap% 1886 \pgfsetroundjoin% 1887 \pgfsetlinewidth{1.505625pt}% 1888 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1889 \pgfsetstrokecolor{currentstroke}% 1890 \pgfsetdash{}{0pt}% 1891 \pgfpathmoveto{\pgfqpoint{4.570184in}{2.610568in}}% 1892 \pgfpathlineto{\pgfqpoint{4.570184in}{2.749457in}}% 1893 \pgfusepath{stroke}% 1894 \end{pgfscope}% 1895 \begin{pgfscope}% 1896 \pgfsetbuttcap% 1897 \pgfsetroundjoin% 1898 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1899 \pgfsetfillcolor{currentfill}% 1900 \pgfsetlinewidth{1.003750pt}% 1901 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1959 \pgftext[x=4.269368in,y=2.802697in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-baseline}% 1960 \end{pgfscope}% 1961 \begin{pgfscope}% 1962 \pgfsetbuttcap% 1963 \pgfsetroundjoin% 1964 \pgfsetlinewidth{1.505625pt}% 1965 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1966 \pgfsetstrokecolor{currentstroke}% 1967 \pgfsetdash{}{0pt}% 1968 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.444904in}}% 1969 \pgfpathlineto{\pgfqpoint{3.869368in}{2.667126in}}% 1970 \pgfusepath{stroke}% 1971 \end{pgfscope}% 1972 \begin{pgfscope}% 1973 \pgfsetbuttcap% 1974 \pgfsetroundjoin% 1975 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1976 \pgfsetfillcolor{currentfill}% 1977 \pgfsetlinewidth{1.003750pt}% 1978 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1902 1979 \pgfsetstrokecolor{currentstroke}% 1903 1980 \pgfsetdash{}{0pt}% … … 1908 1985 }% 1909 1986 \begin{pgfscope}% 1910 \pgfsys@transformshift{ 4.570184in}{2.610568in}%1911 \pgfsys@useobject{currentmarker}{}% 1912 \end{pgfscope}% 1913 \end{pgfscope}% 1914 \begin{pgfscope}% 1915 \pgfsetbuttcap% 1916 \pgfsetroundjoin% 1917 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1918 \pgfsetfillcolor{currentfill}% 1919 \pgfsetlinewidth{1.003750pt}% 1920 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1987 \pgfsys@transformshift{3.869368in}{2.444904in}% 1988 \pgfsys@useobject{currentmarker}{}% 1989 \end{pgfscope}% 1990 \end{pgfscope}% 1991 \begin{pgfscope}% 1992 \pgfsetbuttcap% 1993 \pgfsetroundjoin% 1994 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1995 \pgfsetfillcolor{currentfill}% 1996 \pgfsetlinewidth{1.003750pt}% 1997 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1921 1998 \pgfsetstrokecolor{currentstroke}% 1922 1999 \pgfsetdash{}{0pt}% … … 1927 2004 }% 1928 2005 \begin{pgfscope}% 1929 \pgfsys@transformshift{ 4.570184in}{2.749457in}%2006 \pgfsys@transformshift{3.869368in}{2.667126in}% 1930 2007 \pgfsys@useobject{currentmarker}{}% 1931 2008 \end{pgfscope}% … … 1935 2012 \pgfsetroundjoin% 1936 2013 \pgfsetlinewidth{1.505625pt}% 1937 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1938 \pgfsetstrokecolor{currentstroke}% 1939 \pgfsetdash{}{0pt}% 1940 \pgfpathmoveto{\pgfqpoint{ 4.431295in}{2.680012in}}%1941 \pgfpathlineto{\pgfqpoint{4. 709073in}{2.680012in}}%1942 \pgfusepath{stroke}% 1943 \end{pgfscope}% 1944 \begin{pgfscope}% 1945 \pgfsetbuttcap% 1946 \pgfset roundjoin%1947 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1948 \pgfsetfillcolor{currentfill}% 1949 \pgfsetlinewidth{1.003750pt}% 1950 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%2014 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2015 \pgfsetstrokecolor{currentstroke}% 2016 \pgfsetdash{}{0pt}% 2017 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.556015in}}% 2018 \pgfpathlineto{\pgfqpoint{4.091591in}{2.556015in}}% 2019 \pgfusepath{stroke}% 2020 \end{pgfscope}% 2021 \begin{pgfscope}% 2022 \pgfsetbuttcap% 2023 \pgfsetmiterjoin% 2024 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2025 \pgfsetfillcolor{currentfill}% 2026 \pgfsetlinewidth{1.003750pt}% 2027 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1951 2028 \pgfsetstrokecolor{currentstroke}% 1952 2029 \pgfsetdash{}{0pt}% 1953 2030 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1954 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1955 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1956 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1957 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1958 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1959 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1960 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1961 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1962 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2031 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2032 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2033 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2034 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1963 2035 \pgfpathclose% 1964 2036 \pgfusepath{stroke,fill}% 1965 2037 }% 1966 2038 \begin{pgfscope}% 1967 \pgfsys@transformshift{ 4.570184in}{2.680012in}%2039 \pgfsys@transformshift{3.869368in}{2.556015in}% 1968 2040 \pgfsys@useobject{currentmarker}{}% 1969 2041 \end{pgfscope}% … … 1973 2045 \pgfsetstrokecolor{textcolor}% 1974 2046 \pgfsetfillcolor{textcolor}% 1975 \pgftext[x=4. 820184in,y=2.631401in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-baseline}%1976 \end{pgfscope}% 1977 \begin{pgfscope}% 1978 \pgfsetbuttcap% 1979 \pgfsetroundjoin% 1980 \pgfsetlinewidth{1.505625pt}% 1981 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%1982 \pgfsetstrokecolor{currentstroke}% 1983 \pgfsetdash{}{0pt}% 1984 \pgfpathmoveto{\pgfqpoint{ 4.570184in}{2.416895in}}%1985 \pgfpathlineto{\pgfqpoint{ 4.570184in}{2.555784in}}%1986 \pgfusepath{stroke}% 1987 \end{pgfscope}% 1988 \begin{pgfscope}% 1989 \pgfsetbuttcap% 1990 \pgfsetroundjoin% 1991 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%1992 \pgfsetfillcolor{currentfill}% 1993 \pgfsetlinewidth{1.003750pt}% 1994 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2047 \pgftext[x=4.269368in,y=2.478238in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-baseline}% 2048 \end{pgfscope}% 2049 \begin{pgfscope}% 2050 \pgfsetbuttcap% 2051 \pgfsetroundjoin% 2052 \pgfsetlinewidth{1.505625pt}% 2053 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2054 \pgfsetstrokecolor{currentstroke}% 2055 \pgfsetdash{}{0pt}% 2056 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.120444in}}% 2057 \pgfpathlineto{\pgfqpoint{3.869368in}{2.342667in}}% 2058 \pgfusepath{stroke}% 2059 \end{pgfscope}% 2060 \begin{pgfscope}% 2061 \pgfsetbuttcap% 2062 \pgfsetroundjoin% 2063 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2064 \pgfsetfillcolor{currentfill}% 2065 \pgfsetlinewidth{1.003750pt}% 2066 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1995 2067 \pgfsetstrokecolor{currentstroke}% 1996 2068 \pgfsetdash{}{0pt}% … … 2001 2073 }% 2002 2074 \begin{pgfscope}% 2003 \pgfsys@transformshift{ 4.570184in}{2.416895in}%2004 \pgfsys@useobject{currentmarker}{}% 2005 \end{pgfscope}% 2006 \end{pgfscope}% 2007 \begin{pgfscope}% 2008 \pgfsetbuttcap% 2009 \pgfsetroundjoin% 2010 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2011 \pgfsetfillcolor{currentfill}% 2012 \pgfsetlinewidth{1.003750pt}% 2013 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2075 \pgfsys@transformshift{3.869368in}{2.120444in}% 2076 \pgfsys@useobject{currentmarker}{}% 2077 \end{pgfscope}% 2078 \end{pgfscope}% 2079 \begin{pgfscope}% 2080 \pgfsetbuttcap% 2081 \pgfsetroundjoin% 2082 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2083 \pgfsetfillcolor{currentfill}% 2084 \pgfsetlinewidth{1.003750pt}% 2085 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2014 2086 \pgfsetstrokecolor{currentstroke}% 2015 2087 \pgfsetdash{}{0pt}% … … 2020 2092 }% 2021 2093 \begin{pgfscope}% 2022 \pgfsys@transformshift{ 4.570184in}{2.555784in}%2094 \pgfsys@transformshift{3.869368in}{2.342667in}% 2023 2095 \pgfsys@useobject{currentmarker}{}% 2024 2096 \end{pgfscope}% … … 2028 2100 \pgfsetroundjoin% 2029 2101 \pgfsetlinewidth{1.505625pt}% 2030 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2031 \pgfsetstrokecolor{currentstroke}% 2032 \pgfsetdash{}{0pt}% 2033 \pgfpathmoveto{\pgfqpoint{4.431295in}{2.486339in}}% 2034 \pgfpathlineto{\pgfqpoint{4.709073in}{2.486339in}}% 2035 \pgfusepath{stroke}% 2036 \end{pgfscope}% 2037 \begin{pgfscope}% 2038 \pgfsetbuttcap% 2039 \pgfsetroundjoin% 2040 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2041 \pgfsetfillcolor{currentfill}% 2042 \pgfsetlinewidth{1.003750pt}% 2043 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2044 \pgfsetstrokecolor{currentstroke}% 2045 \pgfsetdash{}{0pt}% 2046 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2047 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2048 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2049 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2050 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2051 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2052 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2053 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2054 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2055 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2102 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2103 \pgfsetstrokecolor{currentstroke}% 2104 \pgfsetdash{}{0pt}% 2105 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.231556in}}% 2106 \pgfpathlineto{\pgfqpoint{4.091591in}{2.231556in}}% 2107 \pgfusepath{stroke}% 2108 \end{pgfscope}% 2109 \begin{pgfscope}% 2110 \pgfsetbuttcap% 2111 \pgfsetmiterjoin% 2112 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2113 \pgfsetfillcolor{currentfill}% 2114 \pgfsetlinewidth{1.003750pt}% 2115 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2116 \pgfsetstrokecolor{currentstroke}% 2117 \pgfsetdash{}{0pt}% 2118 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 2119 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 2120 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 2121 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 2122 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 2056 2123 \pgfpathclose% 2057 2124 \pgfusepath{stroke,fill}% 2058 2125 }% 2059 2126 \begin{pgfscope}% 2060 \pgfsys@transformshift{ 4.570184in}{2.486339in}%2127 \pgfsys@transformshift{3.869368in}{2.231556in}% 2061 2128 \pgfsys@useobject{currentmarker}{}% 2062 2129 \end{pgfscope}% … … 2066 2133 \pgfsetstrokecolor{textcolor}% 2067 2134 \pgfsetfillcolor{textcolor}% 2068 \pgftext[x=4. 820184in,y=2.437728in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-baseline}%2069 \end{pgfscope}% 2070 \begin{pgfscope}% 2071 \pgfsetbuttcap% 2072 \pgfsetroundjoin% 2073 \pgfsetlinewidth{1.505625pt}% 2074 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%2075 \pgfsetstrokecolor{currentstroke}% 2076 \pgfsetdash{}{0pt}% 2077 \pgfpathmoveto{\pgfqpoint{ 4.570184in}{2.223222in}}%2078 \pgfpathlineto{\pgfqpoint{ 4.570184in}{2.362111in}}%2079 \pgfusepath{stroke}% 2080 \end{pgfscope}% 2081 \begin{pgfscope}% 2082 \pgfsetbuttcap% 2083 \pgfsetroundjoin% 2084 \definecolor{currentfill}{rgb}{0. 172549,0.627451,0.172549}%2085 \pgfsetfillcolor{currentfill}% 2086 \pgfsetlinewidth{1.003750pt}% 2087 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%2135 \pgftext[x=4.269368in,y=2.153778in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-rand}% 2136 \end{pgfscope}% 2137 \begin{pgfscope}% 2138 \pgfsetbuttcap% 2139 \pgfsetroundjoin% 2140 \pgfsetlinewidth{1.505625pt}% 2141 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2142 \pgfsetstrokecolor{currentstroke}% 2143 \pgfsetdash{}{0pt}% 2144 \pgfpathmoveto{\pgfqpoint{3.869368in}{1.795985in}}% 2145 \pgfpathlineto{\pgfqpoint{3.869368in}{2.018207in}}% 2146 \pgfusepath{stroke}% 2147 \end{pgfscope}% 2148 \begin{pgfscope}% 2149 \pgfsetbuttcap% 2150 \pgfsetroundjoin% 2151 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2152 \pgfsetfillcolor{currentfill}% 2153 \pgfsetlinewidth{1.003750pt}% 2154 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2088 2155 \pgfsetstrokecolor{currentstroke}% 2089 2156 \pgfsetdash{}{0pt}% … … 2094 2161 }% 2095 2162 \begin{pgfscope}% 2096 \pgfsys@transformshift{ 4.570184in}{2.223222in}%2097 \pgfsys@useobject{currentmarker}{}% 2098 \end{pgfscope}% 2099 \end{pgfscope}% 2100 \begin{pgfscope}% 2101 \pgfsetbuttcap% 2102 \pgfsetroundjoin% 2103 \definecolor{currentfill}{rgb}{0. 172549,0.627451,0.172549}%2104 \pgfsetfillcolor{currentfill}% 2105 \pgfsetlinewidth{1.003750pt}% 2106 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%2163 \pgfsys@transformshift{3.869368in}{1.795985in}% 2164 \pgfsys@useobject{currentmarker}{}% 2165 \end{pgfscope}% 2166 \end{pgfscope}% 2167 \begin{pgfscope}% 2168 \pgfsetbuttcap% 2169 \pgfsetroundjoin% 2170 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2171 \pgfsetfillcolor{currentfill}% 2172 \pgfsetlinewidth{1.003750pt}% 2173 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2107 2174 \pgfsetstrokecolor{currentstroke}% 2108 2175 \pgfsetdash{}{0pt}% … … 2113 2180 }% 2114 2181 \begin{pgfscope}% 2115 \pgfsys@transformshift{ 4.570184in}{2.362111in}%2182 \pgfsys@transformshift{3.869368in}{2.018207in}% 2116 2183 \pgfsys@useobject{currentmarker}{}% 2117 2184 \end{pgfscope}% … … 2121 2188 \pgfsetroundjoin% 2122 2189 \pgfsetlinewidth{1.505625pt}% 2123 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%2124 \pgfsetstrokecolor{currentstroke}% 2125 \pgfsetdash{}{0pt}% 2126 \pgfpathmoveto{\pgfqpoint{ 4.431295in}{2.292667in}}%2127 \pgfpathlineto{\pgfqpoint{4. 709073in}{2.292667in}}%2128 \pgfusepath{stroke}% 2129 \end{pgfscope}% 2130 \begin{pgfscope}% 2131 \pgfsetbuttcap% 2132 \pgfsetroundjoin% 2133 \definecolor{currentfill}{rgb}{0. 172549,0.627451,0.172549}%2134 \pgfsetfillcolor{currentfill}% 2135 \pgfsetlinewidth{1.003750pt}% 2136 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%2190 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2191 \pgfsetstrokecolor{currentstroke}% 2192 \pgfsetdash{}{0pt}% 2193 \pgfpathmoveto{\pgfqpoint{3.647146in}{1.907096in}}% 2194 \pgfpathlineto{\pgfqpoint{4.091591in}{1.907096in}}% 2195 \pgfusepath{stroke}% 2196 \end{pgfscope}% 2197 \begin{pgfscope}% 2198 \pgfsetbuttcap% 2199 \pgfsetroundjoin% 2200 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2201 \pgfsetfillcolor{currentfill}% 2202 \pgfsetlinewidth{1.003750pt}% 2203 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2137 2204 \pgfsetstrokecolor{currentstroke}% 2138 2205 \pgfsetdash{}{0pt}% 2139 2206 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2140 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2141 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2142 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2143 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2144 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2145 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2146 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2147 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2148 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2149 \pgfpathclose% 2150 \pgfusepath{stroke,fill}% 2151 }% 2152 \begin{pgfscope}% 2153 \pgfsys@transformshift{4.570184in}{2.292667in}% 2207 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2208 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2209 \pgfpathmoveto{\pgfqpoint{-0.041667in}{0.041667in}}% 2210 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2211 \pgfusepath{stroke,fill}% 2212 }% 2213 \begin{pgfscope}% 2214 \pgfsys@transformshift{3.869368in}{1.907096in}% 2154 2215 \pgfsys@useobject{currentmarker}{}% 2155 2216 \end{pgfscope}% … … 2159 2220 \pgfsetstrokecolor{textcolor}% 2160 2221 \pgfsetfillcolor{textcolor}% 2161 \pgftext[x=4.820184in,y=2.244056in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-rand}% 2162 \end{pgfscope}% 2163 \begin{pgfscope}% 2164 \pgfsetbuttcap% 2165 \pgfsetroundjoin% 2166 \pgfsetlinewidth{1.505625pt}% 2167 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2168 \pgfsetstrokecolor{currentstroke}% 2169 \pgfsetdash{}{0pt}% 2170 \pgfpathmoveto{\pgfqpoint{4.570184in}{2.029549in}}% 2171 \pgfpathlineto{\pgfqpoint{4.570184in}{2.168438in}}% 2172 \pgfusepath{stroke}% 2173 \end{pgfscope}% 2174 \begin{pgfscope}% 2175 \pgfsetbuttcap% 2176 \pgfsetroundjoin% 2177 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2178 \pgfsetfillcolor{currentfill}% 2179 \pgfsetlinewidth{1.003750pt}% 2180 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2181 \pgfsetstrokecolor{currentstroke}% 2182 \pgfsetdash{}{0pt}% 2183 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2184 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2185 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2186 \pgfusepath{stroke,fill}% 2187 }% 2188 \begin{pgfscope}% 2189 \pgfsys@transformshift{4.570184in}{2.029549in}% 2190 \pgfsys@useobject{currentmarker}{}% 2191 \end{pgfscope}% 2192 \end{pgfscope}% 2193 \begin{pgfscope}% 2194 \pgfsetbuttcap% 2195 \pgfsetroundjoin% 2196 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2197 \pgfsetfillcolor{currentfill}% 2198 \pgfsetlinewidth{1.003750pt}% 2199 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2200 \pgfsetstrokecolor{currentstroke}% 2201 \pgfsetdash{}{0pt}% 2202 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2203 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2204 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2205 \pgfusepath{stroke,fill}% 2206 }% 2207 \begin{pgfscope}% 2208 \pgfsys@transformshift{4.570184in}{2.168438in}% 2209 \pgfsys@useobject{currentmarker}{}% 2210 \end{pgfscope}% 2211 \end{pgfscope}% 2212 \begin{pgfscope}% 2213 \pgfsetrectcap% 2214 \pgfsetroundjoin% 2215 \pgfsetlinewidth{1.505625pt}% 2216 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2217 \pgfsetstrokecolor{currentstroke}% 2218 \pgfsetdash{}{0pt}% 2219 \pgfpathmoveto{\pgfqpoint{4.431295in}{2.098994in}}% 2220 \pgfpathlineto{\pgfqpoint{4.709073in}{2.098994in}}% 2221 \pgfusepath{stroke}% 2222 \end{pgfscope}% 2223 \begin{pgfscope}% 2224 \pgfsetbuttcap% 2225 \pgfsetroundjoin% 2226 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2227 \pgfsetfillcolor{currentfill}% 2228 \pgfsetlinewidth{1.003750pt}% 2229 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2230 \pgfsetstrokecolor{currentstroke}% 2231 \pgfsetdash{}{0pt}% 2232 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2233 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2234 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2235 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2236 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2237 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2238 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2239 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2240 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2241 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2242 \pgfpathclose% 2243 \pgfusepath{stroke,fill}% 2244 }% 2245 \begin{pgfscope}% 2246 \pgfsys@transformshift{4.570184in}{2.098994in}% 2247 \pgfsys@useobject{currentmarker}{}% 2248 \end{pgfscope}% 2249 \end{pgfscope}% 2250 \begin{pgfscope}% 2251 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2252 \pgfsetstrokecolor{textcolor}% 2253 \pgfsetfillcolor{textcolor}% 2254 \pgftext[x=4.820184in,y=2.050383in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-rand}% 2222 \pgftext[x=4.269368in,y=1.829318in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-rand}% 2255 2223 \end{pgfscope}% 2256 2224 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/nasus_Aggregate_Lock_4.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=0.732645in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{3}\)}%235 \pgftext[x=0.399655in,y=0.697537in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{3}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 258 258 \pgfsetstrokecolor{textcolor}% 259 259 \pgfsetfillcolor{textcolor}% 260 \pgftext[x=0. 501581in,y=1.427374in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{4}\)}%260 \pgftext[x=0.399655in,y=1.392266in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{4}\)}% 261 261 \end{pgfscope}% 262 262 \begin{pgfscope}% … … 283 283 \pgfsetstrokecolor{textcolor}% 284 284 \pgfsetfillcolor{textcolor}% 285 \pgftext[x=0. 501581in,y=2.122103in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{5}\)}%285 \pgftext[x=0.399655in,y=2.086994in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{5}\)}% 286 286 \end{pgfscope}% 287 287 \begin{pgfscope}% … … 308 308 \pgfsetstrokecolor{textcolor}% 309 309 \pgfsetfillcolor{textcolor}% 310 \pgftext[x=0. 501581in,y=2.816831in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{6}\)}%310 \pgftext[x=0.399655in,y=2.781723in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{6}\)}% 311 311 \end{pgfscope}% 312 312 \begin{pgfscope}% … … 333 333 \pgfsetstrokecolor{textcolor}% 334 334 \pgfsetfillcolor{textcolor}% 335 \pgftext[x=0. 501581in,y=3.511560in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{7}\)}%335 \pgftext[x=0.399655in,y=3.476452in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{7}\)}% 336 336 \end{pgfscope}% 337 337 \begin{pgfscope}% … … 1194 1194 \pgfsetstrokecolor{textcolor}% 1195 1195 \pgfsetfillcolor{textcolor}% 1196 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (entries)}%1196 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (entries)}% 1197 1197 \end{pgfscope}% 1198 1198 \begin{pgfscope}% … … 1857 1857 \pgfusepath{clip}% 1858 1858 \pgfsetbuttcap% 1859 \pgfset roundjoin%1859 \pgfsetmiterjoin% 1860 1860 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1861 1861 \pgfsetfillcolor{currentfill}% … … 1864 1864 \pgfsetstrokecolor{currentstroke}% 1865 1865 \pgfsetdash{}{0pt}% 1866 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1867 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1868 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1869 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1870 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1871 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1872 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1873 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1874 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1875 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1866 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 1867 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 1868 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 1869 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 1870 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 1871 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 1876 1872 \pgfpathclose% 1877 1873 \pgfusepath{stroke,fill}% … … 1923 1919 \pgfusepath{clip}% 1924 1920 \pgfsetbuttcap% 1925 \pgfset roundjoin%1921 \pgfsetmiterjoin% 1926 1922 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1927 1923 \pgfsetfillcolor{currentfill}% … … 1931 1927 \pgfsetdash{}{0pt}% 1932 1928 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1933 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1934 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1935 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1936 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1937 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1938 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1939 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1940 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1941 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1929 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 1930 \pgfpathlineto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1931 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1942 1932 \pgfpathclose% 1943 1933 \pgfusepath{stroke,fill}% … … 1989 1979 \pgfusepath{clip}% 1990 1980 \pgfsetbuttcap% 1991 \pgfset roundjoin%1981 \pgfsetmiterjoin% 1992 1982 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1993 1983 \pgfsetfillcolor{currentfill}% … … 1996 1986 \pgfsetstrokecolor{currentstroke}% 1997 1987 \pgfsetdash{}{0pt}% 1998 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1999 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2000 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2001 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2002 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2003 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2004 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2005 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2006 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2007 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1988 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.036084in}{-0.041667in}}{\pgfqpoint{0.036084in}{0.041667in}}{% 1989 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 1990 \pgfpathlineto{\pgfqpoint{-0.036084in}{0.020833in}}% 1991 \pgfpathlineto{\pgfqpoint{-0.036084in}{-0.020833in}}% 1992 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.041667in}}% 1993 \pgfpathlineto{\pgfqpoint{0.036084in}{-0.020833in}}% 1994 \pgfpathlineto{\pgfqpoint{0.036084in}{0.020833in}}% 2008 1995 \pgfpathclose% 2009 1996 \pgfusepath{stroke,fill}% … … 2055 2042 \pgfusepath{clip}% 2056 2043 \pgfsetbuttcap% 2057 \pgfset roundjoin%2044 \pgfsetbeveljoin% 2058 2045 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2059 2046 \pgfsetfillcolor{currentfill}% … … 2062 2049 \pgfsetstrokecolor{currentstroke}% 2063 2050 \pgfsetdash{}{0pt}% 2064 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2065 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2066 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2067 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2068 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2069 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2070 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2071 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2072 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2073 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2051 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 2052 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2053 \pgfpathlineto{\pgfqpoint{-0.009355in}{0.012876in}}% 2054 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 2055 \pgfpathlineto{\pgfqpoint{-0.015136in}{-0.004918in}}% 2056 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 2057 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.015915in}}% 2058 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 2059 \pgfpathlineto{\pgfqpoint{0.015136in}{-0.004918in}}% 2060 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 2061 \pgfpathlineto{\pgfqpoint{0.009355in}{0.012876in}}% 2074 2062 \pgfpathclose% 2075 2063 \pgfusepath{stroke,fill}% … … 2148 2136 \pgfsetstrokecolor{textcolor}% 2149 2137 \pgfsetfillcolor{textcolor}% 2150 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{1 2.000000}{14.400000}\selectfont Aggregate Lock Benchmark: 4 Locks}%2138 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Aggregate Lock Benchmark: 4 Locks}% 2151 2139 \end{pgfscope}% 2152 2140 \begin{pgfscope}% … … 2161 2149 \pgfsetstrokeopacity{0.800000}% 2162 2150 \pgfsetdash{}{0pt}% 2163 \pgfpathmoveto{\pgfqpoint{ 0.897222in}{0.597444in}}%2164 \pgfpathlineto{\pgfqpoint{ 2.156483in}{0.597444in}}%2165 \pgfpathquadraticcurveto{\pgfqpoint{ 2.184261in}{0.597444in}}{\pgfqpoint{2.184261in}{0.625222in}}%2166 \pgfpathlineto{\pgfqpoint{ 2.184261in}{1.386024in}}%2167 \pgfpathquadraticcurveto{\pgfqpoint{ 2.184261in}{1.413802in}}{\pgfqpoint{2.156483in}{1.413802in}}%2168 \pgfpathlineto{\pgfqpoint{ 0.897222in}{1.413802in}}%2169 \pgfpathquadraticcurveto{\pgfqpoint{ 0.869444in}{1.413802in}}{\pgfqpoint{0.869444in}{1.386024in}}%2170 \pgfpathlineto{\pgfqpoint{ 0.869444in}{0.625222in}}%2171 \pgfpathquadraticcurveto{\pgfqpoint{ 0.869444in}{0.597444in}}{\pgfqpoint{0.897222in}{0.597444in}}%2151 \pgfpathmoveto{\pgfqpoint{3.602702in}{1.693747in}}% 2152 \pgfpathlineto{\pgfqpoint{5.604444in}{1.693747in}}% 2153 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{1.693747in}}{\pgfqpoint{5.648889in}{1.738192in}}% 2154 \pgfpathlineto{\pgfqpoint{5.648889in}{3.013808in}}% 2155 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.058253in}}{\pgfqpoint{5.604444in}{3.058253in}}% 2156 \pgfpathlineto{\pgfqpoint{3.602702in}{3.058253in}}% 2157 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{3.058253in}}{\pgfqpoint{3.558257in}{3.013808in}}% 2158 \pgfpathlineto{\pgfqpoint{3.558257in}{1.738192in}}% 2159 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{1.693747in}}{\pgfqpoint{3.602702in}{1.693747in}}% 2172 2160 \pgfpathclose% 2173 2161 \pgfusepath{stroke,fill}% … … 2180 2168 \pgfsetstrokecolor{currentstroke}% 2181 2169 \pgfsetdash{}{0pt}% 2182 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{1.240191in}}%2183 \pgfpathlineto{\pgfqpoint{ 1.063889in}{1.379080in}}%2170 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.769364in}}% 2171 \pgfpathlineto{\pgfqpoint{3.869368in}{2.991586in}}% 2184 2172 \pgfusepath{stroke}% 2185 2173 \end{pgfscope}% … … 2199 2187 }% 2200 2188 \begin{pgfscope}% 2201 \pgfsys@transformshift{ 1.063889in}{1.240191in}%2189 \pgfsys@transformshift{3.869368in}{2.769364in}% 2202 2190 \pgfsys@useobject{currentmarker}{}% 2203 2191 \end{pgfscope}% … … 2218 2206 }% 2219 2207 \begin{pgfscope}% 2220 \pgfsys@transformshift{ 1.063889in}{1.379080in}%2208 \pgfsys@transformshift{3.869368in}{2.991586in}% 2221 2209 \pgfsys@useobject{currentmarker}{}% 2222 2210 \end{pgfscope}% … … 2229 2217 \pgfsetstrokecolor{currentstroke}% 2230 2218 \pgfsetdash{}{0pt}% 2231 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{1.309636in}}%2232 \pgfpathlineto{\pgfqpoint{ 1.202778in}{1.309636in}}%2233 \pgfusepath{stroke}% 2234 \end{pgfscope}% 2235 \begin{pgfscope}% 2236 \pgfsetbuttcap% 2237 \pgfset roundjoin%2219 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.880475in}}% 2220 \pgfpathlineto{\pgfqpoint{4.091591in}{2.880475in}}% 2221 \pgfusepath{stroke}% 2222 \end{pgfscope}% 2223 \begin{pgfscope}% 2224 \pgfsetbuttcap% 2225 \pgfsetmiterjoin% 2238 2226 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2239 2227 \pgfsetfillcolor{currentfill}% … … 2242 2230 \pgfsetstrokecolor{currentstroke}% 2243 2231 \pgfsetdash{}{0pt}% 2244 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2245 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2246 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2247 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2248 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2249 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2250 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2251 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2252 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2253 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2232 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 2233 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2234 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 2235 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 2236 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 2237 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 2254 2238 \pgfpathclose% 2255 2239 \pgfusepath{stroke,fill}% 2256 2240 }% 2257 2241 \begin{pgfscope}% 2258 \pgfsys@transformshift{ 1.063889in}{1.309636in}%2242 \pgfsys@transformshift{3.869368in}{2.880475in}% 2259 2243 \pgfsys@useobject{currentmarker}{}% 2260 2244 \end{pgfscope}% … … 2264 2248 \pgfsetstrokecolor{textcolor}% 2265 2249 \pgfsetfillcolor{textcolor}% 2266 \pgftext[x= 1.313889in,y=1.261024in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-baseline}%2250 \pgftext[x=4.269368in,y=2.802697in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-baseline}% 2267 2251 \end{pgfscope}% 2268 2252 \begin{pgfscope}% … … 2273 2257 \pgfsetstrokecolor{currentstroke}% 2274 2258 \pgfsetdash{}{0pt}% 2275 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{1.046518in}}%2276 \pgfpathlineto{\pgfqpoint{ 1.063889in}{1.185407in}}%2259 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.444904in}}% 2260 \pgfpathlineto{\pgfqpoint{3.869368in}{2.667126in}}% 2277 2261 \pgfusepath{stroke}% 2278 2262 \end{pgfscope}% … … 2292 2276 }% 2293 2277 \begin{pgfscope}% 2294 \pgfsys@transformshift{ 1.063889in}{1.046518in}%2278 \pgfsys@transformshift{3.869368in}{2.444904in}% 2295 2279 \pgfsys@useobject{currentmarker}{}% 2296 2280 \end{pgfscope}% … … 2311 2295 }% 2312 2296 \begin{pgfscope}% 2313 \pgfsys@transformshift{ 1.063889in}{1.185407in}%2297 \pgfsys@transformshift{3.869368in}{2.667126in}% 2314 2298 \pgfsys@useobject{currentmarker}{}% 2315 2299 \end{pgfscope}% … … 2322 2306 \pgfsetstrokecolor{currentstroke}% 2323 2307 \pgfsetdash{}{0pt}% 2324 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{1.115963in}}%2325 \pgfpathlineto{\pgfqpoint{ 1.202778in}{1.115963in}}%2326 \pgfusepath{stroke}% 2327 \end{pgfscope}% 2328 \begin{pgfscope}% 2329 \pgfsetbuttcap% 2330 \pgfset roundjoin%2308 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.556015in}}% 2309 \pgfpathlineto{\pgfqpoint{4.091591in}{2.556015in}}% 2310 \pgfusepath{stroke}% 2311 \end{pgfscope}% 2312 \begin{pgfscope}% 2313 \pgfsetbuttcap% 2314 \pgfsetmiterjoin% 2331 2315 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2332 2316 \pgfsetfillcolor{currentfill}% … … 2336 2320 \pgfsetdash{}{0pt}% 2337 2321 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2338 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2339 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2340 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2341 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2342 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2343 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2344 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2345 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2346 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2322 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2323 \pgfpathlineto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2324 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2347 2325 \pgfpathclose% 2348 2326 \pgfusepath{stroke,fill}% 2349 2327 }% 2350 2328 \begin{pgfscope}% 2351 \pgfsys@transformshift{ 1.063889in}{1.115963in}%2329 \pgfsys@transformshift{3.869368in}{2.556015in}% 2352 2330 \pgfsys@useobject{currentmarker}{}% 2353 2331 \end{pgfscope}% … … 2357 2335 \pgfsetstrokecolor{textcolor}% 2358 2336 \pgfsetfillcolor{textcolor}% 2359 \pgftext[x= 1.313889in,y=1.067352in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-baseline}%2337 \pgftext[x=4.269368in,y=2.478238in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-baseline}% 2360 2338 \end{pgfscope}% 2361 2339 \begin{pgfscope}% … … 2366 2344 \pgfsetstrokecolor{currentstroke}% 2367 2345 \pgfsetdash{}{0pt}% 2368 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{0.852846in}}%2369 \pgfpathlineto{\pgfqpoint{ 1.063889in}{0.991734in}}%2346 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.120444in}}% 2347 \pgfpathlineto{\pgfqpoint{3.869368in}{2.342667in}}% 2370 2348 \pgfusepath{stroke}% 2371 2349 \end{pgfscope}% … … 2385 2363 }% 2386 2364 \begin{pgfscope}% 2387 \pgfsys@transformshift{ 1.063889in}{0.852846in}%2365 \pgfsys@transformshift{3.869368in}{2.120444in}% 2388 2366 \pgfsys@useobject{currentmarker}{}% 2389 2367 \end{pgfscope}% … … 2404 2382 }% 2405 2383 \begin{pgfscope}% 2406 \pgfsys@transformshift{ 1.063889in}{0.991734in}%2384 \pgfsys@transformshift{3.869368in}{2.342667in}% 2407 2385 \pgfsys@useobject{currentmarker}{}% 2408 2386 \end{pgfscope}% … … 2415 2393 \pgfsetstrokecolor{currentstroke}% 2416 2394 \pgfsetdash{}{0pt}% 2417 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{0.922290in}}%2418 \pgfpathlineto{\pgfqpoint{ 1.202778in}{0.922290in}}%2419 \pgfusepath{stroke}% 2420 \end{pgfscope}% 2421 \begin{pgfscope}% 2422 \pgfsetbuttcap% 2423 \pgfset roundjoin%2395 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.231556in}}% 2396 \pgfpathlineto{\pgfqpoint{4.091591in}{2.231556in}}% 2397 \pgfusepath{stroke}% 2398 \end{pgfscope}% 2399 \begin{pgfscope}% 2400 \pgfsetbuttcap% 2401 \pgfsetmiterjoin% 2424 2402 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2425 2403 \pgfsetfillcolor{currentfill}% … … 2428 2406 \pgfsetstrokecolor{currentstroke}% 2429 2407 \pgfsetdash{}{0pt}% 2430 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2431 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2432 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2433 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2434 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2435 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2436 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2437 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2438 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2439 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2408 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.036084in}{-0.041667in}}{\pgfqpoint{0.036084in}{0.041667in}}{% 2409 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2410 \pgfpathlineto{\pgfqpoint{-0.036084in}{0.020833in}}% 2411 \pgfpathlineto{\pgfqpoint{-0.036084in}{-0.020833in}}% 2412 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.041667in}}% 2413 \pgfpathlineto{\pgfqpoint{0.036084in}{-0.020833in}}% 2414 \pgfpathlineto{\pgfqpoint{0.036084in}{0.020833in}}% 2440 2415 \pgfpathclose% 2441 2416 \pgfusepath{stroke,fill}% 2442 2417 }% 2443 2418 \begin{pgfscope}% 2444 \pgfsys@transformshift{ 1.063889in}{0.922290in}%2419 \pgfsys@transformshift{3.869368in}{2.231556in}% 2445 2420 \pgfsys@useobject{currentmarker}{}% 2446 2421 \end{pgfscope}% … … 2450 2425 \pgfsetstrokecolor{textcolor}% 2451 2426 \pgfsetfillcolor{textcolor}% 2452 \pgftext[x= 1.313889in,y=0.873679in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-rand}%2427 \pgftext[x=4.269368in,y=2.153778in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-rand}% 2453 2428 \end{pgfscope}% 2454 2429 \begin{pgfscope}% … … 2459 2434 \pgfsetstrokecolor{currentstroke}% 2460 2435 \pgfsetdash{}{0pt}% 2461 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{0.659173in}}%2462 \pgfpathlineto{\pgfqpoint{ 1.063889in}{0.798062in}}%2436 \pgfpathmoveto{\pgfqpoint{3.869368in}{1.795985in}}% 2437 \pgfpathlineto{\pgfqpoint{3.869368in}{2.018207in}}% 2463 2438 \pgfusepath{stroke}% 2464 2439 \end{pgfscope}% … … 2478 2453 }% 2479 2454 \begin{pgfscope}% 2480 \pgfsys@transformshift{ 1.063889in}{0.659173in}%2455 \pgfsys@transformshift{3.869368in}{1.795985in}% 2481 2456 \pgfsys@useobject{currentmarker}{}% 2482 2457 \end{pgfscope}% … … 2497 2472 }% 2498 2473 \begin{pgfscope}% 2499 \pgfsys@transformshift{ 1.063889in}{0.798062in}%2474 \pgfsys@transformshift{3.869368in}{2.018207in}% 2500 2475 \pgfsys@useobject{currentmarker}{}% 2501 2476 \end{pgfscope}% … … 2508 2483 \pgfsetstrokecolor{currentstroke}% 2509 2484 \pgfsetdash{}{0pt}% 2510 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{0.728617in}}%2511 \pgfpathlineto{\pgfqpoint{ 1.202778in}{0.728617in}}%2512 \pgfusepath{stroke}% 2513 \end{pgfscope}% 2514 \begin{pgfscope}% 2515 \pgfsetbuttcap% 2516 \pgfset roundjoin%2485 \pgfpathmoveto{\pgfqpoint{3.647146in}{1.907096in}}% 2486 \pgfpathlineto{\pgfqpoint{4.091591in}{1.907096in}}% 2487 \pgfusepath{stroke}% 2488 \end{pgfscope}% 2489 \begin{pgfscope}% 2490 \pgfsetbuttcap% 2491 \pgfsetbeveljoin% 2517 2492 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2518 2493 \pgfsetfillcolor{currentfill}% … … 2521 2496 \pgfsetstrokecolor{currentstroke}% 2522 2497 \pgfsetdash{}{0pt}% 2523 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2524 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2525 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2526 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2527 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2528 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2529 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2530 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2531 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2532 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2498 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 2499 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2500 \pgfpathlineto{\pgfqpoint{-0.009355in}{0.012876in}}% 2501 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 2502 \pgfpathlineto{\pgfqpoint{-0.015136in}{-0.004918in}}% 2503 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 2504 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.015915in}}% 2505 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 2506 \pgfpathlineto{\pgfqpoint{0.015136in}{-0.004918in}}% 2507 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 2508 \pgfpathlineto{\pgfqpoint{0.009355in}{0.012876in}}% 2533 2509 \pgfpathclose% 2534 2510 \pgfusepath{stroke,fill}% 2535 2511 }% 2536 2512 \begin{pgfscope}% 2537 \pgfsys@transformshift{ 1.063889in}{0.728617in}%2513 \pgfsys@transformshift{3.869368in}{1.907096in}% 2538 2514 \pgfsys@useobject{currentmarker}{}% 2539 2515 \end{pgfscope}% … … 2543 2519 \pgfsetstrokecolor{textcolor}% 2544 2520 \pgfsetfillcolor{textcolor}% 2545 \pgftext[x= 1.313889in,y=0.680006in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-rand}%2521 \pgftext[x=4.269368in,y=1.829318in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-rand}% 2546 2522 \end{pgfscope}% 2547 2523 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/nasus_Aggregate_Lock_8.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=0.735604in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{3}\)}%235 \pgftext[x=0.399655in,y=0.700496in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{3}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 258 258 \pgfsetstrokecolor{textcolor}% 259 259 \pgfsetfillcolor{textcolor}% 260 \pgftext[x=0. 501581in,y=1.378869in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{4}\)}%260 \pgftext[x=0.399655in,y=1.343761in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{4}\)}% 261 261 \end{pgfscope}% 262 262 \begin{pgfscope}% … … 283 283 \pgfsetstrokecolor{textcolor}% 284 284 \pgfsetfillcolor{textcolor}% 285 \pgftext[x=0. 501581in,y=2.022134in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{5}\)}%285 \pgftext[x=0.399655in,y=1.987026in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{5}\)}% 286 286 \end{pgfscope}% 287 287 \begin{pgfscope}% … … 308 308 \pgfsetstrokecolor{textcolor}% 309 309 \pgfsetfillcolor{textcolor}% 310 \pgftext[x=0. 501581in,y=2.665399in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{6}\)}%310 \pgftext[x=0.399655in,y=2.630291in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{6}\)}% 311 311 \end{pgfscope}% 312 312 \begin{pgfscope}% … … 333 333 \pgfsetstrokecolor{textcolor}% 334 334 \pgfsetfillcolor{textcolor}% 335 \pgftext[x=0. 501581in,y=3.308663in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{7}\)}%335 \pgftext[x=0.399655in,y=3.273555in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{7}\)}% 336 336 \end{pgfscope}% 337 337 \begin{pgfscope}% … … 358 358 \pgfsetstrokecolor{textcolor}% 359 359 \pgfsetfillcolor{textcolor}% 360 \pgftext[x=0. 501581in,y=3.951928in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{8}\)}%360 \pgftext[x=0.399655in,y=3.916820in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{8}\)}% 361 361 \end{pgfscope}% 362 362 \begin{pgfscope}% … … 1238 1238 \pgfsetstrokecolor{textcolor}% 1239 1239 \pgfsetfillcolor{textcolor}% 1240 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (entries)}%1240 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (entries)}% 1241 1241 \end{pgfscope}% 1242 1242 \begin{pgfscope}% … … 1901 1901 \pgfusepath{clip}% 1902 1902 \pgfsetbuttcap% 1903 \pgfset roundjoin%1903 \pgfsetmiterjoin% 1904 1904 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1905 1905 \pgfsetfillcolor{currentfill}% 1906 1906 \pgfsetlinewidth{1.003750pt}% 1907 1907 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1908 \pgfsetstrokecolor{currentstroke}% 1909 \pgfsetdash{}{0pt}% 1910 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1911 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.041667in}}% 1912 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1913 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1914 \pgfpathclose% 1915 \pgfusepath{stroke,fill}% 1916 }% 1917 \begin{pgfscope}% 1918 \pgfsys@transformshift{1.025455in}{3.772496in}% 1919 \pgfsys@useobject{currentmarker}{}% 1920 \end{pgfscope}% 1921 \begin{pgfscope}% 1922 \pgfsys@transformshift{1.326061in}{3.656800in}% 1923 \pgfsys@useobject{currentmarker}{}% 1924 \end{pgfscope}% 1925 \begin{pgfscope}% 1926 \pgfsys@transformshift{1.927273in}{3.464610in}% 1927 \pgfsys@useobject{currentmarker}{}% 1928 \end{pgfscope}% 1929 \begin{pgfscope}% 1930 \pgfsys@transformshift{3.129697in}{3.364807in}% 1931 \pgfsys@useobject{currentmarker}{}% 1932 \end{pgfscope}% 1933 \begin{pgfscope}% 1934 \pgfsys@transformshift{4.332121in}{3.378536in}% 1935 \pgfsys@useobject{currentmarker}{}% 1936 \end{pgfscope}% 1937 \begin{pgfscope}% 1938 \pgfsys@transformshift{5.534545in}{3.364296in}% 1939 \pgfsys@useobject{currentmarker}{}% 1940 \end{pgfscope}% 1941 \end{pgfscope}% 1942 \begin{pgfscope}% 1943 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1944 \pgfusepath{clip}% 1945 \pgfsetrectcap% 1946 \pgfsetroundjoin% 1947 \pgfsetlinewidth{1.505625pt}% 1948 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1949 \pgfsetstrokecolor{currentstroke}% 1950 \pgfsetdash{}{0pt}% 1951 \pgfpathmoveto{\pgfqpoint{1.025455in}{4.055876in}}% 1952 \pgfpathlineto{\pgfqpoint{1.326061in}{3.957809in}}% 1953 \pgfpathlineto{\pgfqpoint{1.927273in}{3.719959in}}% 1954 \pgfpathlineto{\pgfqpoint{3.129697in}{3.604550in}}% 1955 \pgfpathlineto{\pgfqpoint{4.332121in}{3.597915in}}% 1956 \pgfpathlineto{\pgfqpoint{5.534545in}{3.583182in}}% 1957 \pgfusepath{stroke}% 1958 \end{pgfscope}% 1959 \begin{pgfscope}% 1960 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1961 \pgfusepath{clip}% 1962 \pgfsetbuttcap% 1963 \pgfsetroundjoin% 1964 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1965 \pgfsetfillcolor{currentfill}% 1966 \pgfsetlinewidth{1.003750pt}% 1967 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1908 1968 \pgfsetstrokecolor{currentstroke}% 1909 1969 \pgfsetdash{}{0pt}% … … 1922 1982 }% 1923 1983 \begin{pgfscope}% 1924 \pgfsys@transformshift{1.025455in}{ 3.772496in}%1925 \pgfsys@useobject{currentmarker}{}% 1926 \end{pgfscope}% 1927 \begin{pgfscope}% 1928 \pgfsys@transformshift{1.326061in}{3. 656800in}%1929 \pgfsys@useobject{currentmarker}{}% 1930 \end{pgfscope}% 1931 \begin{pgfscope}% 1932 \pgfsys@transformshift{1.927273in}{3. 464610in}%1933 \pgfsys@useobject{currentmarker}{}% 1934 \end{pgfscope}% 1935 \begin{pgfscope}% 1936 \pgfsys@transformshift{3.129697in}{3. 364807in}%1937 \pgfsys@useobject{currentmarker}{}% 1938 \end{pgfscope}% 1939 \begin{pgfscope}% 1940 \pgfsys@transformshift{4.332121in}{3. 378536in}%1941 \pgfsys@useobject{currentmarker}{}% 1942 \end{pgfscope}% 1943 \begin{pgfscope}% 1944 \pgfsys@transformshift{5.534545in}{3. 364296in}%1984 \pgfsys@transformshift{1.025455in}{4.055876in}% 1985 \pgfsys@useobject{currentmarker}{}% 1986 \end{pgfscope}% 1987 \begin{pgfscope}% 1988 \pgfsys@transformshift{1.326061in}{3.957809in}% 1989 \pgfsys@useobject{currentmarker}{}% 1990 \end{pgfscope}% 1991 \begin{pgfscope}% 1992 \pgfsys@transformshift{1.927273in}{3.719959in}% 1993 \pgfsys@useobject{currentmarker}{}% 1994 \end{pgfscope}% 1995 \begin{pgfscope}% 1996 \pgfsys@transformshift{3.129697in}{3.604550in}% 1997 \pgfsys@useobject{currentmarker}{}% 1998 \end{pgfscope}% 1999 \begin{pgfscope}% 2000 \pgfsys@transformshift{4.332121in}{3.597915in}% 2001 \pgfsys@useobject{currentmarker}{}% 2002 \end{pgfscope}% 2003 \begin{pgfscope}% 2004 \pgfsys@transformshift{5.534545in}{3.583182in}% 1945 2005 \pgfsys@useobject{currentmarker}{}% 1946 2006 \end{pgfscope}% … … 1952 2012 \pgfsetroundjoin% 1953 2013 \pgfsetlinewidth{1.505625pt}% 2014 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2015 \pgfsetstrokecolor{currentstroke}% 2016 \pgfsetdash{}{0pt}% 2017 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.973113in}}% 2018 \pgfpathlineto{\pgfqpoint{1.326061in}{3.935736in}}% 2019 \pgfpathlineto{\pgfqpoint{1.927273in}{3.735517in}}% 2020 \pgfpathlineto{\pgfqpoint{3.129697in}{3.665369in}}% 2021 \pgfpathlineto{\pgfqpoint{4.332121in}{3.655510in}}% 2022 \pgfpathlineto{\pgfqpoint{5.534545in}{3.646498in}}% 2023 \pgfusepath{stroke}% 2024 \end{pgfscope}% 2025 \begin{pgfscope}% 2026 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2027 \pgfusepath{clip}% 2028 \pgfsetbuttcap% 2029 \pgfsetmiterjoin% 2030 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2031 \pgfsetfillcolor{currentfill}% 2032 \pgfsetlinewidth{1.003750pt}% 2033 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2034 \pgfsetstrokecolor{currentstroke}% 2035 \pgfsetdash{}{0pt}% 2036 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2037 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2038 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2039 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2040 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 2041 \pgfpathclose% 2042 \pgfusepath{stroke,fill}% 2043 }% 2044 \begin{pgfscope}% 2045 \pgfsys@transformshift{1.025455in}{3.973113in}% 2046 \pgfsys@useobject{currentmarker}{}% 2047 \end{pgfscope}% 2048 \begin{pgfscope}% 2049 \pgfsys@transformshift{1.326061in}{3.935736in}% 2050 \pgfsys@useobject{currentmarker}{}% 2051 \end{pgfscope}% 2052 \begin{pgfscope}% 2053 \pgfsys@transformshift{1.927273in}{3.735517in}% 2054 \pgfsys@useobject{currentmarker}{}% 2055 \end{pgfscope}% 2056 \begin{pgfscope}% 2057 \pgfsys@transformshift{3.129697in}{3.665369in}% 2058 \pgfsys@useobject{currentmarker}{}% 2059 \end{pgfscope}% 2060 \begin{pgfscope}% 2061 \pgfsys@transformshift{4.332121in}{3.655510in}% 2062 \pgfsys@useobject{currentmarker}{}% 2063 \end{pgfscope}% 2064 \begin{pgfscope}% 2065 \pgfsys@transformshift{5.534545in}{3.646498in}% 2066 \pgfsys@useobject{currentmarker}{}% 2067 \end{pgfscope}% 2068 \end{pgfscope}% 2069 \begin{pgfscope}% 2070 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2071 \pgfusepath{clip}% 2072 \pgfsetrectcap% 2073 \pgfsetroundjoin% 2074 \pgfsetlinewidth{1.505625pt}% 2075 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2076 \pgfsetstrokecolor{currentstroke}% 2077 \pgfsetdash{}{0pt}% 2078 \pgfpathmoveto{\pgfqpoint{1.025455in}{2.771065in}}% 2079 \pgfpathlineto{\pgfqpoint{1.326061in}{1.232613in}}% 2080 \pgfpathlineto{\pgfqpoint{1.927273in}{1.221115in}}% 2081 \pgfpathlineto{\pgfqpoint{3.129697in}{0.810456in}}% 2082 \pgfpathlineto{\pgfqpoint{4.332121in}{0.758096in}}% 2083 \pgfpathlineto{\pgfqpoint{5.534545in}{0.796927in}}% 2084 \pgfusepath{stroke}% 2085 \end{pgfscope}% 2086 \begin{pgfscope}% 2087 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2088 \pgfusepath{clip}% 2089 \pgfsetbuttcap% 2090 \pgfsetmiterjoin% 2091 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2092 \pgfsetfillcolor{currentfill}% 2093 \pgfsetlinewidth{1.003750pt}% 2094 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2095 \pgfsetstrokecolor{currentstroke}% 2096 \pgfsetdash{}{0pt}% 2097 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 2098 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 2099 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 2100 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 2101 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 2102 \pgfpathclose% 2103 \pgfusepath{stroke,fill}% 2104 }% 2105 \begin{pgfscope}% 2106 \pgfsys@transformshift{1.025455in}{2.771065in}% 2107 \pgfsys@useobject{currentmarker}{}% 2108 \end{pgfscope}% 2109 \begin{pgfscope}% 2110 \pgfsys@transformshift{1.326061in}{1.232613in}% 2111 \pgfsys@useobject{currentmarker}{}% 2112 \end{pgfscope}% 2113 \begin{pgfscope}% 2114 \pgfsys@transformshift{1.927273in}{1.221115in}% 2115 \pgfsys@useobject{currentmarker}{}% 2116 \end{pgfscope}% 2117 \begin{pgfscope}% 2118 \pgfsys@transformshift{3.129697in}{0.810456in}% 2119 \pgfsys@useobject{currentmarker}{}% 2120 \end{pgfscope}% 2121 \begin{pgfscope}% 2122 \pgfsys@transformshift{4.332121in}{0.758096in}% 2123 \pgfsys@useobject{currentmarker}{}% 2124 \end{pgfscope}% 2125 \begin{pgfscope}% 2126 \pgfsys@transformshift{5.534545in}{0.796927in}% 2127 \pgfsys@useobject{currentmarker}{}% 2128 \end{pgfscope}% 2129 \end{pgfscope}% 2130 \begin{pgfscope}% 2131 \pgfsetrectcap% 2132 \pgfsetmiterjoin% 2133 \pgfsetlinewidth{0.803000pt}% 2134 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2135 \pgfsetstrokecolor{currentstroke}% 2136 \pgfsetdash{}{0pt}% 2137 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2138 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 2139 \pgfusepath{stroke}% 2140 \end{pgfscope}% 2141 \begin{pgfscope}% 2142 \pgfsetrectcap% 2143 \pgfsetmiterjoin% 2144 \pgfsetlinewidth{0.803000pt}% 2145 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2146 \pgfsetstrokecolor{currentstroke}% 2147 \pgfsetdash{}{0pt}% 2148 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 2149 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2150 \pgfusepath{stroke}% 2151 \end{pgfscope}% 2152 \begin{pgfscope}% 2153 \pgfsetrectcap% 2154 \pgfsetmiterjoin% 2155 \pgfsetlinewidth{0.803000pt}% 2156 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2157 \pgfsetstrokecolor{currentstroke}% 2158 \pgfsetdash{}{0pt}% 2159 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2160 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 2161 \pgfusepath{stroke}% 2162 \end{pgfscope}% 2163 \begin{pgfscope}% 2164 \pgfsetrectcap% 2165 \pgfsetmiterjoin% 2166 \pgfsetlinewidth{0.803000pt}% 2167 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2168 \pgfsetstrokecolor{currentstroke}% 2169 \pgfsetdash{}{0pt}% 2170 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 2171 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2172 \pgfusepath{stroke}% 2173 \end{pgfscope}% 2174 \begin{pgfscope}% 2175 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2176 \pgfsetstrokecolor{textcolor}% 2177 \pgfsetfillcolor{textcolor}% 2178 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Aggregate Lock Benchmark: 8 Locks}% 2179 \end{pgfscope}% 2180 \begin{pgfscope}% 2181 \pgfsetbuttcap% 2182 \pgfsetmiterjoin% 2183 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 2184 \pgfsetfillcolor{currentfill}% 2185 \pgfsetfillopacity{0.800000}% 2186 \pgfsetlinewidth{1.003750pt}% 2187 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 2188 \pgfsetstrokecolor{currentstroke}% 2189 \pgfsetstrokeopacity{0.800000}% 2190 \pgfsetdash{}{0pt}% 2191 \pgfpathmoveto{\pgfqpoint{3.602702in}{1.693747in}}% 2192 \pgfpathlineto{\pgfqpoint{5.604444in}{1.693747in}}% 2193 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{1.693747in}}{\pgfqpoint{5.648889in}{1.738192in}}% 2194 \pgfpathlineto{\pgfqpoint{5.648889in}{3.013808in}}% 2195 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.058253in}}{\pgfqpoint{5.604444in}{3.058253in}}% 2196 \pgfpathlineto{\pgfqpoint{3.602702in}{3.058253in}}% 2197 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{3.058253in}}{\pgfqpoint{3.558257in}{3.013808in}}% 2198 \pgfpathlineto{\pgfqpoint{3.558257in}{1.738192in}}% 2199 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{1.693747in}}{\pgfqpoint{3.602702in}{1.693747in}}% 2200 \pgfpathclose% 2201 \pgfusepath{stroke,fill}% 2202 \end{pgfscope}% 2203 \begin{pgfscope}% 2204 \pgfsetbuttcap% 2205 \pgfsetroundjoin% 2206 \pgfsetlinewidth{1.505625pt}% 2207 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2208 \pgfsetstrokecolor{currentstroke}% 2209 \pgfsetdash{}{0pt}% 2210 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.769364in}}% 2211 \pgfpathlineto{\pgfqpoint{3.869368in}{2.991586in}}% 2212 \pgfusepath{stroke}% 2213 \end{pgfscope}% 2214 \begin{pgfscope}% 2215 \pgfsetbuttcap% 2216 \pgfsetroundjoin% 2217 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2218 \pgfsetfillcolor{currentfill}% 2219 \pgfsetlinewidth{1.003750pt}% 2220 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2221 \pgfsetstrokecolor{currentstroke}% 2222 \pgfsetdash{}{0pt}% 2223 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2224 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2225 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2226 \pgfusepath{stroke,fill}% 2227 }% 2228 \begin{pgfscope}% 2229 \pgfsys@transformshift{3.869368in}{2.769364in}% 2230 \pgfsys@useobject{currentmarker}{}% 2231 \end{pgfscope}% 2232 \end{pgfscope}% 2233 \begin{pgfscope}% 2234 \pgfsetbuttcap% 2235 \pgfsetroundjoin% 2236 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2237 \pgfsetfillcolor{currentfill}% 2238 \pgfsetlinewidth{1.003750pt}% 2239 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2240 \pgfsetstrokecolor{currentstroke}% 2241 \pgfsetdash{}{0pt}% 2242 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2243 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2244 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2245 \pgfusepath{stroke,fill}% 2246 }% 2247 \begin{pgfscope}% 2248 \pgfsys@transformshift{3.869368in}{2.991586in}% 2249 \pgfsys@useobject{currentmarker}{}% 2250 \end{pgfscope}% 2251 \end{pgfscope}% 2252 \begin{pgfscope}% 2253 \pgfsetrectcap% 2254 \pgfsetroundjoin% 2255 \pgfsetlinewidth{1.505625pt}% 2256 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2257 \pgfsetstrokecolor{currentstroke}% 2258 \pgfsetdash{}{0pt}% 2259 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.880475in}}% 2260 \pgfpathlineto{\pgfqpoint{4.091591in}{2.880475in}}% 2261 \pgfusepath{stroke}% 2262 \end{pgfscope}% 2263 \begin{pgfscope}% 2264 \pgfsetbuttcap% 2265 \pgfsetmiterjoin% 2266 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2267 \pgfsetfillcolor{currentfill}% 2268 \pgfsetlinewidth{1.003750pt}% 2269 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2270 \pgfsetstrokecolor{currentstroke}% 2271 \pgfsetdash{}{0pt}% 2272 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2273 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.041667in}}% 2274 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2275 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 2276 \pgfpathclose% 2277 \pgfusepath{stroke,fill}% 2278 }% 2279 \begin{pgfscope}% 2280 \pgfsys@transformshift{3.869368in}{2.880475in}% 2281 \pgfsys@useobject{currentmarker}{}% 2282 \end{pgfscope}% 2283 \end{pgfscope}% 2284 \begin{pgfscope}% 2285 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2286 \pgfsetstrokecolor{textcolor}% 2287 \pgfsetfillcolor{textcolor}% 2288 \pgftext[x=4.269368in,y=2.802697in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-baseline}% 2289 \end{pgfscope}% 2290 \begin{pgfscope}% 2291 \pgfsetbuttcap% 2292 \pgfsetroundjoin% 2293 \pgfsetlinewidth{1.505625pt}% 1954 2294 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1955 2295 \pgfsetstrokecolor{currentstroke}% 1956 2296 \pgfsetdash{}{0pt}% 1957 \pgfpathmoveto{\pgfqpoint{1.025455in}{4.055876in}}% 1958 \pgfpathlineto{\pgfqpoint{1.326061in}{3.957809in}}% 1959 \pgfpathlineto{\pgfqpoint{1.927273in}{3.719959in}}% 1960 \pgfpathlineto{\pgfqpoint{3.129697in}{3.604550in}}% 1961 \pgfpathlineto{\pgfqpoint{4.332121in}{3.597915in}}% 1962 \pgfpathlineto{\pgfqpoint{5.534545in}{3.583182in}}% 1963 \pgfusepath{stroke}% 1964 \end{pgfscope}% 1965 \begin{pgfscope}% 1966 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1967 \pgfusepath{clip}% 2297 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.444904in}}% 2298 \pgfpathlineto{\pgfqpoint{3.869368in}{2.667126in}}% 2299 \pgfusepath{stroke}% 2300 \end{pgfscope}% 2301 \begin{pgfscope}% 2302 \pgfsetbuttcap% 2303 \pgfsetroundjoin% 2304 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2305 \pgfsetfillcolor{currentfill}% 2306 \pgfsetlinewidth{1.003750pt}% 2307 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2308 \pgfsetstrokecolor{currentstroke}% 2309 \pgfsetdash{}{0pt}% 2310 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2311 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2312 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2313 \pgfusepath{stroke,fill}% 2314 }% 2315 \begin{pgfscope}% 2316 \pgfsys@transformshift{3.869368in}{2.444904in}% 2317 \pgfsys@useobject{currentmarker}{}% 2318 \end{pgfscope}% 2319 \end{pgfscope}% 2320 \begin{pgfscope}% 2321 \pgfsetbuttcap% 2322 \pgfsetroundjoin% 2323 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2324 \pgfsetfillcolor{currentfill}% 2325 \pgfsetlinewidth{1.003750pt}% 2326 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2327 \pgfsetstrokecolor{currentstroke}% 2328 \pgfsetdash{}{0pt}% 2329 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2330 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2331 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2332 \pgfusepath{stroke,fill}% 2333 }% 2334 \begin{pgfscope}% 2335 \pgfsys@transformshift{3.869368in}{2.667126in}% 2336 \pgfsys@useobject{currentmarker}{}% 2337 \end{pgfscope}% 2338 \end{pgfscope}% 2339 \begin{pgfscope}% 2340 \pgfsetrectcap% 2341 \pgfsetroundjoin% 2342 \pgfsetlinewidth{1.505625pt}% 2343 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2344 \pgfsetstrokecolor{currentstroke}% 2345 \pgfsetdash{}{0pt}% 2346 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.556015in}}% 2347 \pgfpathlineto{\pgfqpoint{4.091591in}{2.556015in}}% 2348 \pgfusepath{stroke}% 2349 \end{pgfscope}% 2350 \begin{pgfscope}% 1968 2351 \pgfsetbuttcap% 1969 2352 \pgfsetroundjoin% … … 1988 2371 }% 1989 2372 \begin{pgfscope}% 1990 \pgfsys@transformshift{1.025455in}{4.055876in}% 1991 \pgfsys@useobject{currentmarker}{}% 1992 \end{pgfscope}% 1993 \begin{pgfscope}% 1994 \pgfsys@transformshift{1.326061in}{3.957809in}% 1995 \pgfsys@useobject{currentmarker}{}% 1996 \end{pgfscope}% 1997 \begin{pgfscope}% 1998 \pgfsys@transformshift{1.927273in}{3.719959in}% 1999 \pgfsys@useobject{currentmarker}{}% 2000 \end{pgfscope}% 2001 \begin{pgfscope}% 2002 \pgfsys@transformshift{3.129697in}{3.604550in}% 2003 \pgfsys@useobject{currentmarker}{}% 2004 \end{pgfscope}% 2005 \begin{pgfscope}% 2006 \pgfsys@transformshift{4.332121in}{3.597915in}% 2007 \pgfsys@useobject{currentmarker}{}% 2008 \end{pgfscope}% 2009 \begin{pgfscope}% 2010 \pgfsys@transformshift{5.534545in}{3.583182in}% 2011 \pgfsys@useobject{currentmarker}{}% 2012 \end{pgfscope}% 2013 \end{pgfscope}% 2014 \begin{pgfscope}% 2015 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2016 \pgfusepath{clip}% 2017 \pgfsetrectcap% 2018 \pgfsetroundjoin% 2019 \pgfsetlinewidth{1.505625pt}% 2020 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2021 \pgfsetstrokecolor{currentstroke}% 2022 \pgfsetdash{}{0pt}% 2023 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.973113in}}% 2024 \pgfpathlineto{\pgfqpoint{1.326061in}{3.935736in}}% 2025 \pgfpathlineto{\pgfqpoint{1.927273in}{3.735517in}}% 2026 \pgfpathlineto{\pgfqpoint{3.129697in}{3.665369in}}% 2027 \pgfpathlineto{\pgfqpoint{4.332121in}{3.655510in}}% 2028 \pgfpathlineto{\pgfqpoint{5.534545in}{3.646498in}}% 2029 \pgfusepath{stroke}% 2030 \end{pgfscope}% 2031 \begin{pgfscope}% 2032 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2033 \pgfusepath{clip}% 2034 \pgfsetbuttcap% 2035 \pgfsetroundjoin% 2036 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2037 \pgfsetfillcolor{currentfill}% 2038 \pgfsetlinewidth{1.003750pt}% 2039 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2040 \pgfsetstrokecolor{currentstroke}% 2041 \pgfsetdash{}{0pt}% 2042 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2043 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2044 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2045 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2046 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2047 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2048 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2049 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2050 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2051 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2052 \pgfpathclose% 2053 \pgfusepath{stroke,fill}% 2054 }% 2055 \begin{pgfscope}% 2056 \pgfsys@transformshift{1.025455in}{3.973113in}% 2057 \pgfsys@useobject{currentmarker}{}% 2058 \end{pgfscope}% 2059 \begin{pgfscope}% 2060 \pgfsys@transformshift{1.326061in}{3.935736in}% 2061 \pgfsys@useobject{currentmarker}{}% 2062 \end{pgfscope}% 2063 \begin{pgfscope}% 2064 \pgfsys@transformshift{1.927273in}{3.735517in}% 2065 \pgfsys@useobject{currentmarker}{}% 2066 \end{pgfscope}% 2067 \begin{pgfscope}% 2068 \pgfsys@transformshift{3.129697in}{3.665369in}% 2069 \pgfsys@useobject{currentmarker}{}% 2070 \end{pgfscope}% 2071 \begin{pgfscope}% 2072 \pgfsys@transformshift{4.332121in}{3.655510in}% 2073 \pgfsys@useobject{currentmarker}{}% 2074 \end{pgfscope}% 2075 \begin{pgfscope}% 2076 \pgfsys@transformshift{5.534545in}{3.646498in}% 2077 \pgfsys@useobject{currentmarker}{}% 2078 \end{pgfscope}% 2079 \end{pgfscope}% 2080 \begin{pgfscope}% 2081 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2082 \pgfusepath{clip}% 2083 \pgfsetrectcap% 2084 \pgfsetroundjoin% 2085 \pgfsetlinewidth{1.505625pt}% 2086 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2087 \pgfsetstrokecolor{currentstroke}% 2088 \pgfsetdash{}{0pt}% 2089 \pgfpathmoveto{\pgfqpoint{1.025455in}{2.771065in}}% 2090 \pgfpathlineto{\pgfqpoint{1.326061in}{1.232613in}}% 2091 \pgfpathlineto{\pgfqpoint{1.927273in}{1.221115in}}% 2092 \pgfpathlineto{\pgfqpoint{3.129697in}{0.810456in}}% 2093 \pgfpathlineto{\pgfqpoint{4.332121in}{0.758096in}}% 2094 \pgfpathlineto{\pgfqpoint{5.534545in}{0.796927in}}% 2095 \pgfusepath{stroke}% 2096 \end{pgfscope}% 2097 \begin{pgfscope}% 2098 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2099 \pgfusepath{clip}% 2100 \pgfsetbuttcap% 2101 \pgfsetroundjoin% 2102 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2103 \pgfsetfillcolor{currentfill}% 2104 \pgfsetlinewidth{1.003750pt}% 2105 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2106 \pgfsetstrokecolor{currentstroke}% 2107 \pgfsetdash{}{0pt}% 2108 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2109 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2110 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2111 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2112 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2113 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2114 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2115 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2116 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2117 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2118 \pgfpathclose% 2119 \pgfusepath{stroke,fill}% 2120 }% 2121 \begin{pgfscope}% 2122 \pgfsys@transformshift{1.025455in}{2.771065in}% 2123 \pgfsys@useobject{currentmarker}{}% 2124 \end{pgfscope}% 2125 \begin{pgfscope}% 2126 \pgfsys@transformshift{1.326061in}{1.232613in}% 2127 \pgfsys@useobject{currentmarker}{}% 2128 \end{pgfscope}% 2129 \begin{pgfscope}% 2130 \pgfsys@transformshift{1.927273in}{1.221115in}% 2131 \pgfsys@useobject{currentmarker}{}% 2132 \end{pgfscope}% 2133 \begin{pgfscope}% 2134 \pgfsys@transformshift{3.129697in}{0.810456in}% 2135 \pgfsys@useobject{currentmarker}{}% 2136 \end{pgfscope}% 2137 \begin{pgfscope}% 2138 \pgfsys@transformshift{4.332121in}{0.758096in}% 2139 \pgfsys@useobject{currentmarker}{}% 2140 \end{pgfscope}% 2141 \begin{pgfscope}% 2142 \pgfsys@transformshift{5.534545in}{0.796927in}% 2143 \pgfsys@useobject{currentmarker}{}% 2144 \end{pgfscope}% 2145 \end{pgfscope}% 2146 \begin{pgfscope}% 2147 \pgfsetrectcap% 2148 \pgfsetmiterjoin% 2149 \pgfsetlinewidth{0.803000pt}% 2150 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2151 \pgfsetstrokecolor{currentstroke}% 2152 \pgfsetdash{}{0pt}% 2153 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2154 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 2155 \pgfusepath{stroke}% 2156 \end{pgfscope}% 2157 \begin{pgfscope}% 2158 \pgfsetrectcap% 2159 \pgfsetmiterjoin% 2160 \pgfsetlinewidth{0.803000pt}% 2161 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2162 \pgfsetstrokecolor{currentstroke}% 2163 \pgfsetdash{}{0pt}% 2164 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 2165 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2166 \pgfusepath{stroke}% 2167 \end{pgfscope}% 2168 \begin{pgfscope}% 2169 \pgfsetrectcap% 2170 \pgfsetmiterjoin% 2171 \pgfsetlinewidth{0.803000pt}% 2172 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2173 \pgfsetstrokecolor{currentstroke}% 2174 \pgfsetdash{}{0pt}% 2175 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2176 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 2177 \pgfusepath{stroke}% 2178 \end{pgfscope}% 2179 \begin{pgfscope}% 2180 \pgfsetrectcap% 2181 \pgfsetmiterjoin% 2182 \pgfsetlinewidth{0.803000pt}% 2183 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2184 \pgfsetstrokecolor{currentstroke}% 2185 \pgfsetdash{}{0pt}% 2186 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 2187 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2188 \pgfusepath{stroke}% 2373 \pgfsys@transformshift{3.869368in}{2.556015in}% 2374 \pgfsys@useobject{currentmarker}{}% 2375 \end{pgfscope}% 2189 2376 \end{pgfscope}% 2190 2377 \begin{pgfscope}% … … 2192 2379 \pgfsetstrokecolor{textcolor}% 2193 2380 \pgfsetfillcolor{textcolor}% 2194 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{12.000000}{14.400000}\selectfont Aggregate Lock Benchmark: 8 Locks}% 2195 \end{pgfscope}% 2196 \begin{pgfscope}% 2197 \pgfsetbuttcap% 2198 \pgfsetmiterjoin% 2199 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 2200 \pgfsetfillcolor{currentfill}% 2201 \pgfsetfillopacity{0.800000}% 2381 \pgftext[x=4.269368in,y=2.478238in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-baseline}% 2382 \end{pgfscope}% 2383 \begin{pgfscope}% 2384 \pgfsetbuttcap% 2385 \pgfsetroundjoin% 2386 \pgfsetlinewidth{1.505625pt}% 2387 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2388 \pgfsetstrokecolor{currentstroke}% 2389 \pgfsetdash{}{0pt}% 2390 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.120444in}}% 2391 \pgfpathlineto{\pgfqpoint{3.869368in}{2.342667in}}% 2392 \pgfusepath{stroke}% 2393 \end{pgfscope}% 2394 \begin{pgfscope}% 2395 \pgfsetbuttcap% 2396 \pgfsetroundjoin% 2397 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2398 \pgfsetfillcolor{currentfill}% 2202 2399 \pgfsetlinewidth{1.003750pt}% 2203 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 2204 \pgfsetstrokecolor{currentstroke}% 2205 \pgfsetstrokeopacity{0.800000}% 2206 \pgfsetdash{}{0pt}% 2207 \pgfpathmoveto{\pgfqpoint{4.403517in}{1.967821in}}% 2208 \pgfpathlineto{\pgfqpoint{5.662778in}{1.967821in}}% 2209 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{1.967821in}}{\pgfqpoint{5.690556in}{1.995599in}}% 2210 \pgfpathlineto{\pgfqpoint{5.690556in}{2.756401in}}% 2211 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{2.784179in}}{\pgfqpoint{5.662778in}{2.784179in}}% 2212 \pgfpathlineto{\pgfqpoint{4.403517in}{2.784179in}}% 2213 \pgfpathquadraticcurveto{\pgfqpoint{4.375739in}{2.784179in}}{\pgfqpoint{4.375739in}{2.756401in}}% 2214 \pgfpathlineto{\pgfqpoint{4.375739in}{1.995599in}}% 2215 \pgfpathquadraticcurveto{\pgfqpoint{4.375739in}{1.967821in}}{\pgfqpoint{4.403517in}{1.967821in}}% 2216 \pgfpathclose% 2217 \pgfusepath{stroke,fill}% 2218 \end{pgfscope}% 2219 \begin{pgfscope}% 2220 \pgfsetbuttcap% 2221 \pgfsetroundjoin% 2222 \pgfsetlinewidth{1.505625pt}% 2223 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2224 \pgfsetstrokecolor{currentstroke}% 2225 \pgfsetdash{}{0pt}% 2226 \pgfpathmoveto{\pgfqpoint{4.570184in}{2.610568in}}% 2227 \pgfpathlineto{\pgfqpoint{4.570184in}{2.749457in}}% 2228 \pgfusepath{stroke}% 2229 \end{pgfscope}% 2230 \begin{pgfscope}% 2231 \pgfsetbuttcap% 2232 \pgfsetroundjoin% 2233 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2234 \pgfsetfillcolor{currentfill}% 2235 \pgfsetlinewidth{1.003750pt}% 2236 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2400 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2237 2401 \pgfsetstrokecolor{currentstroke}% 2238 2402 \pgfsetdash{}{0pt}% … … 2243 2407 }% 2244 2408 \begin{pgfscope}% 2245 \pgfsys@transformshift{ 4.570184in}{2.610568in}%2246 \pgfsys@useobject{currentmarker}{}% 2247 \end{pgfscope}% 2248 \end{pgfscope}% 2249 \begin{pgfscope}% 2250 \pgfsetbuttcap% 2251 \pgfsetroundjoin% 2252 \definecolor{currentfill}{rgb}{0.1 21569,0.466667,0.705882}%2409 \pgfsys@transformshift{3.869368in}{2.120444in}% 2410 \pgfsys@useobject{currentmarker}{}% 2411 \end{pgfscope}% 2412 \end{pgfscope}% 2413 \begin{pgfscope}% 2414 \pgfsetbuttcap% 2415 \pgfsetroundjoin% 2416 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2253 2417 \pgfsetfillcolor{currentfill}% 2254 2418 \pgfsetlinewidth{1.003750pt}% 2255 \definecolor{currentstroke}{rgb}{0.1 21569,0.466667,0.705882}%2419 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2256 2420 \pgfsetstrokecolor{currentstroke}% 2257 2421 \pgfsetdash{}{0pt}% … … 2262 2426 }% 2263 2427 \begin{pgfscope}% 2264 \pgfsys@transformshift{ 4.570184in}{2.749457in}%2428 \pgfsys@transformshift{3.869368in}{2.342667in}% 2265 2429 \pgfsys@useobject{currentmarker}{}% 2266 2430 \end{pgfscope}% … … 2270 2434 \pgfsetroundjoin% 2271 2435 \pgfsetlinewidth{1.505625pt}% 2272 \definecolor{currentstroke}{rgb}{0.1 21569,0.466667,0.705882}%2273 \pgfsetstrokecolor{currentstroke}% 2274 \pgfsetdash{}{0pt}% 2275 \pgfpathmoveto{\pgfqpoint{ 4.431295in}{2.680012in}}%2276 \pgfpathlineto{\pgfqpoint{4. 709073in}{2.680012in}}%2277 \pgfusepath{stroke}% 2278 \end{pgfscope}% 2279 \begin{pgfscope}% 2280 \pgfsetbuttcap% 2281 \pgfset roundjoin%2282 \definecolor{currentfill}{rgb}{0.1 21569,0.466667,0.705882}%2436 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2437 \pgfsetstrokecolor{currentstroke}% 2438 \pgfsetdash{}{0pt}% 2439 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.231556in}}% 2440 \pgfpathlineto{\pgfqpoint{4.091591in}{2.231556in}}% 2441 \pgfusepath{stroke}% 2442 \end{pgfscope}% 2443 \begin{pgfscope}% 2444 \pgfsetbuttcap% 2445 \pgfsetmiterjoin% 2446 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2283 2447 \pgfsetfillcolor{currentfill}% 2284 2448 \pgfsetlinewidth{1.003750pt}% 2285 \definecolor{currentstroke}{rgb}{0.1 21569,0.466667,0.705882}%2449 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2286 2450 \pgfsetstrokecolor{currentstroke}% 2287 2451 \pgfsetdash{}{0pt}% 2288 2452 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2289 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2290 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2291 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2292 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2293 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2294 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2295 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2296 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2297 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2453 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2454 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2455 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2456 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 2298 2457 \pgfpathclose% 2299 2458 \pgfusepath{stroke,fill}% 2300 2459 }% 2301 2460 \begin{pgfscope}% 2302 \pgfsys@transformshift{ 4.570184in}{2.680012in}%2461 \pgfsys@transformshift{3.869368in}{2.231556in}% 2303 2462 \pgfsys@useobject{currentmarker}{}% 2304 2463 \end{pgfscope}% … … 2308 2467 \pgfsetstrokecolor{textcolor}% 2309 2468 \pgfsetfillcolor{textcolor}% 2310 \pgftext[x=4. 820184in,y=2.631401in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-baseline}%2311 \end{pgfscope}% 2312 \begin{pgfscope}% 2313 \pgfsetbuttcap% 2314 \pgfsetroundjoin% 2315 \pgfsetlinewidth{1.505625pt}% 2316 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2317 \pgfsetstrokecolor{currentstroke}% 2318 \pgfsetdash{}{0pt}% 2319 \pgfpathmoveto{\pgfqpoint{ 4.570184in}{2.416895in}}%2320 \pgfpathlineto{\pgfqpoint{ 4.570184in}{2.555784in}}%2321 \pgfusepath{stroke}% 2322 \end{pgfscope}% 2323 \begin{pgfscope}% 2324 \pgfsetbuttcap% 2325 \pgfsetroundjoin% 2326 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2469 \pgftext[x=4.269368in,y=2.153778in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-rand}% 2470 \end{pgfscope}% 2471 \begin{pgfscope}% 2472 \pgfsetbuttcap% 2473 \pgfsetroundjoin% 2474 \pgfsetlinewidth{1.505625pt}% 2475 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2476 \pgfsetstrokecolor{currentstroke}% 2477 \pgfsetdash{}{0pt}% 2478 \pgfpathmoveto{\pgfqpoint{3.869368in}{1.795985in}}% 2479 \pgfpathlineto{\pgfqpoint{3.869368in}{2.018207in}}% 2480 \pgfusepath{stroke}% 2481 \end{pgfscope}% 2482 \begin{pgfscope}% 2483 \pgfsetbuttcap% 2484 \pgfsetroundjoin% 2485 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2327 2486 \pgfsetfillcolor{currentfill}% 2328 2487 \pgfsetlinewidth{1.003750pt}% 2329 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2488 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2330 2489 \pgfsetstrokecolor{currentstroke}% 2331 2490 \pgfsetdash{}{0pt}% … … 2336 2495 }% 2337 2496 \begin{pgfscope}% 2338 \pgfsys@transformshift{ 4.570184in}{2.416895in}%2339 \pgfsys@useobject{currentmarker}{}% 2340 \end{pgfscope}% 2341 \end{pgfscope}% 2342 \begin{pgfscope}% 2343 \pgfsetbuttcap% 2344 \pgfsetroundjoin% 2345 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2497 \pgfsys@transformshift{3.869368in}{1.795985in}% 2498 \pgfsys@useobject{currentmarker}{}% 2499 \end{pgfscope}% 2500 \end{pgfscope}% 2501 \begin{pgfscope}% 2502 \pgfsetbuttcap% 2503 \pgfsetroundjoin% 2504 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2346 2505 \pgfsetfillcolor{currentfill}% 2347 2506 \pgfsetlinewidth{1.003750pt}% 2348 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2507 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2349 2508 \pgfsetstrokecolor{currentstroke}% 2350 2509 \pgfsetdash{}{0pt}% … … 2355 2514 }% 2356 2515 \begin{pgfscope}% 2357 \pgfsys@transformshift{ 4.570184in}{2.555784in}%2516 \pgfsys@transformshift{3.869368in}{2.018207in}% 2358 2517 \pgfsys@useobject{currentmarker}{}% 2359 2518 \end{pgfscope}% … … 2363 2522 \pgfsetroundjoin% 2364 2523 \pgfsetlinewidth{1.505625pt}% 2365 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2366 \pgfsetstrokecolor{currentstroke}% 2367 \pgfsetdash{}{0pt}% 2368 \pgfpathmoveto{\pgfqpoint{ 4.431295in}{2.486339in}}%2369 \pgfpathlineto{\pgfqpoint{4. 709073in}{2.486339in}}%2370 \pgfusepath{stroke}% 2371 \end{pgfscope}% 2372 \begin{pgfscope}% 2373 \pgfsetbuttcap% 2374 \pgfset roundjoin%2375 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2524 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2525 \pgfsetstrokecolor{currentstroke}% 2526 \pgfsetdash{}{0pt}% 2527 \pgfpathmoveto{\pgfqpoint{3.647146in}{1.907096in}}% 2528 \pgfpathlineto{\pgfqpoint{4.091591in}{1.907096in}}% 2529 \pgfusepath{stroke}% 2530 \end{pgfscope}% 2531 \begin{pgfscope}% 2532 \pgfsetbuttcap% 2533 \pgfsetmiterjoin% 2534 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2376 2535 \pgfsetfillcolor{currentfill}% 2377 2536 \pgfsetlinewidth{1.003750pt}% 2378 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2379 \pgfsetstrokecolor{currentstroke}% 2380 \pgfsetdash{}{0pt}% 2381 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2382 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2383 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2384 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2385 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2386 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2387 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2388 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2389 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2390 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2537 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2538 \pgfsetstrokecolor{currentstroke}% 2539 \pgfsetdash{}{0pt}% 2540 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 2541 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 2542 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 2543 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 2544 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 2391 2545 \pgfpathclose% 2392 2546 \pgfusepath{stroke,fill}% 2393 2547 }% 2394 2548 \begin{pgfscope}% 2395 \pgfsys@transformshift{ 4.570184in}{2.486339in}%2549 \pgfsys@transformshift{3.869368in}{1.907096in}% 2396 2550 \pgfsys@useobject{currentmarker}{}% 2397 2551 \end{pgfscope}% … … 2401 2555 \pgfsetstrokecolor{textcolor}% 2402 2556 \pgfsetfillcolor{textcolor}% 2403 \pgftext[x=4.820184in,y=2.437728in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-baseline}% 2404 \end{pgfscope}% 2405 \begin{pgfscope}% 2406 \pgfsetbuttcap% 2407 \pgfsetroundjoin% 2408 \pgfsetlinewidth{1.505625pt}% 2409 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2410 \pgfsetstrokecolor{currentstroke}% 2411 \pgfsetdash{}{0pt}% 2412 \pgfpathmoveto{\pgfqpoint{4.570184in}{2.223222in}}% 2413 \pgfpathlineto{\pgfqpoint{4.570184in}{2.362111in}}% 2414 \pgfusepath{stroke}% 2415 \end{pgfscope}% 2416 \begin{pgfscope}% 2417 \pgfsetbuttcap% 2418 \pgfsetroundjoin% 2419 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2420 \pgfsetfillcolor{currentfill}% 2421 \pgfsetlinewidth{1.003750pt}% 2422 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2423 \pgfsetstrokecolor{currentstroke}% 2424 \pgfsetdash{}{0pt}% 2425 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2426 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2427 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2428 \pgfusepath{stroke,fill}% 2429 }% 2430 \begin{pgfscope}% 2431 \pgfsys@transformshift{4.570184in}{2.223222in}% 2432 \pgfsys@useobject{currentmarker}{}% 2433 \end{pgfscope}% 2434 \end{pgfscope}% 2435 \begin{pgfscope}% 2436 \pgfsetbuttcap% 2437 \pgfsetroundjoin% 2438 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2439 \pgfsetfillcolor{currentfill}% 2440 \pgfsetlinewidth{1.003750pt}% 2441 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2442 \pgfsetstrokecolor{currentstroke}% 2443 \pgfsetdash{}{0pt}% 2444 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2445 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2446 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2447 \pgfusepath{stroke,fill}% 2448 }% 2449 \begin{pgfscope}% 2450 \pgfsys@transformshift{4.570184in}{2.362111in}% 2451 \pgfsys@useobject{currentmarker}{}% 2452 \end{pgfscope}% 2453 \end{pgfscope}% 2454 \begin{pgfscope}% 2455 \pgfsetrectcap% 2456 \pgfsetroundjoin% 2457 \pgfsetlinewidth{1.505625pt}% 2458 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2459 \pgfsetstrokecolor{currentstroke}% 2460 \pgfsetdash{}{0pt}% 2461 \pgfpathmoveto{\pgfqpoint{4.431295in}{2.292667in}}% 2462 \pgfpathlineto{\pgfqpoint{4.709073in}{2.292667in}}% 2463 \pgfusepath{stroke}% 2464 \end{pgfscope}% 2465 \begin{pgfscope}% 2466 \pgfsetbuttcap% 2467 \pgfsetroundjoin% 2468 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2469 \pgfsetfillcolor{currentfill}% 2470 \pgfsetlinewidth{1.003750pt}% 2471 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2472 \pgfsetstrokecolor{currentstroke}% 2473 \pgfsetdash{}{0pt}% 2474 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2475 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2476 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2477 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2478 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2479 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2480 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2481 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2482 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2483 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2484 \pgfpathclose% 2485 \pgfusepath{stroke,fill}% 2486 }% 2487 \begin{pgfscope}% 2488 \pgfsys@transformshift{4.570184in}{2.292667in}% 2489 \pgfsys@useobject{currentmarker}{}% 2490 \end{pgfscope}% 2491 \end{pgfscope}% 2492 \begin{pgfscope}% 2493 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2494 \pgfsetstrokecolor{textcolor}% 2495 \pgfsetfillcolor{textcolor}% 2496 \pgftext[x=4.820184in,y=2.244056in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-rand}% 2497 \end{pgfscope}% 2498 \begin{pgfscope}% 2499 \pgfsetbuttcap% 2500 \pgfsetroundjoin% 2501 \pgfsetlinewidth{1.505625pt}% 2502 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2503 \pgfsetstrokecolor{currentstroke}% 2504 \pgfsetdash{}{0pt}% 2505 \pgfpathmoveto{\pgfqpoint{4.570184in}{2.029549in}}% 2506 \pgfpathlineto{\pgfqpoint{4.570184in}{2.168438in}}% 2507 \pgfusepath{stroke}% 2508 \end{pgfscope}% 2509 \begin{pgfscope}% 2510 \pgfsetbuttcap% 2511 \pgfsetroundjoin% 2512 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2513 \pgfsetfillcolor{currentfill}% 2514 \pgfsetlinewidth{1.003750pt}% 2515 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2516 \pgfsetstrokecolor{currentstroke}% 2517 \pgfsetdash{}{0pt}% 2518 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2519 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2520 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2521 \pgfusepath{stroke,fill}% 2522 }% 2523 \begin{pgfscope}% 2524 \pgfsys@transformshift{4.570184in}{2.029549in}% 2525 \pgfsys@useobject{currentmarker}{}% 2526 \end{pgfscope}% 2527 \end{pgfscope}% 2528 \begin{pgfscope}% 2529 \pgfsetbuttcap% 2530 \pgfsetroundjoin% 2531 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2532 \pgfsetfillcolor{currentfill}% 2533 \pgfsetlinewidth{1.003750pt}% 2534 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2535 \pgfsetstrokecolor{currentstroke}% 2536 \pgfsetdash{}{0pt}% 2537 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2538 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2539 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2540 \pgfusepath{stroke,fill}% 2541 }% 2542 \begin{pgfscope}% 2543 \pgfsys@transformshift{4.570184in}{2.168438in}% 2544 \pgfsys@useobject{currentmarker}{}% 2545 \end{pgfscope}% 2546 \end{pgfscope}% 2547 \begin{pgfscope}% 2548 \pgfsetrectcap% 2549 \pgfsetroundjoin% 2550 \pgfsetlinewidth{1.505625pt}% 2551 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2552 \pgfsetstrokecolor{currentstroke}% 2553 \pgfsetdash{}{0pt}% 2554 \pgfpathmoveto{\pgfqpoint{4.431295in}{2.098994in}}% 2555 \pgfpathlineto{\pgfqpoint{4.709073in}{2.098994in}}% 2556 \pgfusepath{stroke}% 2557 \end{pgfscope}% 2558 \begin{pgfscope}% 2559 \pgfsetbuttcap% 2560 \pgfsetroundjoin% 2561 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2562 \pgfsetfillcolor{currentfill}% 2563 \pgfsetlinewidth{1.003750pt}% 2564 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2565 \pgfsetstrokecolor{currentstroke}% 2566 \pgfsetdash{}{0pt}% 2567 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2568 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2569 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2570 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2571 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2572 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2573 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2574 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2575 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2576 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2577 \pgfpathclose% 2578 \pgfusepath{stroke,fill}% 2579 }% 2580 \begin{pgfscope}% 2581 \pgfsys@transformshift{4.570184in}{2.098994in}% 2582 \pgfsys@useobject{currentmarker}{}% 2583 \end{pgfscope}% 2584 \end{pgfscope}% 2585 \begin{pgfscope}% 2586 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2587 \pgfsetstrokecolor{textcolor}% 2588 \pgfsetfillcolor{textcolor}% 2589 \pgftext[x=4.820184in,y=2.050383in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-rand}% 2557 \pgftext[x=4.269368in,y=1.829318in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-rand}% 2590 2558 \end{pgfscope}% 2591 2559 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/nasus_Channel_Contention.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=2.047723in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{8}\)}%235 \pgftext[x=0.399655in,y=2.012615in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{8}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 467 467 \pgfsetstrokecolor{textcolor}% 468 468 \pgfsetfillcolor{textcolor}% 469 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (channel operations)}%469 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (channel operations)}% 470 470 \end{pgfscope}% 471 471 \begin{pgfscope}% … … 876 876 \pgfusepath{clip}% 877 877 \pgfsetbuttcap% 878 \pgfset roundjoin%878 \pgfsetmiterjoin% 879 879 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 880 880 \pgfsetfillcolor{currentfill}% 881 881 \pgfsetlinewidth{1.003750pt}% 882 882 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 883 \pgfsetstrokecolor{currentstroke}% 884 \pgfsetdash{}{0pt}% 885 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 886 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 887 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 888 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 889 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 890 \pgfpathclose% 891 \pgfusepath{stroke,fill}% 892 }% 893 \begin{pgfscope}% 894 \pgfsys@transformshift{1.025455in}{3.406486in}% 895 \pgfsys@useobject{currentmarker}{}% 896 \end{pgfscope}% 897 \begin{pgfscope}% 898 \pgfsys@transformshift{1.326061in}{3.091073in}% 899 \pgfsys@useobject{currentmarker}{}% 900 \end{pgfscope}% 901 \begin{pgfscope}% 902 \pgfsys@transformshift{1.927273in}{2.246470in}% 903 \pgfsys@useobject{currentmarker}{}% 904 \end{pgfscope}% 905 \begin{pgfscope}% 906 \pgfsys@transformshift{3.129697in}{1.072038in}% 907 \pgfsys@useobject{currentmarker}{}% 908 \end{pgfscope}% 909 \begin{pgfscope}% 910 \pgfsys@transformshift{4.332121in}{0.890889in}% 911 \pgfsys@useobject{currentmarker}{}% 912 \end{pgfscope}% 913 \begin{pgfscope}% 914 \pgfsys@transformshift{5.534545in}{1.106104in}% 915 \pgfsys@useobject{currentmarker}{}% 916 \end{pgfscope}% 917 \end{pgfscope}% 918 \begin{pgfscope}% 919 \pgfsetrectcap% 920 \pgfsetmiterjoin% 921 \pgfsetlinewidth{0.803000pt}% 922 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 923 \pgfsetstrokecolor{currentstroke}% 924 \pgfsetdash{}{0pt}% 925 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 926 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 927 \pgfusepath{stroke}% 928 \end{pgfscope}% 929 \begin{pgfscope}% 930 \pgfsetrectcap% 931 \pgfsetmiterjoin% 932 \pgfsetlinewidth{0.803000pt}% 933 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 934 \pgfsetstrokecolor{currentstroke}% 935 \pgfsetdash{}{0pt}% 936 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 937 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 938 \pgfusepath{stroke}% 939 \end{pgfscope}% 940 \begin{pgfscope}% 941 \pgfsetrectcap% 942 \pgfsetmiterjoin% 943 \pgfsetlinewidth{0.803000pt}% 944 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 945 \pgfsetstrokecolor{currentstroke}% 946 \pgfsetdash{}{0pt}% 947 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 948 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 949 \pgfusepath{stroke}% 950 \end{pgfscope}% 951 \begin{pgfscope}% 952 \pgfsetrectcap% 953 \pgfsetmiterjoin% 954 \pgfsetlinewidth{0.803000pt}% 955 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 956 \pgfsetstrokecolor{currentstroke}% 957 \pgfsetdash{}{0pt}% 958 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 959 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 960 \pgfusepath{stroke}% 961 \end{pgfscope}% 962 \begin{pgfscope}% 963 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 964 \pgfsetstrokecolor{textcolor}% 965 \pgfsetfillcolor{textcolor}% 966 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Channel Contention Benchmark}% 967 \end{pgfscope}% 968 \begin{pgfscope}% 969 \pgfsetbuttcap% 970 \pgfsetmiterjoin% 971 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 972 \pgfsetfillcolor{currentfill}% 973 \pgfsetfillopacity{0.800000}% 974 \pgfsetlinewidth{1.003750pt}% 975 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 976 \pgfsetstrokecolor{currentstroke}% 977 \pgfsetstrokeopacity{0.800000}% 978 \pgfsetdash{}{0pt}% 979 \pgfpathmoveto{\pgfqpoint{4.447292in}{3.397303in}}% 980 \pgfpathlineto{\pgfqpoint{5.604444in}{3.397303in}}% 981 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.397303in}}{\pgfqpoint{5.648889in}{3.441747in}}% 982 \pgfpathlineto{\pgfqpoint{5.648889in}{4.068444in}}% 983 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{4.112889in}}{\pgfqpoint{5.604444in}{4.112889in}}% 984 \pgfpathlineto{\pgfqpoint{4.447292in}{4.112889in}}% 985 \pgfpathquadraticcurveto{\pgfqpoint{4.402848in}{4.112889in}}{\pgfqpoint{4.402848in}{4.068444in}}% 986 \pgfpathlineto{\pgfqpoint{4.402848in}{3.441747in}}% 987 \pgfpathquadraticcurveto{\pgfqpoint{4.402848in}{3.397303in}}{\pgfqpoint{4.447292in}{3.397303in}}% 988 \pgfpathclose% 989 \pgfusepath{stroke,fill}% 990 \end{pgfscope}% 991 \begin{pgfscope}% 992 \pgfsetbuttcap% 993 \pgfsetroundjoin% 994 \pgfsetlinewidth{1.505625pt}% 995 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 996 \pgfsetstrokecolor{currentstroke}% 997 \pgfsetdash{}{0pt}% 998 \pgfpathmoveto{\pgfqpoint{4.713959in}{3.824000in}}% 999 \pgfpathlineto{\pgfqpoint{4.713959in}{4.046222in}}% 1000 \pgfusepath{stroke}% 1001 \end{pgfscope}% 1002 \begin{pgfscope}% 1003 \pgfsetbuttcap% 1004 \pgfsetroundjoin% 1005 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1006 \pgfsetfillcolor{currentfill}% 1007 \pgfsetlinewidth{1.003750pt}% 1008 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1009 \pgfsetstrokecolor{currentstroke}% 1010 \pgfsetdash{}{0pt}% 1011 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1012 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1013 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1014 \pgfusepath{stroke,fill}% 1015 }% 1016 \begin{pgfscope}% 1017 \pgfsys@transformshift{4.713959in}{3.824000in}% 1018 \pgfsys@useobject{currentmarker}{}% 1019 \end{pgfscope}% 1020 \end{pgfscope}% 1021 \begin{pgfscope}% 1022 \pgfsetbuttcap% 1023 \pgfsetroundjoin% 1024 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1025 \pgfsetfillcolor{currentfill}% 1026 \pgfsetlinewidth{1.003750pt}% 1027 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1028 \pgfsetstrokecolor{currentstroke}% 1029 \pgfsetdash{}{0pt}% 1030 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1031 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1032 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1033 \pgfusepath{stroke,fill}% 1034 }% 1035 \begin{pgfscope}% 1036 \pgfsys@transformshift{4.713959in}{4.046222in}% 1037 \pgfsys@useobject{currentmarker}{}% 1038 \end{pgfscope}% 1039 \end{pgfscope}% 1040 \begin{pgfscope}% 1041 \pgfsetrectcap% 1042 \pgfsetroundjoin% 1043 \pgfsetlinewidth{1.505625pt}% 1044 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1045 \pgfsetstrokecolor{currentstroke}% 1046 \pgfsetdash{}{0pt}% 1047 \pgfpathmoveto{\pgfqpoint{4.491737in}{3.935111in}}% 1048 \pgfpathlineto{\pgfqpoint{4.936181in}{3.935111in}}% 1049 \pgfusepath{stroke}% 1050 \end{pgfscope}% 1051 \begin{pgfscope}% 1052 \pgfsetbuttcap% 1053 \pgfsetroundjoin% 1054 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1055 \pgfsetfillcolor{currentfill}% 1056 \pgfsetlinewidth{1.003750pt}% 1057 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 883 1058 \pgfsetstrokecolor{currentstroke}% 884 1059 \pgfsetdash{}{0pt}% … … 897 1072 }% 898 1073 \begin{pgfscope}% 899 \pgfsys@transformshift{1.025455in}{3.406486in}% 900 \pgfsys@useobject{currentmarker}{}% 901 \end{pgfscope}% 902 \begin{pgfscope}% 903 \pgfsys@transformshift{1.326061in}{3.091073in}% 904 \pgfsys@useobject{currentmarker}{}% 905 \end{pgfscope}% 906 \begin{pgfscope}% 907 \pgfsys@transformshift{1.927273in}{2.246470in}% 908 \pgfsys@useobject{currentmarker}{}% 909 \end{pgfscope}% 910 \begin{pgfscope}% 911 \pgfsys@transformshift{3.129697in}{1.072038in}% 912 \pgfsys@useobject{currentmarker}{}% 913 \end{pgfscope}% 914 \begin{pgfscope}% 915 \pgfsys@transformshift{4.332121in}{0.890889in}% 916 \pgfsys@useobject{currentmarker}{}% 917 \end{pgfscope}% 918 \begin{pgfscope}% 919 \pgfsys@transformshift{5.534545in}{1.106104in}% 920 \pgfsys@useobject{currentmarker}{}% 921 \end{pgfscope}% 922 \end{pgfscope}% 923 \begin{pgfscope}% 924 \pgfsetrectcap% 925 \pgfsetmiterjoin% 926 \pgfsetlinewidth{0.803000pt}% 927 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 928 \pgfsetstrokecolor{currentstroke}% 929 \pgfsetdash{}{0pt}% 930 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 931 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 932 \pgfusepath{stroke}% 933 \end{pgfscope}% 934 \begin{pgfscope}% 935 \pgfsetrectcap% 936 \pgfsetmiterjoin% 937 \pgfsetlinewidth{0.803000pt}% 938 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 939 \pgfsetstrokecolor{currentstroke}% 940 \pgfsetdash{}{0pt}% 941 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 942 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 943 \pgfusepath{stroke}% 944 \end{pgfscope}% 945 \begin{pgfscope}% 946 \pgfsetrectcap% 947 \pgfsetmiterjoin% 948 \pgfsetlinewidth{0.803000pt}% 949 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 950 \pgfsetstrokecolor{currentstroke}% 951 \pgfsetdash{}{0pt}% 952 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 953 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 954 \pgfusepath{stroke}% 955 \end{pgfscope}% 956 \begin{pgfscope}% 957 \pgfsetrectcap% 958 \pgfsetmiterjoin% 959 \pgfsetlinewidth{0.803000pt}% 960 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 961 \pgfsetstrokecolor{currentstroke}% 962 \pgfsetdash{}{0pt}% 963 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 964 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 965 \pgfusepath{stroke}% 1074 \pgfsys@transformshift{4.713959in}{3.935111in}% 1075 \pgfsys@useobject{currentmarker}{}% 1076 \end{pgfscope}% 966 1077 \end{pgfscope}% 967 1078 \begin{pgfscope}% … … 969 1080 \pgfsetstrokecolor{textcolor}% 970 1081 \pgfsetfillcolor{textcolor}% 971 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{12.000000}{14.400000}\selectfont Channel Contention Benchmark}% 972 \end{pgfscope}% 973 \begin{pgfscope}% 974 \pgfsetbuttcap% 975 \pgfsetmiterjoin% 976 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 977 \pgfsetfillcolor{currentfill}% 978 \pgfsetfillopacity{0.800000}% 979 \pgfsetlinewidth{1.003750pt}% 980 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 981 \pgfsetstrokecolor{currentstroke}% 982 \pgfsetstrokeopacity{0.800000}% 983 \pgfsetdash{}{0pt}% 984 \pgfpathmoveto{\pgfqpoint{4.938626in}{3.725543in}}% 985 \pgfpathlineto{\pgfqpoint{5.662778in}{3.725543in}}% 986 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{3.725543in}}{\pgfqpoint{5.690556in}{3.753321in}}% 987 \pgfpathlineto{\pgfqpoint{5.690556in}{4.126778in}}% 988 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{4.154556in}}{\pgfqpoint{5.662778in}{4.154556in}}% 989 \pgfpathlineto{\pgfqpoint{4.938626in}{4.154556in}}% 990 \pgfpathquadraticcurveto{\pgfqpoint{4.910848in}{4.154556in}}{\pgfqpoint{4.910848in}{4.126778in}}% 991 \pgfpathlineto{\pgfqpoint{4.910848in}{3.753321in}}% 992 \pgfpathquadraticcurveto{\pgfqpoint{4.910848in}{3.725543in}}{\pgfqpoint{4.938626in}{3.725543in}}% 993 \pgfpathclose% 994 \pgfusepath{stroke,fill}% 995 \end{pgfscope}% 996 \begin{pgfscope}% 997 \pgfsetbuttcap% 998 \pgfsetroundjoin% 999 \pgfsetlinewidth{1.505625pt}% 1000 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1001 \pgfsetstrokecolor{currentstroke}% 1002 \pgfsetdash{}{0pt}% 1003 \pgfpathmoveto{\pgfqpoint{5.105293in}{3.980944in}}% 1004 \pgfpathlineto{\pgfqpoint{5.105293in}{4.119833in}}% 1005 \pgfusepath{stroke}% 1006 \end{pgfscope}% 1007 \begin{pgfscope}% 1008 \pgfsetbuttcap% 1009 \pgfsetroundjoin% 1010 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1011 \pgfsetfillcolor{currentfill}% 1012 \pgfsetlinewidth{1.003750pt}% 1013 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1082 \pgftext[x=5.113959in,y=3.857333in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA}% 1083 \end{pgfscope}% 1084 \begin{pgfscope}% 1085 \pgfsetbuttcap% 1086 \pgfsetroundjoin% 1087 \pgfsetlinewidth{1.505625pt}% 1088 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1089 \pgfsetstrokecolor{currentstroke}% 1090 \pgfsetdash{}{0pt}% 1091 \pgfpathmoveto{\pgfqpoint{4.713959in}{3.499540in}}% 1092 \pgfpathlineto{\pgfqpoint{4.713959in}{3.721763in}}% 1093 \pgfusepath{stroke}% 1094 \end{pgfscope}% 1095 \begin{pgfscope}% 1096 \pgfsetbuttcap% 1097 \pgfsetroundjoin% 1098 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1099 \pgfsetfillcolor{currentfill}% 1100 \pgfsetlinewidth{1.003750pt}% 1101 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1014 1102 \pgfsetstrokecolor{currentstroke}% 1015 1103 \pgfsetdash{}{0pt}% … … 1020 1108 }% 1021 1109 \begin{pgfscope}% 1022 \pgfsys@transformshift{ 5.105293in}{3.980944in}%1023 \pgfsys@useobject{currentmarker}{}% 1024 \end{pgfscope}% 1025 \end{pgfscope}% 1026 \begin{pgfscope}% 1027 \pgfsetbuttcap% 1028 \pgfsetroundjoin% 1029 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1030 \pgfsetfillcolor{currentfill}% 1031 \pgfsetlinewidth{1.003750pt}% 1032 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1110 \pgfsys@transformshift{4.713959in}{3.499540in}% 1111 \pgfsys@useobject{currentmarker}{}% 1112 \end{pgfscope}% 1113 \end{pgfscope}% 1114 \begin{pgfscope}% 1115 \pgfsetbuttcap% 1116 \pgfsetroundjoin% 1117 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1118 \pgfsetfillcolor{currentfill}% 1119 \pgfsetlinewidth{1.003750pt}% 1120 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1033 1121 \pgfsetstrokecolor{currentstroke}% 1034 1122 \pgfsetdash{}{0pt}% … … 1039 1127 }% 1040 1128 \begin{pgfscope}% 1041 \pgfsys@transformshift{ 5.105293in}{4.119833in}%1129 \pgfsys@transformshift{4.713959in}{3.721763in}% 1042 1130 \pgfsys@useobject{currentmarker}{}% 1043 1131 \end{pgfscope}% … … 1047 1135 \pgfsetroundjoin% 1048 1136 \pgfsetlinewidth{1.505625pt}% 1049 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1050 \pgfsetstrokecolor{currentstroke}% 1051 \pgfsetdash{}{0pt}% 1052 \pgfpathmoveto{\pgfqpoint{4. 966404in}{4.050389in}}%1053 \pgfpathlineto{\pgfqpoint{ 5.244182in}{4.050389in}}%1054 \pgfusepath{stroke}% 1055 \end{pgfscope}% 1056 \begin{pgfscope}% 1057 \pgfsetbuttcap% 1058 \pgfset roundjoin%1059 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1060 \pgfsetfillcolor{currentfill}% 1061 \pgfsetlinewidth{1.003750pt}% 1062 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1137 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1138 \pgfsetstrokecolor{currentstroke}% 1139 \pgfsetdash{}{0pt}% 1140 \pgfpathmoveto{\pgfqpoint{4.491737in}{3.610651in}}% 1141 \pgfpathlineto{\pgfqpoint{4.936181in}{3.610651in}}% 1142 \pgfusepath{stroke}% 1143 \end{pgfscope}% 1144 \begin{pgfscope}% 1145 \pgfsetbuttcap% 1146 \pgfsetmiterjoin% 1147 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1148 \pgfsetfillcolor{currentfill}% 1149 \pgfsetlinewidth{1.003750pt}% 1150 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1063 1151 \pgfsetstrokecolor{currentstroke}% 1064 1152 \pgfsetdash{}{0pt}% 1065 1153 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1066 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1067 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1068 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1069 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1070 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1071 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1072 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1073 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1074 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1154 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1155 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1156 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1157 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1075 1158 \pgfpathclose% 1076 1159 \pgfusepath{stroke,fill}% 1077 1160 }% 1078 1161 \begin{pgfscope}% 1079 \pgfsys@transformshift{ 5.105293in}{4.050389in}%1162 \pgfsys@transformshift{4.713959in}{3.610651in}% 1080 1163 \pgfsys@useobject{currentmarker}{}% 1081 1164 \end{pgfscope}% … … 1085 1168 \pgfsetstrokecolor{textcolor}% 1086 1169 \pgfsetfillcolor{textcolor}% 1087 \pgftext[x=5.355293in,y=4.001778in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA}% 1088 \end{pgfscope}% 1089 \begin{pgfscope}% 1090 \pgfsetbuttcap% 1091 \pgfsetroundjoin% 1092 \pgfsetlinewidth{1.505625pt}% 1093 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1094 \pgfsetstrokecolor{currentstroke}% 1095 \pgfsetdash{}{0pt}% 1096 \pgfpathmoveto{\pgfqpoint{5.105293in}{3.787272in}}% 1097 \pgfpathlineto{\pgfqpoint{5.105293in}{3.926161in}}% 1098 \pgfusepath{stroke}% 1099 \end{pgfscope}% 1100 \begin{pgfscope}% 1101 \pgfsetbuttcap% 1102 \pgfsetroundjoin% 1103 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1104 \pgfsetfillcolor{currentfill}% 1105 \pgfsetlinewidth{1.003750pt}% 1106 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1107 \pgfsetstrokecolor{currentstroke}% 1108 \pgfsetdash{}{0pt}% 1109 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1110 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1111 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1112 \pgfusepath{stroke,fill}% 1113 }% 1114 \begin{pgfscope}% 1115 \pgfsys@transformshift{5.105293in}{3.787272in}% 1116 \pgfsys@useobject{currentmarker}{}% 1117 \end{pgfscope}% 1118 \end{pgfscope}% 1119 \begin{pgfscope}% 1120 \pgfsetbuttcap% 1121 \pgfsetroundjoin% 1122 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1123 \pgfsetfillcolor{currentfill}% 1124 \pgfsetlinewidth{1.003750pt}% 1125 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1126 \pgfsetstrokecolor{currentstroke}% 1127 \pgfsetdash{}{0pt}% 1128 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1129 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1130 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1131 \pgfusepath{stroke,fill}% 1132 }% 1133 \begin{pgfscope}% 1134 \pgfsys@transformshift{5.105293in}{3.926161in}% 1135 \pgfsys@useobject{currentmarker}{}% 1136 \end{pgfscope}% 1137 \end{pgfscope}% 1138 \begin{pgfscope}% 1139 \pgfsetrectcap% 1140 \pgfsetroundjoin% 1141 \pgfsetlinewidth{1.505625pt}% 1142 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1143 \pgfsetstrokecolor{currentstroke}% 1144 \pgfsetdash{}{0pt}% 1145 \pgfpathmoveto{\pgfqpoint{4.966404in}{3.856716in}}% 1146 \pgfpathlineto{\pgfqpoint{5.244182in}{3.856716in}}% 1147 \pgfusepath{stroke}% 1148 \end{pgfscope}% 1149 \begin{pgfscope}% 1150 \pgfsetbuttcap% 1151 \pgfsetroundjoin% 1152 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1153 \pgfsetfillcolor{currentfill}% 1154 \pgfsetlinewidth{1.003750pt}% 1155 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1156 \pgfsetstrokecolor{currentstroke}% 1157 \pgfsetdash{}{0pt}% 1158 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1159 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1160 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1161 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1162 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1163 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1164 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1165 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1166 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1167 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1168 \pgfpathclose% 1169 \pgfusepath{stroke,fill}% 1170 }% 1171 \begin{pgfscope}% 1172 \pgfsys@transformshift{5.105293in}{3.856716in}% 1173 \pgfsys@useobject{currentmarker}{}% 1174 \end{pgfscope}% 1175 \end{pgfscope}% 1176 \begin{pgfscope}% 1177 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 1178 \pgfsetstrokecolor{textcolor}% 1179 \pgfsetfillcolor{textcolor}% 1180 \pgftext[x=5.355293in,y=3.808105in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Go}% 1170 \pgftext[x=5.113959in,y=3.532874in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Go}% 1181 1171 \end{pgfscope}% 1182 1172 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/pyke_Aggregate_Lock_2.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=0.963915in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{6}\)}%235 \pgftext[x=0.399655in,y=0.928807in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{6}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 258 258 \pgfsetstrokecolor{textcolor}% 259 259 \pgfsetfillcolor{textcolor}% 260 \pgftext[x=0. 501581in,y=2.355276in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{7}\)}%260 \pgftext[x=0.399655in,y=2.320168in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{7}\)}% 261 261 \end{pgfscope}% 262 262 \begin{pgfscope}% … … 283 283 \pgfsetstrokecolor{textcolor}% 284 284 \pgfsetfillcolor{textcolor}% 285 \pgftext[x=0. 501581in,y=3.746636in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{8}\)}%285 \pgftext[x=0.399655in,y=3.711528in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{8}\)}% 286 286 \end{pgfscope}% 287 287 \begin{pgfscope}% … … 707 707 \pgfsetstrokecolor{textcolor}% 708 708 \pgfsetfillcolor{textcolor}% 709 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (entries)}%709 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (entries)}% 710 710 \end{pgfscope}% 711 711 \begin{pgfscope}% … … 1436 1436 \pgfusepath{clip}% 1437 1437 \pgfsetbuttcap% 1438 \pgfset roundjoin%1438 \pgfsetmiterjoin% 1439 1439 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1440 1440 \pgfsetfillcolor{currentfill}% 1441 1441 \pgfsetlinewidth{1.003750pt}% 1442 1442 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1443 \pgfsetstrokecolor{currentstroke}% 1444 \pgfsetdash{}{0pt}% 1445 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1446 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1447 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1448 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1449 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1450 \pgfpathclose% 1451 \pgfusepath{stroke,fill}% 1452 }% 1453 \begin{pgfscope}% 1454 \pgfsys@transformshift{1.025455in}{4.014803in}% 1455 \pgfsys@useobject{currentmarker}{}% 1456 \end{pgfscope}% 1457 \begin{pgfscope}% 1458 \pgfsys@transformshift{1.326061in}{3.745922in}% 1459 \pgfsys@useobject{currentmarker}{}% 1460 \end{pgfscope}% 1461 \begin{pgfscope}% 1462 \pgfsys@transformshift{1.927273in}{3.503889in}% 1463 \pgfsys@useobject{currentmarker}{}% 1464 \end{pgfscope}% 1465 \begin{pgfscope}% 1466 \pgfsys@transformshift{3.129697in}{3.173273in}% 1467 \pgfsys@useobject{currentmarker}{}% 1468 \end{pgfscope}% 1469 \begin{pgfscope}% 1470 \pgfsys@transformshift{4.332121in}{2.828641in}% 1471 \pgfsys@useobject{currentmarker}{}% 1472 \end{pgfscope}% 1473 \begin{pgfscope}% 1474 \pgfsys@transformshift{5.534545in}{2.787501in}% 1475 \pgfsys@useobject{currentmarker}{}% 1476 \end{pgfscope}% 1477 \end{pgfscope}% 1478 \begin{pgfscope}% 1479 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1480 \pgfusepath{clip}% 1481 \pgfsetrectcap% 1482 \pgfsetroundjoin% 1483 \pgfsetlinewidth{1.505625pt}% 1484 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1485 \pgfsetstrokecolor{currentstroke}% 1486 \pgfsetdash{}{0pt}% 1487 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.845372in}}% 1488 \pgfpathlineto{\pgfqpoint{1.326061in}{3.591512in}}% 1489 \pgfpathlineto{\pgfqpoint{1.927273in}{3.353860in}}% 1490 \pgfpathlineto{\pgfqpoint{3.129697in}{2.972783in}}% 1491 \pgfpathlineto{\pgfqpoint{4.332121in}{2.504321in}}% 1492 \pgfpathlineto{\pgfqpoint{5.534545in}{2.425566in}}% 1493 \pgfusepath{stroke}% 1494 \end{pgfscope}% 1495 \begin{pgfscope}% 1496 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1497 \pgfusepath{clip}% 1498 \pgfsetbuttcap% 1499 \pgfsetmiterjoin% 1500 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1501 \pgfsetfillcolor{currentfill}% 1502 \pgfsetlinewidth{1.003750pt}% 1503 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1504 \pgfsetstrokecolor{currentstroke}% 1505 \pgfsetdash{}{0pt}% 1506 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 1507 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 1508 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 1509 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 1510 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 1511 \pgfpathclose% 1512 \pgfusepath{stroke,fill}% 1513 }% 1514 \begin{pgfscope}% 1515 \pgfsys@transformshift{1.025455in}{3.845372in}% 1516 \pgfsys@useobject{currentmarker}{}% 1517 \end{pgfscope}% 1518 \begin{pgfscope}% 1519 \pgfsys@transformshift{1.326061in}{3.591512in}% 1520 \pgfsys@useobject{currentmarker}{}% 1521 \end{pgfscope}% 1522 \begin{pgfscope}% 1523 \pgfsys@transformshift{1.927273in}{3.353860in}% 1524 \pgfsys@useobject{currentmarker}{}% 1525 \end{pgfscope}% 1526 \begin{pgfscope}% 1527 \pgfsys@transformshift{3.129697in}{2.972783in}% 1528 \pgfsys@useobject{currentmarker}{}% 1529 \end{pgfscope}% 1530 \begin{pgfscope}% 1531 \pgfsys@transformshift{4.332121in}{2.504321in}% 1532 \pgfsys@useobject{currentmarker}{}% 1533 \end{pgfscope}% 1534 \begin{pgfscope}% 1535 \pgfsys@transformshift{5.534545in}{2.425566in}% 1536 \pgfsys@useobject{currentmarker}{}% 1537 \end{pgfscope}% 1538 \end{pgfscope}% 1539 \begin{pgfscope}% 1540 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1541 \pgfusepath{clip}% 1542 \pgfsetrectcap% 1543 \pgfsetroundjoin% 1544 \pgfsetlinewidth{1.505625pt}% 1545 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1546 \pgfsetstrokecolor{currentstroke}% 1547 \pgfsetdash{}{0pt}% 1548 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.748153in}}% 1549 \pgfpathlineto{\pgfqpoint{1.326061in}{3.100576in}}% 1550 \pgfpathlineto{\pgfqpoint{1.927273in}{2.500046in}}% 1551 \pgfpathlineto{\pgfqpoint{3.129697in}{1.740526in}}% 1552 \pgfpathlineto{\pgfqpoint{4.332121in}{1.218298in}}% 1553 \pgfpathlineto{\pgfqpoint{5.534545in}{0.734521in}}% 1554 \pgfusepath{stroke}% 1555 \end{pgfscope}% 1556 \begin{pgfscope}% 1557 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1558 \pgfusepath{clip}% 1559 \pgfsetbuttcap% 1560 \pgfsetroundjoin% 1561 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1562 \pgfsetfillcolor{currentfill}% 1563 \pgfsetlinewidth{1.003750pt}% 1564 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1565 \pgfsetstrokecolor{currentstroke}% 1566 \pgfsetdash{}{0pt}% 1567 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1568 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1569 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1570 \pgfpathmoveto{\pgfqpoint{-0.041667in}{0.041667in}}% 1571 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1572 \pgfusepath{stroke,fill}% 1573 }% 1574 \begin{pgfscope}% 1575 \pgfsys@transformshift{1.025455in}{3.748153in}% 1576 \pgfsys@useobject{currentmarker}{}% 1577 \end{pgfscope}% 1578 \begin{pgfscope}% 1579 \pgfsys@transformshift{1.326061in}{3.100576in}% 1580 \pgfsys@useobject{currentmarker}{}% 1581 \end{pgfscope}% 1582 \begin{pgfscope}% 1583 \pgfsys@transformshift{1.927273in}{2.500046in}% 1584 \pgfsys@useobject{currentmarker}{}% 1585 \end{pgfscope}% 1586 \begin{pgfscope}% 1587 \pgfsys@transformshift{3.129697in}{1.740526in}% 1588 \pgfsys@useobject{currentmarker}{}% 1589 \end{pgfscope}% 1590 \begin{pgfscope}% 1591 \pgfsys@transformshift{4.332121in}{1.218298in}% 1592 \pgfsys@useobject{currentmarker}{}% 1593 \end{pgfscope}% 1594 \begin{pgfscope}% 1595 \pgfsys@transformshift{5.534545in}{0.734521in}% 1596 \pgfsys@useobject{currentmarker}{}% 1597 \end{pgfscope}% 1598 \end{pgfscope}% 1599 \begin{pgfscope}% 1600 \pgfsetrectcap% 1601 \pgfsetmiterjoin% 1602 \pgfsetlinewidth{0.803000pt}% 1603 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1604 \pgfsetstrokecolor{currentstroke}% 1605 \pgfsetdash{}{0pt}% 1606 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1607 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 1608 \pgfusepath{stroke}% 1609 \end{pgfscope}% 1610 \begin{pgfscope}% 1611 \pgfsetrectcap% 1612 \pgfsetmiterjoin% 1613 \pgfsetlinewidth{0.803000pt}% 1614 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1615 \pgfsetstrokecolor{currentstroke}% 1616 \pgfsetdash{}{0pt}% 1617 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 1618 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1619 \pgfusepath{stroke}% 1620 \end{pgfscope}% 1621 \begin{pgfscope}% 1622 \pgfsetrectcap% 1623 \pgfsetmiterjoin% 1624 \pgfsetlinewidth{0.803000pt}% 1625 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1626 \pgfsetstrokecolor{currentstroke}% 1627 \pgfsetdash{}{0pt}% 1628 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1629 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 1630 \pgfusepath{stroke}% 1631 \end{pgfscope}% 1632 \begin{pgfscope}% 1633 \pgfsetrectcap% 1634 \pgfsetmiterjoin% 1635 \pgfsetlinewidth{0.803000pt}% 1636 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1637 \pgfsetstrokecolor{currentstroke}% 1638 \pgfsetdash{}{0pt}% 1639 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 1640 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1641 \pgfusepath{stroke}% 1642 \end{pgfscope}% 1643 \begin{pgfscope}% 1644 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 1645 \pgfsetstrokecolor{textcolor}% 1646 \pgfsetfillcolor{textcolor}% 1647 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Aggregate Lock Benchmark: 2 Locks}% 1648 \end{pgfscope}% 1649 \begin{pgfscope}% 1650 \pgfsetbuttcap% 1651 \pgfsetmiterjoin% 1652 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 1653 \pgfsetfillcolor{currentfill}% 1654 \pgfsetfillopacity{0.800000}% 1655 \pgfsetlinewidth{1.003750pt}% 1656 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 1657 \pgfsetstrokecolor{currentstroke}% 1658 \pgfsetstrokeopacity{0.800000}% 1659 \pgfsetdash{}{0pt}% 1660 \pgfpathmoveto{\pgfqpoint{0.955556in}{0.639111in}}% 1661 \pgfpathlineto{\pgfqpoint{2.957298in}{0.639111in}}% 1662 \pgfpathquadraticcurveto{\pgfqpoint{3.001743in}{0.639111in}}{\pgfqpoint{3.001743in}{0.683556in}}% 1663 \pgfpathlineto{\pgfqpoint{3.001743in}{1.959172in}}% 1664 \pgfpathquadraticcurveto{\pgfqpoint{3.001743in}{2.003617in}}{\pgfqpoint{2.957298in}{2.003617in}}% 1665 \pgfpathlineto{\pgfqpoint{0.955556in}{2.003617in}}% 1666 \pgfpathquadraticcurveto{\pgfqpoint{0.911111in}{2.003617in}}{\pgfqpoint{0.911111in}{1.959172in}}% 1667 \pgfpathlineto{\pgfqpoint{0.911111in}{0.683556in}}% 1668 \pgfpathquadraticcurveto{\pgfqpoint{0.911111in}{0.639111in}}{\pgfqpoint{0.955556in}{0.639111in}}% 1669 \pgfpathclose% 1670 \pgfusepath{stroke,fill}% 1671 \end{pgfscope}% 1672 \begin{pgfscope}% 1673 \pgfsetbuttcap% 1674 \pgfsetroundjoin% 1675 \pgfsetlinewidth{1.505625pt}% 1676 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1677 \pgfsetstrokecolor{currentstroke}% 1678 \pgfsetdash{}{0pt}% 1679 \pgfpathmoveto{\pgfqpoint{1.222222in}{1.714728in}}% 1680 \pgfpathlineto{\pgfqpoint{1.222222in}{1.936950in}}% 1681 \pgfusepath{stroke}% 1682 \end{pgfscope}% 1683 \begin{pgfscope}% 1684 \pgfsetbuttcap% 1685 \pgfsetroundjoin% 1686 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1687 \pgfsetfillcolor{currentfill}% 1688 \pgfsetlinewidth{1.003750pt}% 1689 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1690 \pgfsetstrokecolor{currentstroke}% 1691 \pgfsetdash{}{0pt}% 1692 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1693 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1694 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1695 \pgfusepath{stroke,fill}% 1696 }% 1697 \begin{pgfscope}% 1698 \pgfsys@transformshift{1.222222in}{1.714728in}% 1699 \pgfsys@useobject{currentmarker}{}% 1700 \end{pgfscope}% 1701 \end{pgfscope}% 1702 \begin{pgfscope}% 1703 \pgfsetbuttcap% 1704 \pgfsetroundjoin% 1705 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1706 \pgfsetfillcolor{currentfill}% 1707 \pgfsetlinewidth{1.003750pt}% 1708 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1709 \pgfsetstrokecolor{currentstroke}% 1710 \pgfsetdash{}{0pt}% 1711 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1712 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1713 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1714 \pgfusepath{stroke,fill}% 1715 }% 1716 \begin{pgfscope}% 1717 \pgfsys@transformshift{1.222222in}{1.936950in}% 1718 \pgfsys@useobject{currentmarker}{}% 1719 \end{pgfscope}% 1720 \end{pgfscope}% 1721 \begin{pgfscope}% 1722 \pgfsetrectcap% 1723 \pgfsetroundjoin% 1724 \pgfsetlinewidth{1.505625pt}% 1725 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1726 \pgfsetstrokecolor{currentstroke}% 1727 \pgfsetdash{}{0pt}% 1728 \pgfpathmoveto{\pgfqpoint{1.000000in}{1.825839in}}% 1729 \pgfpathlineto{\pgfqpoint{1.444444in}{1.825839in}}% 1730 \pgfusepath{stroke}% 1731 \end{pgfscope}% 1732 \begin{pgfscope}% 1733 \pgfsetbuttcap% 1734 \pgfsetroundjoin% 1735 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1736 \pgfsetfillcolor{currentfill}% 1737 \pgfsetlinewidth{1.003750pt}% 1738 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1443 1739 \pgfsetstrokecolor{currentstroke}% 1444 1740 \pgfsetdash{}{0pt}% … … 1457 1753 }% 1458 1754 \begin{pgfscope}% 1459 \pgfsys@transformshift{1.025455in}{4.014803in}% 1460 \pgfsys@useobject{currentmarker}{}% 1461 \end{pgfscope}% 1462 \begin{pgfscope}% 1463 \pgfsys@transformshift{1.326061in}{3.745922in}% 1464 \pgfsys@useobject{currentmarker}{}% 1465 \end{pgfscope}% 1466 \begin{pgfscope}% 1467 \pgfsys@transformshift{1.927273in}{3.503889in}% 1468 \pgfsys@useobject{currentmarker}{}% 1469 \end{pgfscope}% 1470 \begin{pgfscope}% 1471 \pgfsys@transformshift{3.129697in}{3.173273in}% 1472 \pgfsys@useobject{currentmarker}{}% 1473 \end{pgfscope}% 1474 \begin{pgfscope}% 1475 \pgfsys@transformshift{4.332121in}{2.828641in}% 1476 \pgfsys@useobject{currentmarker}{}% 1477 \end{pgfscope}% 1478 \begin{pgfscope}% 1479 \pgfsys@transformshift{5.534545in}{2.787501in}% 1480 \pgfsys@useobject{currentmarker}{}% 1481 \end{pgfscope}% 1482 \end{pgfscope}% 1483 \begin{pgfscope}% 1484 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1485 \pgfusepath{clip}% 1486 \pgfsetrectcap% 1487 \pgfsetroundjoin% 1488 \pgfsetlinewidth{1.505625pt}% 1489 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1490 \pgfsetstrokecolor{currentstroke}% 1491 \pgfsetdash{}{0pt}% 1492 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.845372in}}% 1493 \pgfpathlineto{\pgfqpoint{1.326061in}{3.591512in}}% 1494 \pgfpathlineto{\pgfqpoint{1.927273in}{3.353860in}}% 1495 \pgfpathlineto{\pgfqpoint{3.129697in}{2.972783in}}% 1496 \pgfpathlineto{\pgfqpoint{4.332121in}{2.504321in}}% 1497 \pgfpathlineto{\pgfqpoint{5.534545in}{2.425566in}}% 1498 \pgfusepath{stroke}% 1499 \end{pgfscope}% 1500 \begin{pgfscope}% 1501 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1502 \pgfusepath{clip}% 1503 \pgfsetbuttcap% 1504 \pgfsetroundjoin% 1505 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1506 \pgfsetfillcolor{currentfill}% 1507 \pgfsetlinewidth{1.003750pt}% 1508 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1509 \pgfsetstrokecolor{currentstroke}% 1510 \pgfsetdash{}{0pt}% 1511 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1512 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1513 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1514 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1515 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1516 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1517 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1518 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1519 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1520 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1521 \pgfpathclose% 1522 \pgfusepath{stroke,fill}% 1523 }% 1524 \begin{pgfscope}% 1525 \pgfsys@transformshift{1.025455in}{3.845372in}% 1526 \pgfsys@useobject{currentmarker}{}% 1527 \end{pgfscope}% 1528 \begin{pgfscope}% 1529 \pgfsys@transformshift{1.326061in}{3.591512in}% 1530 \pgfsys@useobject{currentmarker}{}% 1531 \end{pgfscope}% 1532 \begin{pgfscope}% 1533 \pgfsys@transformshift{1.927273in}{3.353860in}% 1534 \pgfsys@useobject{currentmarker}{}% 1535 \end{pgfscope}% 1536 \begin{pgfscope}% 1537 \pgfsys@transformshift{3.129697in}{2.972783in}% 1538 \pgfsys@useobject{currentmarker}{}% 1539 \end{pgfscope}% 1540 \begin{pgfscope}% 1541 \pgfsys@transformshift{4.332121in}{2.504321in}% 1542 \pgfsys@useobject{currentmarker}{}% 1543 \end{pgfscope}% 1544 \begin{pgfscope}% 1545 \pgfsys@transformshift{5.534545in}{2.425566in}% 1546 \pgfsys@useobject{currentmarker}{}% 1547 \end{pgfscope}% 1548 \end{pgfscope}% 1549 \begin{pgfscope}% 1550 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1551 \pgfusepath{clip}% 1552 \pgfsetrectcap% 1553 \pgfsetroundjoin% 1554 \pgfsetlinewidth{1.505625pt}% 1555 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1556 \pgfsetstrokecolor{currentstroke}% 1557 \pgfsetdash{}{0pt}% 1558 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.748153in}}% 1559 \pgfpathlineto{\pgfqpoint{1.326061in}{3.100576in}}% 1560 \pgfpathlineto{\pgfqpoint{1.927273in}{2.500046in}}% 1561 \pgfpathlineto{\pgfqpoint{3.129697in}{1.740526in}}% 1562 \pgfpathlineto{\pgfqpoint{4.332121in}{1.218298in}}% 1563 \pgfpathlineto{\pgfqpoint{5.534545in}{0.734521in}}% 1564 \pgfusepath{stroke}% 1565 \end{pgfscope}% 1566 \begin{pgfscope}% 1567 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 1568 \pgfusepath{clip}% 1569 \pgfsetbuttcap% 1570 \pgfsetroundjoin% 1571 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1572 \pgfsetfillcolor{currentfill}% 1573 \pgfsetlinewidth{1.003750pt}% 1574 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1575 \pgfsetstrokecolor{currentstroke}% 1576 \pgfsetdash{}{0pt}% 1577 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1578 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1579 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1580 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1581 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1582 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1583 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1584 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1585 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1586 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1587 \pgfpathclose% 1588 \pgfusepath{stroke,fill}% 1589 }% 1590 \begin{pgfscope}% 1591 \pgfsys@transformshift{1.025455in}{3.748153in}% 1592 \pgfsys@useobject{currentmarker}{}% 1593 \end{pgfscope}% 1594 \begin{pgfscope}% 1595 \pgfsys@transformshift{1.326061in}{3.100576in}% 1596 \pgfsys@useobject{currentmarker}{}% 1597 \end{pgfscope}% 1598 \begin{pgfscope}% 1599 \pgfsys@transformshift{1.927273in}{2.500046in}% 1600 \pgfsys@useobject{currentmarker}{}% 1601 \end{pgfscope}% 1602 \begin{pgfscope}% 1603 \pgfsys@transformshift{3.129697in}{1.740526in}% 1604 \pgfsys@useobject{currentmarker}{}% 1605 \end{pgfscope}% 1606 \begin{pgfscope}% 1607 \pgfsys@transformshift{4.332121in}{1.218298in}% 1608 \pgfsys@useobject{currentmarker}{}% 1609 \end{pgfscope}% 1610 \begin{pgfscope}% 1611 \pgfsys@transformshift{5.534545in}{0.734521in}% 1612 \pgfsys@useobject{currentmarker}{}% 1613 \end{pgfscope}% 1614 \end{pgfscope}% 1615 \begin{pgfscope}% 1616 \pgfsetrectcap% 1617 \pgfsetmiterjoin% 1618 \pgfsetlinewidth{0.803000pt}% 1619 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1620 \pgfsetstrokecolor{currentstroke}% 1621 \pgfsetdash{}{0pt}% 1622 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1623 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 1624 \pgfusepath{stroke}% 1625 \end{pgfscope}% 1626 \begin{pgfscope}% 1627 \pgfsetrectcap% 1628 \pgfsetmiterjoin% 1629 \pgfsetlinewidth{0.803000pt}% 1630 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1631 \pgfsetstrokecolor{currentstroke}% 1632 \pgfsetdash{}{0pt}% 1633 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 1634 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1635 \pgfusepath{stroke}% 1636 \end{pgfscope}% 1637 \begin{pgfscope}% 1638 \pgfsetrectcap% 1639 \pgfsetmiterjoin% 1640 \pgfsetlinewidth{0.803000pt}% 1641 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1642 \pgfsetstrokecolor{currentstroke}% 1643 \pgfsetdash{}{0pt}% 1644 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 1645 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 1646 \pgfusepath{stroke}% 1647 \end{pgfscope}% 1648 \begin{pgfscope}% 1649 \pgfsetrectcap% 1650 \pgfsetmiterjoin% 1651 \pgfsetlinewidth{0.803000pt}% 1652 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 1653 \pgfsetstrokecolor{currentstroke}% 1654 \pgfsetdash{}{0pt}% 1655 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 1656 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 1657 \pgfusepath{stroke}% 1755 \pgfsys@transformshift{1.222222in}{1.825839in}% 1756 \pgfsys@useobject{currentmarker}{}% 1757 \end{pgfscope}% 1658 1758 \end{pgfscope}% 1659 1759 \begin{pgfscope}% … … 1661 1761 \pgfsetstrokecolor{textcolor}% 1662 1762 \pgfsetfillcolor{textcolor}% 1663 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{12.000000}{14.400000}\selectfont Aggregate Lock Benchmark: 2 Locks}% 1664 \end{pgfscope}% 1665 \begin{pgfscope}% 1666 \pgfsetbuttcap% 1667 \pgfsetmiterjoin% 1668 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 1669 \pgfsetfillcolor{currentfill}% 1670 \pgfsetfillopacity{0.800000}% 1671 \pgfsetlinewidth{1.003750pt}% 1672 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 1673 \pgfsetstrokecolor{currentstroke}% 1674 \pgfsetstrokeopacity{0.800000}% 1675 \pgfsetdash{}{0pt}% 1676 \pgfpathmoveto{\pgfqpoint{4.403517in}{3.338198in}}% 1677 \pgfpathlineto{\pgfqpoint{5.662778in}{3.338198in}}% 1678 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{3.338198in}}{\pgfqpoint{5.690556in}{3.365976in}}% 1679 \pgfpathlineto{\pgfqpoint{5.690556in}{4.126778in}}% 1680 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{4.154556in}}{\pgfqpoint{5.662778in}{4.154556in}}% 1681 \pgfpathlineto{\pgfqpoint{4.403517in}{4.154556in}}% 1682 \pgfpathquadraticcurveto{\pgfqpoint{4.375739in}{4.154556in}}{\pgfqpoint{4.375739in}{4.126778in}}% 1683 \pgfpathlineto{\pgfqpoint{4.375739in}{3.365976in}}% 1684 \pgfpathquadraticcurveto{\pgfqpoint{4.375739in}{3.338198in}}{\pgfqpoint{4.403517in}{3.338198in}}% 1685 \pgfpathclose% 1686 \pgfusepath{stroke,fill}% 1687 \end{pgfscope}% 1688 \begin{pgfscope}% 1689 \pgfsetbuttcap% 1690 \pgfsetroundjoin% 1691 \pgfsetlinewidth{1.505625pt}% 1692 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1693 \pgfsetstrokecolor{currentstroke}% 1694 \pgfsetdash{}{0pt}% 1695 \pgfpathmoveto{\pgfqpoint{4.570184in}{3.980944in}}% 1696 \pgfpathlineto{\pgfqpoint{4.570184in}{4.119833in}}% 1697 \pgfusepath{stroke}% 1698 \end{pgfscope}% 1699 \begin{pgfscope}% 1700 \pgfsetbuttcap% 1701 \pgfsetroundjoin% 1702 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1703 \pgfsetfillcolor{currentfill}% 1704 \pgfsetlinewidth{1.003750pt}% 1705 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1763 \pgftext[x=1.622222in,y=1.748061in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-baseline}% 1764 \end{pgfscope}% 1765 \begin{pgfscope}% 1766 \pgfsetbuttcap% 1767 \pgfsetroundjoin% 1768 \pgfsetlinewidth{1.505625pt}% 1769 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1770 \pgfsetstrokecolor{currentstroke}% 1771 \pgfsetdash{}{0pt}% 1772 \pgfpathmoveto{\pgfqpoint{1.222222in}{1.390268in}}% 1773 \pgfpathlineto{\pgfqpoint{1.222222in}{1.612490in}}% 1774 \pgfusepath{stroke}% 1775 \end{pgfscope}% 1776 \begin{pgfscope}% 1777 \pgfsetbuttcap% 1778 \pgfsetroundjoin% 1779 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1780 \pgfsetfillcolor{currentfill}% 1781 \pgfsetlinewidth{1.003750pt}% 1782 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1706 1783 \pgfsetstrokecolor{currentstroke}% 1707 1784 \pgfsetdash{}{0pt}% … … 1712 1789 }% 1713 1790 \begin{pgfscope}% 1714 \pgfsys@transformshift{ 4.570184in}{3.980944in}%1715 \pgfsys@useobject{currentmarker}{}% 1716 \end{pgfscope}% 1717 \end{pgfscope}% 1718 \begin{pgfscope}% 1719 \pgfsetbuttcap% 1720 \pgfsetroundjoin% 1721 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1722 \pgfsetfillcolor{currentfill}% 1723 \pgfsetlinewidth{1.003750pt}% 1724 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1791 \pgfsys@transformshift{1.222222in}{1.390268in}% 1792 \pgfsys@useobject{currentmarker}{}% 1793 \end{pgfscope}% 1794 \end{pgfscope}% 1795 \begin{pgfscope}% 1796 \pgfsetbuttcap% 1797 \pgfsetroundjoin% 1798 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1799 \pgfsetfillcolor{currentfill}% 1800 \pgfsetlinewidth{1.003750pt}% 1801 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1725 1802 \pgfsetstrokecolor{currentstroke}% 1726 1803 \pgfsetdash{}{0pt}% … … 1731 1808 }% 1732 1809 \begin{pgfscope}% 1733 \pgfsys@transformshift{ 4.570184in}{4.119833in}%1810 \pgfsys@transformshift{1.222222in}{1.612490in}% 1734 1811 \pgfsys@useobject{currentmarker}{}% 1735 1812 \end{pgfscope}% … … 1739 1816 \pgfsetroundjoin% 1740 1817 \pgfsetlinewidth{1.505625pt}% 1741 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1742 \pgfsetstrokecolor{currentstroke}% 1743 \pgfsetdash{}{0pt}% 1744 \pgfpathmoveto{\pgfqpoint{ 4.431295in}{4.050389in}}%1745 \pgfpathlineto{\pgfqpoint{ 4.709073in}{4.050389in}}%1746 \pgfusepath{stroke}% 1747 \end{pgfscope}% 1748 \begin{pgfscope}% 1749 \pgfsetbuttcap% 1750 \pgfset roundjoin%1751 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1752 \pgfsetfillcolor{currentfill}% 1753 \pgfsetlinewidth{1.003750pt}% 1754 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1818 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1819 \pgfsetstrokecolor{currentstroke}% 1820 \pgfsetdash{}{0pt}% 1821 \pgfpathmoveto{\pgfqpoint{1.000000in}{1.501379in}}% 1822 \pgfpathlineto{\pgfqpoint{1.444444in}{1.501379in}}% 1823 \pgfusepath{stroke}% 1824 \end{pgfscope}% 1825 \begin{pgfscope}% 1826 \pgfsetbuttcap% 1827 \pgfsetmiterjoin% 1828 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1829 \pgfsetfillcolor{currentfill}% 1830 \pgfsetlinewidth{1.003750pt}% 1831 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1755 1832 \pgfsetstrokecolor{currentstroke}% 1756 1833 \pgfsetdash{}{0pt}% 1757 1834 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1758 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1759 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1760 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1761 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1762 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1763 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1764 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1765 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1766 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1835 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1836 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1837 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1838 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1767 1839 \pgfpathclose% 1768 1840 \pgfusepath{stroke,fill}% 1769 1841 }% 1770 1842 \begin{pgfscope}% 1771 \pgfsys@transformshift{ 4.570184in}{4.050389in}%1843 \pgfsys@transformshift{1.222222in}{1.501379in}% 1772 1844 \pgfsys@useobject{currentmarker}{}% 1773 1845 \end{pgfscope}% … … 1777 1849 \pgfsetstrokecolor{textcolor}% 1778 1850 \pgfsetfillcolor{textcolor}% 1779 \pgftext[x= 4.820184in,y=4.001778in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-baseline}%1780 \end{pgfscope}% 1781 \begin{pgfscope}% 1782 \pgfsetbuttcap% 1783 \pgfsetroundjoin% 1784 \pgfsetlinewidth{1.505625pt}% 1785 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%1786 \pgfsetstrokecolor{currentstroke}% 1787 \pgfsetdash{}{0pt}% 1788 \pgfpathmoveto{\pgfqpoint{ 4.570184in}{3.787272in}}%1789 \pgfpathlineto{\pgfqpoint{ 4.570184in}{3.926161in}}%1790 \pgfusepath{stroke}% 1791 \end{pgfscope}% 1792 \begin{pgfscope}% 1793 \pgfsetbuttcap% 1794 \pgfsetroundjoin% 1795 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%1796 \pgfsetfillcolor{currentfill}% 1797 \pgfsetlinewidth{1.003750pt}% 1798 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%1851 \pgftext[x=1.622222in,y=1.423601in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-baseline}% 1852 \end{pgfscope}% 1853 \begin{pgfscope}% 1854 \pgfsetbuttcap% 1855 \pgfsetroundjoin% 1856 \pgfsetlinewidth{1.505625pt}% 1857 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1858 \pgfsetstrokecolor{currentstroke}% 1859 \pgfsetdash{}{0pt}% 1860 \pgfpathmoveto{\pgfqpoint{1.222222in}{1.065808in}}% 1861 \pgfpathlineto{\pgfqpoint{1.222222in}{1.288031in}}% 1862 \pgfusepath{stroke}% 1863 \end{pgfscope}% 1864 \begin{pgfscope}% 1865 \pgfsetbuttcap% 1866 \pgfsetroundjoin% 1867 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1868 \pgfsetfillcolor{currentfill}% 1869 \pgfsetlinewidth{1.003750pt}% 1870 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1799 1871 \pgfsetstrokecolor{currentstroke}% 1800 1872 \pgfsetdash{}{0pt}% … … 1805 1877 }% 1806 1878 \begin{pgfscope}% 1807 \pgfsys@transformshift{ 4.570184in}{3.787272in}%1808 \pgfsys@useobject{currentmarker}{}% 1809 \end{pgfscope}% 1810 \end{pgfscope}% 1811 \begin{pgfscope}% 1812 \pgfsetbuttcap% 1813 \pgfsetroundjoin% 1814 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%1815 \pgfsetfillcolor{currentfill}% 1816 \pgfsetlinewidth{1.003750pt}% 1817 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%1879 \pgfsys@transformshift{1.222222in}{1.065808in}% 1880 \pgfsys@useobject{currentmarker}{}% 1881 \end{pgfscope}% 1882 \end{pgfscope}% 1883 \begin{pgfscope}% 1884 \pgfsetbuttcap% 1885 \pgfsetroundjoin% 1886 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1887 \pgfsetfillcolor{currentfill}% 1888 \pgfsetlinewidth{1.003750pt}% 1889 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1818 1890 \pgfsetstrokecolor{currentstroke}% 1819 1891 \pgfsetdash{}{0pt}% … … 1824 1896 }% 1825 1897 \begin{pgfscope}% 1826 \pgfsys@transformshift{ 4.570184in}{3.926161in}%1898 \pgfsys@transformshift{1.222222in}{1.288031in}% 1827 1899 \pgfsys@useobject{currentmarker}{}% 1828 1900 \end{pgfscope}% … … 1832 1904 \pgfsetroundjoin% 1833 1905 \pgfsetlinewidth{1.505625pt}% 1834 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1835 \pgfsetstrokecolor{currentstroke}% 1836 \pgfsetdash{}{0pt}% 1837 \pgfpathmoveto{\pgfqpoint{4.431295in}{3.856716in}}% 1838 \pgfpathlineto{\pgfqpoint{4.709073in}{3.856716in}}% 1839 \pgfusepath{stroke}% 1840 \end{pgfscope}% 1841 \begin{pgfscope}% 1842 \pgfsetbuttcap% 1843 \pgfsetroundjoin% 1844 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1845 \pgfsetfillcolor{currentfill}% 1846 \pgfsetlinewidth{1.003750pt}% 1847 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1848 \pgfsetstrokecolor{currentstroke}% 1849 \pgfsetdash{}{0pt}% 1850 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1851 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1852 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1853 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1854 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1855 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1856 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1857 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1858 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1859 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1906 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1907 \pgfsetstrokecolor{currentstroke}% 1908 \pgfsetdash{}{0pt}% 1909 \pgfpathmoveto{\pgfqpoint{1.000000in}{1.176919in}}% 1910 \pgfpathlineto{\pgfqpoint{1.444444in}{1.176919in}}% 1911 \pgfusepath{stroke}% 1912 \end{pgfscope}% 1913 \begin{pgfscope}% 1914 \pgfsetbuttcap% 1915 \pgfsetmiterjoin% 1916 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1917 \pgfsetfillcolor{currentfill}% 1918 \pgfsetlinewidth{1.003750pt}% 1919 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 1920 \pgfsetstrokecolor{currentstroke}% 1921 \pgfsetdash{}{0pt}% 1922 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 1923 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 1924 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 1925 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 1926 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 1860 1927 \pgfpathclose% 1861 1928 \pgfusepath{stroke,fill}% 1862 1929 }% 1863 1930 \begin{pgfscope}% 1864 \pgfsys@transformshift{ 4.570184in}{3.856716in}%1931 \pgfsys@transformshift{1.222222in}{1.176919in}% 1865 1932 \pgfsys@useobject{currentmarker}{}% 1866 1933 \end{pgfscope}% … … 1870 1937 \pgfsetstrokecolor{textcolor}% 1871 1938 \pgfsetfillcolor{textcolor}% 1872 \pgftext[x= 4.820184in,y=3.808105in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-baseline}%1873 \end{pgfscope}% 1874 \begin{pgfscope}% 1875 \pgfsetbuttcap% 1876 \pgfsetroundjoin% 1877 \pgfsetlinewidth{1.505625pt}% 1878 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%1879 \pgfsetstrokecolor{currentstroke}% 1880 \pgfsetdash{}{0pt}% 1881 \pgfpathmoveto{\pgfqpoint{ 4.570184in}{3.593599in}}%1882 \pgfpathlineto{\pgfqpoint{ 4.570184in}{3.732488in}}%1883 \pgfusepath{stroke}% 1884 \end{pgfscope}% 1885 \begin{pgfscope}% 1886 \pgfsetbuttcap% 1887 \pgfsetroundjoin% 1888 \definecolor{currentfill}{rgb}{0. 172549,0.627451,0.172549}%1889 \pgfsetfillcolor{currentfill}% 1890 \pgfsetlinewidth{1.003750pt}% 1891 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%1939 \pgftext[x=1.622222in,y=1.099142in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-rand}% 1940 \end{pgfscope}% 1941 \begin{pgfscope}% 1942 \pgfsetbuttcap% 1943 \pgfsetroundjoin% 1944 \pgfsetlinewidth{1.505625pt}% 1945 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1946 \pgfsetstrokecolor{currentstroke}% 1947 \pgfsetdash{}{0pt}% 1948 \pgfpathmoveto{\pgfqpoint{1.222222in}{0.741349in}}% 1949 \pgfpathlineto{\pgfqpoint{1.222222in}{0.963571in}}% 1950 \pgfusepath{stroke}% 1951 \end{pgfscope}% 1952 \begin{pgfscope}% 1953 \pgfsetbuttcap% 1954 \pgfsetroundjoin% 1955 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1956 \pgfsetfillcolor{currentfill}% 1957 \pgfsetlinewidth{1.003750pt}% 1958 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1892 1959 \pgfsetstrokecolor{currentstroke}% 1893 1960 \pgfsetdash{}{0pt}% … … 1898 1965 }% 1899 1966 \begin{pgfscope}% 1900 \pgfsys@transformshift{ 4.570184in}{3.593599in}%1901 \pgfsys@useobject{currentmarker}{}% 1902 \end{pgfscope}% 1903 \end{pgfscope}% 1904 \begin{pgfscope}% 1905 \pgfsetbuttcap% 1906 \pgfsetroundjoin% 1907 \definecolor{currentfill}{rgb}{0. 172549,0.627451,0.172549}%1908 \pgfsetfillcolor{currentfill}% 1909 \pgfsetlinewidth{1.003750pt}% 1910 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%1967 \pgfsys@transformshift{1.222222in}{0.741349in}% 1968 \pgfsys@useobject{currentmarker}{}% 1969 \end{pgfscope}% 1970 \end{pgfscope}% 1971 \begin{pgfscope}% 1972 \pgfsetbuttcap% 1973 \pgfsetroundjoin% 1974 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1975 \pgfsetfillcolor{currentfill}% 1976 \pgfsetlinewidth{1.003750pt}% 1977 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1911 1978 \pgfsetstrokecolor{currentstroke}% 1912 1979 \pgfsetdash{}{0pt}% … … 1917 1984 }% 1918 1985 \begin{pgfscope}% 1919 \pgfsys@transformshift{ 4.570184in}{3.732488in}%1986 \pgfsys@transformshift{1.222222in}{0.963571in}% 1920 1987 \pgfsys@useobject{currentmarker}{}% 1921 1988 \end{pgfscope}% … … 1925 1992 \pgfsetroundjoin% 1926 1993 \pgfsetlinewidth{1.505625pt}% 1927 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%1928 \pgfsetstrokecolor{currentstroke}% 1929 \pgfsetdash{}{0pt}% 1930 \pgfpathmoveto{\pgfqpoint{ 4.431295in}{3.663043in}}%1931 \pgfpathlineto{\pgfqpoint{ 4.709073in}{3.663043in}}%1932 \pgfusepath{stroke}% 1933 \end{pgfscope}% 1934 \begin{pgfscope}% 1935 \pgfsetbuttcap% 1936 \pgfsetroundjoin% 1937 \definecolor{currentfill}{rgb}{0. 172549,0.627451,0.172549}%1938 \pgfsetfillcolor{currentfill}% 1939 \pgfsetlinewidth{1.003750pt}% 1940 \definecolor{currentstroke}{rgb}{0. 172549,0.627451,0.172549}%1994 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1995 \pgfsetstrokecolor{currentstroke}% 1996 \pgfsetdash{}{0pt}% 1997 \pgfpathmoveto{\pgfqpoint{1.000000in}{0.852460in}}% 1998 \pgfpathlineto{\pgfqpoint{1.444444in}{0.852460in}}% 1999 \pgfusepath{stroke}% 2000 \end{pgfscope}% 2001 \begin{pgfscope}% 2002 \pgfsetbuttcap% 2003 \pgfsetroundjoin% 2004 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2005 \pgfsetfillcolor{currentfill}% 2006 \pgfsetlinewidth{1.003750pt}% 2007 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1941 2008 \pgfsetstrokecolor{currentstroke}% 1942 2009 \pgfsetdash{}{0pt}% 1943 2010 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1944 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1945 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1946 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1947 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1948 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1949 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1950 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1951 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1952 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1953 \pgfpathclose% 1954 \pgfusepath{stroke,fill}% 1955 }% 1956 \begin{pgfscope}% 1957 \pgfsys@transformshift{4.570184in}{3.663043in}% 2011 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2012 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2013 \pgfpathmoveto{\pgfqpoint{-0.041667in}{0.041667in}}% 2014 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2015 \pgfusepath{stroke,fill}% 2016 }% 2017 \begin{pgfscope}% 2018 \pgfsys@transformshift{1.222222in}{0.852460in}% 1958 2019 \pgfsys@useobject{currentmarker}{}% 1959 2020 \end{pgfscope}% … … 1963 2024 \pgfsetstrokecolor{textcolor}% 1964 2025 \pgfsetfillcolor{textcolor}% 1965 \pgftext[x=4.820184in,y=3.614432in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-rand}% 1966 \end{pgfscope}% 1967 \begin{pgfscope}% 1968 \pgfsetbuttcap% 1969 \pgfsetroundjoin% 1970 \pgfsetlinewidth{1.505625pt}% 1971 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1972 \pgfsetstrokecolor{currentstroke}% 1973 \pgfsetdash{}{0pt}% 1974 \pgfpathmoveto{\pgfqpoint{4.570184in}{3.399926in}}% 1975 \pgfpathlineto{\pgfqpoint{4.570184in}{3.538815in}}% 1976 \pgfusepath{stroke}% 1977 \end{pgfscope}% 1978 \begin{pgfscope}% 1979 \pgfsetbuttcap% 1980 \pgfsetroundjoin% 1981 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 1982 \pgfsetfillcolor{currentfill}% 1983 \pgfsetlinewidth{1.003750pt}% 1984 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 1985 \pgfsetstrokecolor{currentstroke}% 1986 \pgfsetdash{}{0pt}% 1987 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1988 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1989 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1990 \pgfusepath{stroke,fill}% 1991 }% 1992 \begin{pgfscope}% 1993 \pgfsys@transformshift{4.570184in}{3.399926in}% 1994 \pgfsys@useobject{currentmarker}{}% 1995 \end{pgfscope}% 1996 \end{pgfscope}% 1997 \begin{pgfscope}% 1998 \pgfsetbuttcap% 1999 \pgfsetroundjoin% 2000 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2001 \pgfsetfillcolor{currentfill}% 2002 \pgfsetlinewidth{1.003750pt}% 2003 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2004 \pgfsetstrokecolor{currentstroke}% 2005 \pgfsetdash{}{0pt}% 2006 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2007 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2008 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2009 \pgfusepath{stroke,fill}% 2010 }% 2011 \begin{pgfscope}% 2012 \pgfsys@transformshift{4.570184in}{3.538815in}% 2013 \pgfsys@useobject{currentmarker}{}% 2014 \end{pgfscope}% 2015 \end{pgfscope}% 2016 \begin{pgfscope}% 2017 \pgfsetrectcap% 2018 \pgfsetroundjoin% 2019 \pgfsetlinewidth{1.505625pt}% 2020 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2021 \pgfsetstrokecolor{currentstroke}% 2022 \pgfsetdash{}{0pt}% 2023 \pgfpathmoveto{\pgfqpoint{4.431295in}{3.469371in}}% 2024 \pgfpathlineto{\pgfqpoint{4.709073in}{3.469371in}}% 2025 \pgfusepath{stroke}% 2026 \end{pgfscope}% 2027 \begin{pgfscope}% 2028 \pgfsetbuttcap% 2029 \pgfsetroundjoin% 2030 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2031 \pgfsetfillcolor{currentfill}% 2032 \pgfsetlinewidth{1.003750pt}% 2033 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2034 \pgfsetstrokecolor{currentstroke}% 2035 \pgfsetdash{}{0pt}% 2036 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2037 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2038 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2039 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2040 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2041 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2042 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2043 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2044 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2045 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2046 \pgfpathclose% 2047 \pgfusepath{stroke,fill}% 2048 }% 2049 \begin{pgfscope}% 2050 \pgfsys@transformshift{4.570184in}{3.469371in}% 2051 \pgfsys@useobject{currentmarker}{}% 2052 \end{pgfscope}% 2053 \end{pgfscope}% 2054 \begin{pgfscope}% 2055 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2056 \pgfsetstrokecolor{textcolor}% 2057 \pgfsetfillcolor{textcolor}% 2058 \pgftext[x=4.820184in,y=3.420759in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-rand}% 2026 \pgftext[x=1.622222in,y=0.774682in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-rand}% 2059 2027 \end{pgfscope}% 2060 2028 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/pyke_Aggregate_Lock_4.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=0.627700in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{3}\)}%235 \pgftext[x=0.399655in,y=0.592592in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{3}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 258 258 \pgfsetstrokecolor{textcolor}% 259 259 \pgfsetfillcolor{textcolor}% 260 \pgftext[x=0. 501581in,y=1.310712in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{4}\)}%260 \pgftext[x=0.399655in,y=1.275604in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{4}\)}% 261 261 \end{pgfscope}% 262 262 \begin{pgfscope}% … … 283 283 \pgfsetstrokecolor{textcolor}% 284 284 \pgfsetfillcolor{textcolor}% 285 \pgftext[x=0. 501581in,y=1.993723in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{5}\)}%285 \pgftext[x=0.399655in,y=1.958615in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{5}\)}% 286 286 \end{pgfscope}% 287 287 \begin{pgfscope}% … … 308 308 \pgfsetstrokecolor{textcolor}% 309 309 \pgfsetfillcolor{textcolor}% 310 \pgftext[x=0. 501581in,y=2.676735in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{6}\)}%310 \pgftext[x=0.399655in,y=2.641627in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{6}\)}% 311 311 \end{pgfscope}% 312 312 \begin{pgfscope}% … … 333 333 \pgfsetstrokecolor{textcolor}% 334 334 \pgfsetfillcolor{textcolor}% 335 \pgftext[x=0. 501581in,y=3.359746in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{7}\)}%335 \pgftext[x=0.399655in,y=3.324638in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{7}\)}% 336 336 \end{pgfscope}% 337 337 \begin{pgfscope}% … … 358 358 \pgfsetstrokecolor{textcolor}% 359 359 \pgfsetfillcolor{textcolor}% 360 \pgftext[x=0. 501581in,y=4.042757in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{8}\)}%360 \pgftext[x=0.399655in,y=4.007649in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{8}\)}% 361 361 \end{pgfscope}% 362 362 \begin{pgfscope}% … … 1181 1181 \pgfsetstrokecolor{textcolor}% 1182 1182 \pgfsetfillcolor{textcolor}% 1183 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (entries)}%1183 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (entries)}% 1184 1184 \end{pgfscope}% 1185 1185 \begin{pgfscope}% … … 1844 1844 \pgfusepath{clip}% 1845 1845 \pgfsetbuttcap% 1846 \pgfset roundjoin%1846 \pgfsetmiterjoin% 1847 1847 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1848 1848 \pgfsetfillcolor{currentfill}% … … 1851 1851 \pgfsetstrokecolor{currentstroke}% 1852 1852 \pgfsetdash{}{0pt}% 1853 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1854 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1855 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1856 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1857 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1858 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1859 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1860 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1861 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1862 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1853 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 1854 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 1855 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 1856 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 1857 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 1858 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 1863 1859 \pgfpathclose% 1864 1860 \pgfusepath{stroke,fill}% … … 1910 1906 \pgfusepath{clip}% 1911 1907 \pgfsetbuttcap% 1912 \pgfset roundjoin%1908 \pgfsetmiterjoin% 1913 1909 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1914 1910 \pgfsetfillcolor{currentfill}% … … 1918 1914 \pgfsetdash{}{0pt}% 1919 1915 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1920 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1921 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1922 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1923 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1924 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1925 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1926 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1927 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1928 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1916 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 1917 \pgfpathlineto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1918 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1929 1919 \pgfpathclose% 1930 1920 \pgfusepath{stroke,fill}% … … 1976 1966 \pgfusepath{clip}% 1977 1967 \pgfsetbuttcap% 1978 \pgfset roundjoin%1968 \pgfsetmiterjoin% 1979 1969 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 1980 1970 \pgfsetfillcolor{currentfill}% … … 1983 1973 \pgfsetstrokecolor{currentstroke}% 1984 1974 \pgfsetdash{}{0pt}% 1985 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1986 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1987 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1988 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1989 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1990 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1991 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1992 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1993 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1994 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1975 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.036084in}{-0.041667in}}{\pgfqpoint{0.036084in}{0.041667in}}{% 1976 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 1977 \pgfpathlineto{\pgfqpoint{-0.036084in}{0.020833in}}% 1978 \pgfpathlineto{\pgfqpoint{-0.036084in}{-0.020833in}}% 1979 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.041667in}}% 1980 \pgfpathlineto{\pgfqpoint{0.036084in}{-0.020833in}}% 1981 \pgfpathlineto{\pgfqpoint{0.036084in}{0.020833in}}% 1995 1982 \pgfpathclose% 1996 1983 \pgfusepath{stroke,fill}% … … 2042 2029 \pgfusepath{clip}% 2043 2030 \pgfsetbuttcap% 2044 \pgfset roundjoin%2031 \pgfsetbeveljoin% 2045 2032 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2046 2033 \pgfsetfillcolor{currentfill}% … … 2049 2036 \pgfsetstrokecolor{currentstroke}% 2050 2037 \pgfsetdash{}{0pt}% 2051 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2052 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2053 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2054 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2055 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2056 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2057 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2058 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2059 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2060 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2038 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 2039 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2040 \pgfpathlineto{\pgfqpoint{-0.009355in}{0.012876in}}% 2041 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 2042 \pgfpathlineto{\pgfqpoint{-0.015136in}{-0.004918in}}% 2043 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 2044 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.015915in}}% 2045 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 2046 \pgfpathlineto{\pgfqpoint{0.015136in}{-0.004918in}}% 2047 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 2048 \pgfpathlineto{\pgfqpoint{0.009355in}{0.012876in}}% 2061 2049 \pgfpathclose% 2062 2050 \pgfusepath{stroke,fill}% … … 2135 2123 \pgfsetstrokecolor{textcolor}% 2136 2124 \pgfsetfillcolor{textcolor}% 2137 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{1 2.000000}{14.400000}\selectfont Aggregate Lock Benchmark: 4 Locks}%2125 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Aggregate Lock Benchmark: 4 Locks}% 2138 2126 \end{pgfscope}% 2139 2127 \begin{pgfscope}% … … 2148 2136 \pgfsetstrokeopacity{0.800000}% 2149 2137 \pgfsetdash{}{0pt}% 2150 \pgfpathmoveto{\pgfqpoint{ 0.897222in}{0.597444in}}%2151 \pgfpathlineto{\pgfqpoint{ 2.156483in}{0.597444in}}%2152 \pgfpathquadraticcurveto{\pgfqpoint{ 2.184261in}{0.597444in}}{\pgfqpoint{2.184261in}{0.625222in}}%2153 \pgfpathlineto{\pgfqpoint{ 2.184261in}{1.386024in}}%2154 \pgfpathquadraticcurveto{\pgfqpoint{ 2.184261in}{1.413802in}}{\pgfqpoint{2.156483in}{1.413802in}}%2155 \pgfpathlineto{\pgfqpoint{ 0.897222in}{1.413802in}}%2156 \pgfpathquadraticcurveto{\pgfqpoint{ 0.869444in}{1.413802in}}{\pgfqpoint{0.869444in}{1.386024in}}%2157 \pgfpathlineto{\pgfqpoint{ 0.869444in}{0.625222in}}%2158 \pgfpathquadraticcurveto{\pgfqpoint{ 0.869444in}{0.597444in}}{\pgfqpoint{0.897222in}{0.597444in}}%2138 \pgfpathmoveto{\pgfqpoint{3.602702in}{1.693747in}}% 2139 \pgfpathlineto{\pgfqpoint{5.604444in}{1.693747in}}% 2140 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{1.693747in}}{\pgfqpoint{5.648889in}{1.738192in}}% 2141 \pgfpathlineto{\pgfqpoint{5.648889in}{3.013808in}}% 2142 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.058253in}}{\pgfqpoint{5.604444in}{3.058253in}}% 2143 \pgfpathlineto{\pgfqpoint{3.602702in}{3.058253in}}% 2144 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{3.058253in}}{\pgfqpoint{3.558257in}{3.013808in}}% 2145 \pgfpathlineto{\pgfqpoint{3.558257in}{1.738192in}}% 2146 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{1.693747in}}{\pgfqpoint{3.602702in}{1.693747in}}% 2159 2147 \pgfpathclose% 2160 2148 \pgfusepath{stroke,fill}% … … 2167 2155 \pgfsetstrokecolor{currentstroke}% 2168 2156 \pgfsetdash{}{0pt}% 2169 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{1.240191in}}%2170 \pgfpathlineto{\pgfqpoint{ 1.063889in}{1.379080in}}%2157 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.769364in}}% 2158 \pgfpathlineto{\pgfqpoint{3.869368in}{2.991586in}}% 2171 2159 \pgfusepath{stroke}% 2172 2160 \end{pgfscope}% … … 2186 2174 }% 2187 2175 \begin{pgfscope}% 2188 \pgfsys@transformshift{ 1.063889in}{1.240191in}%2176 \pgfsys@transformshift{3.869368in}{2.769364in}% 2189 2177 \pgfsys@useobject{currentmarker}{}% 2190 2178 \end{pgfscope}% … … 2205 2193 }% 2206 2194 \begin{pgfscope}% 2207 \pgfsys@transformshift{ 1.063889in}{1.379080in}%2195 \pgfsys@transformshift{3.869368in}{2.991586in}% 2208 2196 \pgfsys@useobject{currentmarker}{}% 2209 2197 \end{pgfscope}% … … 2216 2204 \pgfsetstrokecolor{currentstroke}% 2217 2205 \pgfsetdash{}{0pt}% 2218 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{1.309636in}}%2219 \pgfpathlineto{\pgfqpoint{ 1.202778in}{1.309636in}}%2220 \pgfusepath{stroke}% 2221 \end{pgfscope}% 2222 \begin{pgfscope}% 2223 \pgfsetbuttcap% 2224 \pgfset roundjoin%2206 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.880475in}}% 2207 \pgfpathlineto{\pgfqpoint{4.091591in}{2.880475in}}% 2208 \pgfusepath{stroke}% 2209 \end{pgfscope}% 2210 \begin{pgfscope}% 2211 \pgfsetbuttcap% 2212 \pgfsetmiterjoin% 2225 2213 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2226 2214 \pgfsetfillcolor{currentfill}% … … 2229 2217 \pgfsetstrokecolor{currentstroke}% 2230 2218 \pgfsetdash{}{0pt}% 2231 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2232 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2233 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2234 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2235 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2236 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2237 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2238 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2239 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2240 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2219 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 2220 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2221 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 2222 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 2223 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 2224 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 2241 2225 \pgfpathclose% 2242 2226 \pgfusepath{stroke,fill}% 2243 2227 }% 2244 2228 \begin{pgfscope}% 2245 \pgfsys@transformshift{ 1.063889in}{1.309636in}%2229 \pgfsys@transformshift{3.869368in}{2.880475in}% 2246 2230 \pgfsys@useobject{currentmarker}{}% 2247 2231 \end{pgfscope}% … … 2251 2235 \pgfsetstrokecolor{textcolor}% 2252 2236 \pgfsetfillcolor{textcolor}% 2253 \pgftext[x= 1.313889in,y=1.261024in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-baseline}%2237 \pgftext[x=4.269368in,y=2.802697in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-baseline}% 2254 2238 \end{pgfscope}% 2255 2239 \begin{pgfscope}% … … 2260 2244 \pgfsetstrokecolor{currentstroke}% 2261 2245 \pgfsetdash{}{0pt}% 2262 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{1.046518in}}%2263 \pgfpathlineto{\pgfqpoint{ 1.063889in}{1.185407in}}%2246 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.444904in}}% 2247 \pgfpathlineto{\pgfqpoint{3.869368in}{2.667126in}}% 2264 2248 \pgfusepath{stroke}% 2265 2249 \end{pgfscope}% … … 2279 2263 }% 2280 2264 \begin{pgfscope}% 2281 \pgfsys@transformshift{ 1.063889in}{1.046518in}%2265 \pgfsys@transformshift{3.869368in}{2.444904in}% 2282 2266 \pgfsys@useobject{currentmarker}{}% 2283 2267 \end{pgfscope}% … … 2298 2282 }% 2299 2283 \begin{pgfscope}% 2300 \pgfsys@transformshift{ 1.063889in}{1.185407in}%2284 \pgfsys@transformshift{3.869368in}{2.667126in}% 2301 2285 \pgfsys@useobject{currentmarker}{}% 2302 2286 \end{pgfscope}% … … 2309 2293 \pgfsetstrokecolor{currentstroke}% 2310 2294 \pgfsetdash{}{0pt}% 2311 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{1.115963in}}%2312 \pgfpathlineto{\pgfqpoint{ 1.202778in}{1.115963in}}%2313 \pgfusepath{stroke}% 2314 \end{pgfscope}% 2315 \begin{pgfscope}% 2316 \pgfsetbuttcap% 2317 \pgfset roundjoin%2295 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.556015in}}% 2296 \pgfpathlineto{\pgfqpoint{4.091591in}{2.556015in}}% 2297 \pgfusepath{stroke}% 2298 \end{pgfscope}% 2299 \begin{pgfscope}% 2300 \pgfsetbuttcap% 2301 \pgfsetmiterjoin% 2318 2302 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2319 2303 \pgfsetfillcolor{currentfill}% … … 2323 2307 \pgfsetdash{}{0pt}% 2324 2308 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2325 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2326 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2327 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2328 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2329 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2330 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2331 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2332 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2333 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2309 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2310 \pgfpathlineto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2311 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2334 2312 \pgfpathclose% 2335 2313 \pgfusepath{stroke,fill}% 2336 2314 }% 2337 2315 \begin{pgfscope}% 2338 \pgfsys@transformshift{ 1.063889in}{1.115963in}%2316 \pgfsys@transformshift{3.869368in}{2.556015in}% 2339 2317 \pgfsys@useobject{currentmarker}{}% 2340 2318 \end{pgfscope}% … … 2344 2322 \pgfsetstrokecolor{textcolor}% 2345 2323 \pgfsetfillcolor{textcolor}% 2346 \pgftext[x= 1.313889in,y=1.067352in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-baseline}%2324 \pgftext[x=4.269368in,y=2.478238in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-baseline}% 2347 2325 \end{pgfscope}% 2348 2326 \begin{pgfscope}% … … 2353 2331 \pgfsetstrokecolor{currentstroke}% 2354 2332 \pgfsetdash{}{0pt}% 2355 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{0.852846in}}%2356 \pgfpathlineto{\pgfqpoint{ 1.063889in}{0.991734in}}%2333 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.120444in}}% 2334 \pgfpathlineto{\pgfqpoint{3.869368in}{2.342667in}}% 2357 2335 \pgfusepath{stroke}% 2358 2336 \end{pgfscope}% … … 2372 2350 }% 2373 2351 \begin{pgfscope}% 2374 \pgfsys@transformshift{ 1.063889in}{0.852846in}%2352 \pgfsys@transformshift{3.869368in}{2.120444in}% 2375 2353 \pgfsys@useobject{currentmarker}{}% 2376 2354 \end{pgfscope}% … … 2391 2369 }% 2392 2370 \begin{pgfscope}% 2393 \pgfsys@transformshift{ 1.063889in}{0.991734in}%2371 \pgfsys@transformshift{3.869368in}{2.342667in}% 2394 2372 \pgfsys@useobject{currentmarker}{}% 2395 2373 \end{pgfscope}% … … 2402 2380 \pgfsetstrokecolor{currentstroke}% 2403 2381 \pgfsetdash{}{0pt}% 2404 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{0.922290in}}%2405 \pgfpathlineto{\pgfqpoint{ 1.202778in}{0.922290in}}%2406 \pgfusepath{stroke}% 2407 \end{pgfscope}% 2408 \begin{pgfscope}% 2409 \pgfsetbuttcap% 2410 \pgfset roundjoin%2382 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.231556in}}% 2383 \pgfpathlineto{\pgfqpoint{4.091591in}{2.231556in}}% 2384 \pgfusepath{stroke}% 2385 \end{pgfscope}% 2386 \begin{pgfscope}% 2387 \pgfsetbuttcap% 2388 \pgfsetmiterjoin% 2411 2389 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2412 2390 \pgfsetfillcolor{currentfill}% … … 2415 2393 \pgfsetstrokecolor{currentstroke}% 2416 2394 \pgfsetdash{}{0pt}% 2417 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2418 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2419 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2420 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2421 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2422 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2423 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2424 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2425 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2426 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2395 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.036084in}{-0.041667in}}{\pgfqpoint{0.036084in}{0.041667in}}{% 2396 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2397 \pgfpathlineto{\pgfqpoint{-0.036084in}{0.020833in}}% 2398 \pgfpathlineto{\pgfqpoint{-0.036084in}{-0.020833in}}% 2399 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.041667in}}% 2400 \pgfpathlineto{\pgfqpoint{0.036084in}{-0.020833in}}% 2401 \pgfpathlineto{\pgfqpoint{0.036084in}{0.020833in}}% 2427 2402 \pgfpathclose% 2428 2403 \pgfusepath{stroke,fill}% 2429 2404 }% 2430 2405 \begin{pgfscope}% 2431 \pgfsys@transformshift{ 1.063889in}{0.922290in}%2406 \pgfsys@transformshift{3.869368in}{2.231556in}% 2432 2407 \pgfsys@useobject{currentmarker}{}% 2433 2408 \end{pgfscope}% … … 2437 2412 \pgfsetstrokecolor{textcolor}% 2438 2413 \pgfsetfillcolor{textcolor}% 2439 \pgftext[x= 1.313889in,y=0.873679in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-rand}%2414 \pgftext[x=4.269368in,y=2.153778in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-rand}% 2440 2415 \end{pgfscope}% 2441 2416 \begin{pgfscope}% … … 2446 2421 \pgfsetstrokecolor{currentstroke}% 2447 2422 \pgfsetdash{}{0pt}% 2448 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{0.659173in}}%2449 \pgfpathlineto{\pgfqpoint{ 1.063889in}{0.798062in}}%2423 \pgfpathmoveto{\pgfqpoint{3.869368in}{1.795985in}}% 2424 \pgfpathlineto{\pgfqpoint{3.869368in}{2.018207in}}% 2450 2425 \pgfusepath{stroke}% 2451 2426 \end{pgfscope}% … … 2465 2440 }% 2466 2441 \begin{pgfscope}% 2467 \pgfsys@transformshift{ 1.063889in}{0.659173in}%2442 \pgfsys@transformshift{3.869368in}{1.795985in}% 2468 2443 \pgfsys@useobject{currentmarker}{}% 2469 2444 \end{pgfscope}% … … 2484 2459 }% 2485 2460 \begin{pgfscope}% 2486 \pgfsys@transformshift{ 1.063889in}{0.798062in}%2461 \pgfsys@transformshift{3.869368in}{2.018207in}% 2487 2462 \pgfsys@useobject{currentmarker}{}% 2488 2463 \end{pgfscope}% … … 2495 2470 \pgfsetstrokecolor{currentstroke}% 2496 2471 \pgfsetdash{}{0pt}% 2497 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{0.728617in}}%2498 \pgfpathlineto{\pgfqpoint{ 1.202778in}{0.728617in}}%2499 \pgfusepath{stroke}% 2500 \end{pgfscope}% 2501 \begin{pgfscope}% 2502 \pgfsetbuttcap% 2503 \pgfset roundjoin%2472 \pgfpathmoveto{\pgfqpoint{3.647146in}{1.907096in}}% 2473 \pgfpathlineto{\pgfqpoint{4.091591in}{1.907096in}}% 2474 \pgfusepath{stroke}% 2475 \end{pgfscope}% 2476 \begin{pgfscope}% 2477 \pgfsetbuttcap% 2478 \pgfsetbeveljoin% 2504 2479 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2505 2480 \pgfsetfillcolor{currentfill}% … … 2508 2483 \pgfsetstrokecolor{currentstroke}% 2509 2484 \pgfsetdash{}{0pt}% 2510 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2511 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2512 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2513 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2514 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2515 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2516 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2517 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2518 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2519 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2485 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.039627in}{-0.033709in}}{\pgfqpoint{0.039627in}{0.041667in}}{% 2486 \pgfpathmoveto{\pgfqpoint{0.000000in}{0.041667in}}% 2487 \pgfpathlineto{\pgfqpoint{-0.009355in}{0.012876in}}% 2488 \pgfpathlineto{\pgfqpoint{-0.039627in}{0.012876in}}% 2489 \pgfpathlineto{\pgfqpoint{-0.015136in}{-0.004918in}}% 2490 \pgfpathlineto{\pgfqpoint{-0.024491in}{-0.033709in}}% 2491 \pgfpathlineto{\pgfqpoint{-0.000000in}{-0.015915in}}% 2492 \pgfpathlineto{\pgfqpoint{0.024491in}{-0.033709in}}% 2493 \pgfpathlineto{\pgfqpoint{0.015136in}{-0.004918in}}% 2494 \pgfpathlineto{\pgfqpoint{0.039627in}{0.012876in}}% 2495 \pgfpathlineto{\pgfqpoint{0.009355in}{0.012876in}}% 2520 2496 \pgfpathclose% 2521 2497 \pgfusepath{stroke,fill}% 2522 2498 }% 2523 2499 \begin{pgfscope}% 2524 \pgfsys@transformshift{ 1.063889in}{0.728617in}%2500 \pgfsys@transformshift{3.869368in}{1.907096in}% 2525 2501 \pgfsys@useobject{currentmarker}{}% 2526 2502 \end{pgfscope}% … … 2530 2506 \pgfsetstrokecolor{textcolor}% 2531 2507 \pgfsetfillcolor{textcolor}% 2532 \pgftext[x= 1.313889in,y=0.680006in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-rand}%2508 \pgftext[x=4.269368in,y=1.829318in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-rand}% 2533 2509 \end{pgfscope}% 2534 2510 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/pyke_Aggregate_Lock_8.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=0.610874in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{2}\)}%235 \pgftext[x=0.399655in,y=0.575766in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{2}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 258 258 \pgfsetstrokecolor{textcolor}% 259 259 \pgfsetfillcolor{textcolor}% 260 \pgftext[x=0. 501581in,y=1.216962in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{3}\)}%260 \pgftext[x=0.399655in,y=1.181854in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{3}\)}% 261 261 \end{pgfscope}% 262 262 \begin{pgfscope}% … … 283 283 \pgfsetstrokecolor{textcolor}% 284 284 \pgfsetfillcolor{textcolor}% 285 \pgftext[x=0. 501581in,y=1.823050in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{4}\)}%285 \pgftext[x=0.399655in,y=1.787942in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{4}\)}% 286 286 \end{pgfscope}% 287 287 \begin{pgfscope}% … … 308 308 \pgfsetstrokecolor{textcolor}% 309 309 \pgfsetfillcolor{textcolor}% 310 \pgftext[x=0. 501581in,y=2.429138in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{5}\)}%310 \pgftext[x=0.399655in,y=2.394030in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{5}\)}% 311 311 \end{pgfscope}% 312 312 \begin{pgfscope}% … … 333 333 \pgfsetstrokecolor{textcolor}% 334 334 \pgfsetfillcolor{textcolor}% 335 \pgftext[x=0. 501581in,y=3.035227in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{6}\)}%335 \pgftext[x=0.399655in,y=3.000119in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{6}\)}% 336 336 \end{pgfscope}% 337 337 \begin{pgfscope}% … … 358 358 \pgfsetstrokecolor{textcolor}% 359 359 \pgfsetfillcolor{textcolor}% 360 \pgftext[x=0. 501581in,y=3.641315in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{7}\)}%360 \pgftext[x=0.399655in,y=3.606207in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{7}\)}% 361 361 \end{pgfscope}% 362 362 \begin{pgfscope}% … … 1295 1295 \pgfsetstrokecolor{textcolor}% 1296 1296 \pgfsetfillcolor{textcolor}% 1297 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (entries)}%1297 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (entries)}% 1298 1298 \end{pgfscope}% 1299 1299 \begin{pgfscope}% … … 1958 1958 \pgfusepath{clip}% 1959 1959 \pgfsetbuttcap% 1960 \pgfset roundjoin%1960 \pgfsetmiterjoin% 1961 1961 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1962 1962 \pgfsetfillcolor{currentfill}% 1963 1963 \pgfsetlinewidth{1.003750pt}% 1964 1964 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1965 \pgfsetstrokecolor{currentstroke}% 1966 \pgfsetdash{}{0pt}% 1967 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1968 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.041667in}}% 1969 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1970 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1971 \pgfpathclose% 1972 \pgfusepath{stroke,fill}% 1973 }% 1974 \begin{pgfscope}% 1975 \pgfsys@transformshift{1.025455in}{3.946569in}% 1976 \pgfsys@useobject{currentmarker}{}% 1977 \end{pgfscope}% 1978 \begin{pgfscope}% 1979 \pgfsys@transformshift{1.326061in}{3.802273in}% 1980 \pgfsys@useobject{currentmarker}{}% 1981 \end{pgfscope}% 1982 \begin{pgfscope}% 1983 \pgfsys@transformshift{1.927273in}{3.677930in}% 1984 \pgfsys@useobject{currentmarker}{}% 1985 \end{pgfscope}% 1986 \begin{pgfscope}% 1987 \pgfsys@transformshift{3.129697in}{3.534576in}% 1988 \pgfsys@useobject{currentmarker}{}% 1989 \end{pgfscope}% 1990 \begin{pgfscope}% 1991 \pgfsys@transformshift{4.332121in}{3.431799in}% 1992 \pgfsys@useobject{currentmarker}{}% 1993 \end{pgfscope}% 1994 \begin{pgfscope}% 1995 \pgfsys@transformshift{5.534545in}{3.440731in}% 1996 \pgfsys@useobject{currentmarker}{}% 1997 \end{pgfscope}% 1998 \end{pgfscope}% 1999 \begin{pgfscope}% 2000 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2001 \pgfusepath{clip}% 2002 \pgfsetrectcap% 2003 \pgfsetroundjoin% 2004 \pgfsetlinewidth{1.505625pt}% 2005 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2006 \pgfsetstrokecolor{currentstroke}% 2007 \pgfsetdash{}{0pt}% 2008 \pgfpathmoveto{\pgfqpoint{1.025455in}{4.038293in}}% 2009 \pgfpathlineto{\pgfqpoint{1.326061in}{3.879198in}}% 2010 \pgfpathlineto{\pgfqpoint{1.927273in}{3.775409in}}% 2011 \pgfpathlineto{\pgfqpoint{3.129697in}{3.635703in}}% 2012 \pgfpathlineto{\pgfqpoint{4.332121in}{3.543668in}}% 2013 \pgfpathlineto{\pgfqpoint{5.534545in}{3.552229in}}% 2014 \pgfusepath{stroke}% 2015 \end{pgfscope}% 2016 \begin{pgfscope}% 2017 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2018 \pgfusepath{clip}% 2019 \pgfsetbuttcap% 2020 \pgfsetroundjoin% 2021 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2022 \pgfsetfillcolor{currentfill}% 2023 \pgfsetlinewidth{1.003750pt}% 2024 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1965 2025 \pgfsetstrokecolor{currentstroke}% 1966 2026 \pgfsetdash{}{0pt}% … … 1979 2039 }% 1980 2040 \begin{pgfscope}% 1981 \pgfsys@transformshift{1.025455in}{ 3.946569in}%1982 \pgfsys@useobject{currentmarker}{}% 1983 \end{pgfscope}% 1984 \begin{pgfscope}% 1985 \pgfsys@transformshift{1.326061in}{3.8 02273in}%1986 \pgfsys@useobject{currentmarker}{}% 1987 \end{pgfscope}% 1988 \begin{pgfscope}% 1989 \pgfsys@transformshift{1.927273in}{3. 677930in}%1990 \pgfsys@useobject{currentmarker}{}% 1991 \end{pgfscope}% 1992 \begin{pgfscope}% 1993 \pgfsys@transformshift{3.129697in}{3. 534576in}%1994 \pgfsys@useobject{currentmarker}{}% 1995 \end{pgfscope}% 1996 \begin{pgfscope}% 1997 \pgfsys@transformshift{4.332121in}{3. 431799in}%1998 \pgfsys@useobject{currentmarker}{}% 1999 \end{pgfscope}% 2000 \begin{pgfscope}% 2001 \pgfsys@transformshift{5.534545in}{3. 440731in}%2041 \pgfsys@transformshift{1.025455in}{4.038293in}% 2042 \pgfsys@useobject{currentmarker}{}% 2043 \end{pgfscope}% 2044 \begin{pgfscope}% 2045 \pgfsys@transformshift{1.326061in}{3.879198in}% 2046 \pgfsys@useobject{currentmarker}{}% 2047 \end{pgfscope}% 2048 \begin{pgfscope}% 2049 \pgfsys@transformshift{1.927273in}{3.775409in}% 2050 \pgfsys@useobject{currentmarker}{}% 2051 \end{pgfscope}% 2052 \begin{pgfscope}% 2053 \pgfsys@transformshift{3.129697in}{3.635703in}% 2054 \pgfsys@useobject{currentmarker}{}% 2055 \end{pgfscope}% 2056 \begin{pgfscope}% 2057 \pgfsys@transformshift{4.332121in}{3.543668in}% 2058 \pgfsys@useobject{currentmarker}{}% 2059 \end{pgfscope}% 2060 \begin{pgfscope}% 2061 \pgfsys@transformshift{5.534545in}{3.552229in}% 2002 2062 \pgfsys@useobject{currentmarker}{}% 2003 2063 \end{pgfscope}% … … 2009 2069 \pgfsetroundjoin% 2010 2070 \pgfsetlinewidth{1.505625pt}% 2071 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2072 \pgfsetstrokecolor{currentstroke}% 2073 \pgfsetdash{}{0pt}% 2074 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.986946in}}% 2075 \pgfpathlineto{\pgfqpoint{1.326061in}{3.894328in}}% 2076 \pgfpathlineto{\pgfqpoint{1.927273in}{3.799708in}}% 2077 \pgfpathlineto{\pgfqpoint{3.129697in}{3.659501in}}% 2078 \pgfpathlineto{\pgfqpoint{4.332121in}{3.551737in}}% 2079 \pgfpathlineto{\pgfqpoint{5.534545in}{3.536503in}}% 2080 \pgfusepath{stroke}% 2081 \end{pgfscope}% 2082 \begin{pgfscope}% 2083 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2084 \pgfusepath{clip}% 2085 \pgfsetbuttcap% 2086 \pgfsetmiterjoin% 2087 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2088 \pgfsetfillcolor{currentfill}% 2089 \pgfsetlinewidth{1.003750pt}% 2090 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2091 \pgfsetstrokecolor{currentstroke}% 2092 \pgfsetdash{}{0pt}% 2093 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2094 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2095 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2096 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2097 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 2098 \pgfpathclose% 2099 \pgfusepath{stroke,fill}% 2100 }% 2101 \begin{pgfscope}% 2102 \pgfsys@transformshift{1.025455in}{3.986946in}% 2103 \pgfsys@useobject{currentmarker}{}% 2104 \end{pgfscope}% 2105 \begin{pgfscope}% 2106 \pgfsys@transformshift{1.326061in}{3.894328in}% 2107 \pgfsys@useobject{currentmarker}{}% 2108 \end{pgfscope}% 2109 \begin{pgfscope}% 2110 \pgfsys@transformshift{1.927273in}{3.799708in}% 2111 \pgfsys@useobject{currentmarker}{}% 2112 \end{pgfscope}% 2113 \begin{pgfscope}% 2114 \pgfsys@transformshift{3.129697in}{3.659501in}% 2115 \pgfsys@useobject{currentmarker}{}% 2116 \end{pgfscope}% 2117 \begin{pgfscope}% 2118 \pgfsys@transformshift{4.332121in}{3.551737in}% 2119 \pgfsys@useobject{currentmarker}{}% 2120 \end{pgfscope}% 2121 \begin{pgfscope}% 2122 \pgfsys@transformshift{5.534545in}{3.536503in}% 2123 \pgfsys@useobject{currentmarker}{}% 2124 \end{pgfscope}% 2125 \end{pgfscope}% 2126 \begin{pgfscope}% 2127 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2128 \pgfusepath{clip}% 2129 \pgfsetrectcap% 2130 \pgfsetroundjoin% 2131 \pgfsetlinewidth{1.505625pt}% 2132 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2133 \pgfsetstrokecolor{currentstroke}% 2134 \pgfsetdash{}{0pt}% 2135 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.616719in}}% 2136 \pgfpathlineto{\pgfqpoint{1.326061in}{2.880579in}}% 2137 \pgfpathlineto{\pgfqpoint{1.927273in}{1.983335in}}% 2138 \pgfpathlineto{\pgfqpoint{3.129697in}{1.145651in}}% 2139 \pgfpathlineto{\pgfqpoint{4.332121in}{0.876039in}}% 2140 \pgfpathlineto{\pgfqpoint{5.534545in}{0.885117in}}% 2141 \pgfusepath{stroke}% 2142 \end{pgfscope}% 2143 \begin{pgfscope}% 2144 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2145 \pgfusepath{clip}% 2146 \pgfsetbuttcap% 2147 \pgfsetmiterjoin% 2148 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2149 \pgfsetfillcolor{currentfill}% 2150 \pgfsetlinewidth{1.003750pt}% 2151 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2152 \pgfsetstrokecolor{currentstroke}% 2153 \pgfsetdash{}{0pt}% 2154 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 2155 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 2156 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 2157 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 2158 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 2159 \pgfpathclose% 2160 \pgfusepath{stroke,fill}% 2161 }% 2162 \begin{pgfscope}% 2163 \pgfsys@transformshift{1.025455in}{3.616719in}% 2164 \pgfsys@useobject{currentmarker}{}% 2165 \end{pgfscope}% 2166 \begin{pgfscope}% 2167 \pgfsys@transformshift{1.326061in}{2.880579in}% 2168 \pgfsys@useobject{currentmarker}{}% 2169 \end{pgfscope}% 2170 \begin{pgfscope}% 2171 \pgfsys@transformshift{1.927273in}{1.983335in}% 2172 \pgfsys@useobject{currentmarker}{}% 2173 \end{pgfscope}% 2174 \begin{pgfscope}% 2175 \pgfsys@transformshift{3.129697in}{1.145651in}% 2176 \pgfsys@useobject{currentmarker}{}% 2177 \end{pgfscope}% 2178 \begin{pgfscope}% 2179 \pgfsys@transformshift{4.332121in}{0.876039in}% 2180 \pgfsys@useobject{currentmarker}{}% 2181 \end{pgfscope}% 2182 \begin{pgfscope}% 2183 \pgfsys@transformshift{5.534545in}{0.885117in}% 2184 \pgfsys@useobject{currentmarker}{}% 2185 \end{pgfscope}% 2186 \end{pgfscope}% 2187 \begin{pgfscope}% 2188 \pgfsetrectcap% 2189 \pgfsetmiterjoin% 2190 \pgfsetlinewidth{0.803000pt}% 2191 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2192 \pgfsetstrokecolor{currentstroke}% 2193 \pgfsetdash{}{0pt}% 2194 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2195 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 2196 \pgfusepath{stroke}% 2197 \end{pgfscope}% 2198 \begin{pgfscope}% 2199 \pgfsetrectcap% 2200 \pgfsetmiterjoin% 2201 \pgfsetlinewidth{0.803000pt}% 2202 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2203 \pgfsetstrokecolor{currentstroke}% 2204 \pgfsetdash{}{0pt}% 2205 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 2206 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2207 \pgfusepath{stroke}% 2208 \end{pgfscope}% 2209 \begin{pgfscope}% 2210 \pgfsetrectcap% 2211 \pgfsetmiterjoin% 2212 \pgfsetlinewidth{0.803000pt}% 2213 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2214 \pgfsetstrokecolor{currentstroke}% 2215 \pgfsetdash{}{0pt}% 2216 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2217 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 2218 \pgfusepath{stroke}% 2219 \end{pgfscope}% 2220 \begin{pgfscope}% 2221 \pgfsetrectcap% 2222 \pgfsetmiterjoin% 2223 \pgfsetlinewidth{0.803000pt}% 2224 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2225 \pgfsetstrokecolor{currentstroke}% 2226 \pgfsetdash{}{0pt}% 2227 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 2228 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2229 \pgfusepath{stroke}% 2230 \end{pgfscope}% 2231 \begin{pgfscope}% 2232 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2233 \pgfsetstrokecolor{textcolor}% 2234 \pgfsetfillcolor{textcolor}% 2235 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Aggregate Lock Benchmark: 8 Locks}% 2236 \end{pgfscope}% 2237 \begin{pgfscope}% 2238 \pgfsetbuttcap% 2239 \pgfsetmiterjoin% 2240 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 2241 \pgfsetfillcolor{currentfill}% 2242 \pgfsetfillopacity{0.800000}% 2243 \pgfsetlinewidth{1.003750pt}% 2244 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 2245 \pgfsetstrokecolor{currentstroke}% 2246 \pgfsetstrokeopacity{0.800000}% 2247 \pgfsetdash{}{0pt}% 2248 \pgfpathmoveto{\pgfqpoint{3.602702in}{1.693747in}}% 2249 \pgfpathlineto{\pgfqpoint{5.604444in}{1.693747in}}% 2250 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{1.693747in}}{\pgfqpoint{5.648889in}{1.738192in}}% 2251 \pgfpathlineto{\pgfqpoint{5.648889in}{3.013808in}}% 2252 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.058253in}}{\pgfqpoint{5.604444in}{3.058253in}}% 2253 \pgfpathlineto{\pgfqpoint{3.602702in}{3.058253in}}% 2254 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{3.058253in}}{\pgfqpoint{3.558257in}{3.013808in}}% 2255 \pgfpathlineto{\pgfqpoint{3.558257in}{1.738192in}}% 2256 \pgfpathquadraticcurveto{\pgfqpoint{3.558257in}{1.693747in}}{\pgfqpoint{3.602702in}{1.693747in}}% 2257 \pgfpathclose% 2258 \pgfusepath{stroke,fill}% 2259 \end{pgfscope}% 2260 \begin{pgfscope}% 2261 \pgfsetbuttcap% 2262 \pgfsetroundjoin% 2263 \pgfsetlinewidth{1.505625pt}% 2264 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2265 \pgfsetstrokecolor{currentstroke}% 2266 \pgfsetdash{}{0pt}% 2267 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.769364in}}% 2268 \pgfpathlineto{\pgfqpoint{3.869368in}{2.991586in}}% 2269 \pgfusepath{stroke}% 2270 \end{pgfscope}% 2271 \begin{pgfscope}% 2272 \pgfsetbuttcap% 2273 \pgfsetroundjoin% 2274 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2275 \pgfsetfillcolor{currentfill}% 2276 \pgfsetlinewidth{1.003750pt}% 2277 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2278 \pgfsetstrokecolor{currentstroke}% 2279 \pgfsetdash{}{0pt}% 2280 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2281 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2282 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2283 \pgfusepath{stroke,fill}% 2284 }% 2285 \begin{pgfscope}% 2286 \pgfsys@transformshift{3.869368in}{2.769364in}% 2287 \pgfsys@useobject{currentmarker}{}% 2288 \end{pgfscope}% 2289 \end{pgfscope}% 2290 \begin{pgfscope}% 2291 \pgfsetbuttcap% 2292 \pgfsetroundjoin% 2293 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2294 \pgfsetfillcolor{currentfill}% 2295 \pgfsetlinewidth{1.003750pt}% 2296 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2297 \pgfsetstrokecolor{currentstroke}% 2298 \pgfsetdash{}{0pt}% 2299 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2300 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2301 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2302 \pgfusepath{stroke,fill}% 2303 }% 2304 \begin{pgfscope}% 2305 \pgfsys@transformshift{3.869368in}{2.991586in}% 2306 \pgfsys@useobject{currentmarker}{}% 2307 \end{pgfscope}% 2308 \end{pgfscope}% 2309 \begin{pgfscope}% 2310 \pgfsetrectcap% 2311 \pgfsetroundjoin% 2312 \pgfsetlinewidth{1.505625pt}% 2313 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2314 \pgfsetstrokecolor{currentstroke}% 2315 \pgfsetdash{}{0pt}% 2316 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.880475in}}% 2317 \pgfpathlineto{\pgfqpoint{4.091591in}{2.880475in}}% 2318 \pgfusepath{stroke}% 2319 \end{pgfscope}% 2320 \begin{pgfscope}% 2321 \pgfsetbuttcap% 2322 \pgfsetmiterjoin% 2323 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2324 \pgfsetfillcolor{currentfill}% 2325 \pgfsetlinewidth{1.003750pt}% 2326 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2327 \pgfsetstrokecolor{currentstroke}% 2328 \pgfsetdash{}{0pt}% 2329 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2330 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.041667in}}% 2331 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2332 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 2333 \pgfpathclose% 2334 \pgfusepath{stroke,fill}% 2335 }% 2336 \begin{pgfscope}% 2337 \pgfsys@transformshift{3.869368in}{2.880475in}% 2338 \pgfsys@useobject{currentmarker}{}% 2339 \end{pgfscope}% 2340 \end{pgfscope}% 2341 \begin{pgfscope}% 2342 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2343 \pgfsetstrokecolor{textcolor}% 2344 \pgfsetfillcolor{textcolor}% 2345 \pgftext[x=4.269368in,y=2.802697in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-baseline}% 2346 \end{pgfscope}% 2347 \begin{pgfscope}% 2348 \pgfsetbuttcap% 2349 \pgfsetroundjoin% 2350 \pgfsetlinewidth{1.505625pt}% 2011 2351 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2012 2352 \pgfsetstrokecolor{currentstroke}% 2013 2353 \pgfsetdash{}{0pt}% 2014 \pgfpathmoveto{\pgfqpoint{1.025455in}{4.038293in}}% 2015 \pgfpathlineto{\pgfqpoint{1.326061in}{3.879198in}}% 2016 \pgfpathlineto{\pgfqpoint{1.927273in}{3.775409in}}% 2017 \pgfpathlineto{\pgfqpoint{3.129697in}{3.635703in}}% 2018 \pgfpathlineto{\pgfqpoint{4.332121in}{3.543668in}}% 2019 \pgfpathlineto{\pgfqpoint{5.534545in}{3.552229in}}% 2020 \pgfusepath{stroke}% 2021 \end{pgfscope}% 2022 \begin{pgfscope}% 2023 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2024 \pgfusepath{clip}% 2354 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.444904in}}% 2355 \pgfpathlineto{\pgfqpoint{3.869368in}{2.667126in}}% 2356 \pgfusepath{stroke}% 2357 \end{pgfscope}% 2358 \begin{pgfscope}% 2359 \pgfsetbuttcap% 2360 \pgfsetroundjoin% 2361 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2362 \pgfsetfillcolor{currentfill}% 2363 \pgfsetlinewidth{1.003750pt}% 2364 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2365 \pgfsetstrokecolor{currentstroke}% 2366 \pgfsetdash{}{0pt}% 2367 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2368 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2369 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2370 \pgfusepath{stroke,fill}% 2371 }% 2372 \begin{pgfscope}% 2373 \pgfsys@transformshift{3.869368in}{2.444904in}% 2374 \pgfsys@useobject{currentmarker}{}% 2375 \end{pgfscope}% 2376 \end{pgfscope}% 2377 \begin{pgfscope}% 2378 \pgfsetbuttcap% 2379 \pgfsetroundjoin% 2380 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 2381 \pgfsetfillcolor{currentfill}% 2382 \pgfsetlinewidth{1.003750pt}% 2383 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2384 \pgfsetstrokecolor{currentstroke}% 2385 \pgfsetdash{}{0pt}% 2386 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2387 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2388 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2389 \pgfusepath{stroke,fill}% 2390 }% 2391 \begin{pgfscope}% 2392 \pgfsys@transformshift{3.869368in}{2.667126in}% 2393 \pgfsys@useobject{currentmarker}{}% 2394 \end{pgfscope}% 2395 \end{pgfscope}% 2396 \begin{pgfscope}% 2397 \pgfsetrectcap% 2398 \pgfsetroundjoin% 2399 \pgfsetlinewidth{1.505625pt}% 2400 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2401 \pgfsetstrokecolor{currentstroke}% 2402 \pgfsetdash{}{0pt}% 2403 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.556015in}}% 2404 \pgfpathlineto{\pgfqpoint{4.091591in}{2.556015in}}% 2405 \pgfusepath{stroke}% 2406 \end{pgfscope}% 2407 \begin{pgfscope}% 2025 2408 \pgfsetbuttcap% 2026 2409 \pgfsetroundjoin% … … 2045 2428 }% 2046 2429 \begin{pgfscope}% 2047 \pgfsys@transformshift{1.025455in}{4.038293in}% 2048 \pgfsys@useobject{currentmarker}{}% 2049 \end{pgfscope}% 2050 \begin{pgfscope}% 2051 \pgfsys@transformshift{1.326061in}{3.879198in}% 2052 \pgfsys@useobject{currentmarker}{}% 2053 \end{pgfscope}% 2054 \begin{pgfscope}% 2055 \pgfsys@transformshift{1.927273in}{3.775409in}% 2056 \pgfsys@useobject{currentmarker}{}% 2057 \end{pgfscope}% 2058 \begin{pgfscope}% 2059 \pgfsys@transformshift{3.129697in}{3.635703in}% 2060 \pgfsys@useobject{currentmarker}{}% 2061 \end{pgfscope}% 2062 \begin{pgfscope}% 2063 \pgfsys@transformshift{4.332121in}{3.543668in}% 2064 \pgfsys@useobject{currentmarker}{}% 2065 \end{pgfscope}% 2066 \begin{pgfscope}% 2067 \pgfsys@transformshift{5.534545in}{3.552229in}% 2068 \pgfsys@useobject{currentmarker}{}% 2069 \end{pgfscope}% 2070 \end{pgfscope}% 2071 \begin{pgfscope}% 2072 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2073 \pgfusepath{clip}% 2074 \pgfsetrectcap% 2075 \pgfsetroundjoin% 2076 \pgfsetlinewidth{1.505625pt}% 2077 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2078 \pgfsetstrokecolor{currentstroke}% 2079 \pgfsetdash{}{0pt}% 2080 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.986946in}}% 2081 \pgfpathlineto{\pgfqpoint{1.326061in}{3.894328in}}% 2082 \pgfpathlineto{\pgfqpoint{1.927273in}{3.799708in}}% 2083 \pgfpathlineto{\pgfqpoint{3.129697in}{3.659501in}}% 2084 \pgfpathlineto{\pgfqpoint{4.332121in}{3.551737in}}% 2085 \pgfpathlineto{\pgfqpoint{5.534545in}{3.536503in}}% 2086 \pgfusepath{stroke}% 2087 \end{pgfscope}% 2088 \begin{pgfscope}% 2089 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2090 \pgfusepath{clip}% 2091 \pgfsetbuttcap% 2092 \pgfsetroundjoin% 2093 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2094 \pgfsetfillcolor{currentfill}% 2095 \pgfsetlinewidth{1.003750pt}% 2096 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2097 \pgfsetstrokecolor{currentstroke}% 2098 \pgfsetdash{}{0pt}% 2099 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2100 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2101 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2102 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2103 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2104 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2105 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2106 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2107 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2108 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2109 \pgfpathclose% 2110 \pgfusepath{stroke,fill}% 2111 }% 2112 \begin{pgfscope}% 2113 \pgfsys@transformshift{1.025455in}{3.986946in}% 2114 \pgfsys@useobject{currentmarker}{}% 2115 \end{pgfscope}% 2116 \begin{pgfscope}% 2117 \pgfsys@transformshift{1.326061in}{3.894328in}% 2118 \pgfsys@useobject{currentmarker}{}% 2119 \end{pgfscope}% 2120 \begin{pgfscope}% 2121 \pgfsys@transformshift{1.927273in}{3.799708in}% 2122 \pgfsys@useobject{currentmarker}{}% 2123 \end{pgfscope}% 2124 \begin{pgfscope}% 2125 \pgfsys@transformshift{3.129697in}{3.659501in}% 2126 \pgfsys@useobject{currentmarker}{}% 2127 \end{pgfscope}% 2128 \begin{pgfscope}% 2129 \pgfsys@transformshift{4.332121in}{3.551737in}% 2130 \pgfsys@useobject{currentmarker}{}% 2131 \end{pgfscope}% 2132 \begin{pgfscope}% 2133 \pgfsys@transformshift{5.534545in}{3.536503in}% 2134 \pgfsys@useobject{currentmarker}{}% 2135 \end{pgfscope}% 2136 \end{pgfscope}% 2137 \begin{pgfscope}% 2138 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2139 \pgfusepath{clip}% 2140 \pgfsetrectcap% 2141 \pgfsetroundjoin% 2142 \pgfsetlinewidth{1.505625pt}% 2143 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2144 \pgfsetstrokecolor{currentstroke}% 2145 \pgfsetdash{}{0pt}% 2146 \pgfpathmoveto{\pgfqpoint{1.025455in}{3.616719in}}% 2147 \pgfpathlineto{\pgfqpoint{1.326061in}{2.880579in}}% 2148 \pgfpathlineto{\pgfqpoint{1.927273in}{1.983335in}}% 2149 \pgfpathlineto{\pgfqpoint{3.129697in}{1.145651in}}% 2150 \pgfpathlineto{\pgfqpoint{4.332121in}{0.876039in}}% 2151 \pgfpathlineto{\pgfqpoint{5.534545in}{0.885117in}}% 2152 \pgfusepath{stroke}% 2153 \end{pgfscope}% 2154 \begin{pgfscope}% 2155 \pgfpathrectangle{\pgfqpoint{0.800000in}{0.528000in}}{\pgfqpoint{4.960000in}{3.696000in}}% 2156 \pgfusepath{clip}% 2157 \pgfsetbuttcap% 2158 \pgfsetroundjoin% 2159 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2160 \pgfsetfillcolor{currentfill}% 2161 \pgfsetlinewidth{1.003750pt}% 2162 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2163 \pgfsetstrokecolor{currentstroke}% 2164 \pgfsetdash{}{0pt}% 2165 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2166 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2167 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2168 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2169 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2170 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2171 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2172 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2173 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2174 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2175 \pgfpathclose% 2176 \pgfusepath{stroke,fill}% 2177 }% 2178 \begin{pgfscope}% 2179 \pgfsys@transformshift{1.025455in}{3.616719in}% 2180 \pgfsys@useobject{currentmarker}{}% 2181 \end{pgfscope}% 2182 \begin{pgfscope}% 2183 \pgfsys@transformshift{1.326061in}{2.880579in}% 2184 \pgfsys@useobject{currentmarker}{}% 2185 \end{pgfscope}% 2186 \begin{pgfscope}% 2187 \pgfsys@transformshift{1.927273in}{1.983335in}% 2188 \pgfsys@useobject{currentmarker}{}% 2189 \end{pgfscope}% 2190 \begin{pgfscope}% 2191 \pgfsys@transformshift{3.129697in}{1.145651in}% 2192 \pgfsys@useobject{currentmarker}{}% 2193 \end{pgfscope}% 2194 \begin{pgfscope}% 2195 \pgfsys@transformshift{4.332121in}{0.876039in}% 2196 \pgfsys@useobject{currentmarker}{}% 2197 \end{pgfscope}% 2198 \begin{pgfscope}% 2199 \pgfsys@transformshift{5.534545in}{0.885117in}% 2200 \pgfsys@useobject{currentmarker}{}% 2201 \end{pgfscope}% 2202 \end{pgfscope}% 2203 \begin{pgfscope}% 2204 \pgfsetrectcap% 2205 \pgfsetmiterjoin% 2206 \pgfsetlinewidth{0.803000pt}% 2207 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2208 \pgfsetstrokecolor{currentstroke}% 2209 \pgfsetdash{}{0pt}% 2210 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2211 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 2212 \pgfusepath{stroke}% 2213 \end{pgfscope}% 2214 \begin{pgfscope}% 2215 \pgfsetrectcap% 2216 \pgfsetmiterjoin% 2217 \pgfsetlinewidth{0.803000pt}% 2218 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2219 \pgfsetstrokecolor{currentstroke}% 2220 \pgfsetdash{}{0pt}% 2221 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 2222 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2223 \pgfusepath{stroke}% 2224 \end{pgfscope}% 2225 \begin{pgfscope}% 2226 \pgfsetrectcap% 2227 \pgfsetmiterjoin% 2228 \pgfsetlinewidth{0.803000pt}% 2229 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2230 \pgfsetstrokecolor{currentstroke}% 2231 \pgfsetdash{}{0pt}% 2232 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 2233 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 2234 \pgfusepath{stroke}% 2235 \end{pgfscope}% 2236 \begin{pgfscope}% 2237 \pgfsetrectcap% 2238 \pgfsetmiterjoin% 2239 \pgfsetlinewidth{0.803000pt}% 2240 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 2241 \pgfsetstrokecolor{currentstroke}% 2242 \pgfsetdash{}{0pt}% 2243 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 2244 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 2245 \pgfusepath{stroke}% 2430 \pgfsys@transformshift{3.869368in}{2.556015in}% 2431 \pgfsys@useobject{currentmarker}{}% 2432 \end{pgfscope}% 2246 2433 \end{pgfscope}% 2247 2434 \begin{pgfscope}% … … 2249 2436 \pgfsetstrokecolor{textcolor}% 2250 2437 \pgfsetfillcolor{textcolor}% 2251 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{12.000000}{14.400000}\selectfont Aggregate Lock Benchmark: 8 Locks}% 2252 \end{pgfscope}% 2253 \begin{pgfscope}% 2254 \pgfsetbuttcap% 2255 \pgfsetmiterjoin% 2256 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 2257 \pgfsetfillcolor{currentfill}% 2258 \pgfsetfillopacity{0.800000}% 2438 \pgftext[x=4.269368in,y=2.478238in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-baseline}% 2439 \end{pgfscope}% 2440 \begin{pgfscope}% 2441 \pgfsetbuttcap% 2442 \pgfsetroundjoin% 2443 \pgfsetlinewidth{1.505625pt}% 2444 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2445 \pgfsetstrokecolor{currentstroke}% 2446 \pgfsetdash{}{0pt}% 2447 \pgfpathmoveto{\pgfqpoint{3.869368in}{2.120444in}}% 2448 \pgfpathlineto{\pgfqpoint{3.869368in}{2.342667in}}% 2449 \pgfusepath{stroke}% 2450 \end{pgfscope}% 2451 \begin{pgfscope}% 2452 \pgfsetbuttcap% 2453 \pgfsetroundjoin% 2454 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2455 \pgfsetfillcolor{currentfill}% 2259 2456 \pgfsetlinewidth{1.003750pt}% 2260 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 2261 \pgfsetstrokecolor{currentstroke}% 2262 \pgfsetstrokeopacity{0.800000}% 2263 \pgfsetdash{}{0pt}% 2264 \pgfpathmoveto{\pgfqpoint{0.897222in}{0.597444in}}% 2265 \pgfpathlineto{\pgfqpoint{2.156483in}{0.597444in}}% 2266 \pgfpathquadraticcurveto{\pgfqpoint{2.184261in}{0.597444in}}{\pgfqpoint{2.184261in}{0.625222in}}% 2267 \pgfpathlineto{\pgfqpoint{2.184261in}{1.386024in}}% 2268 \pgfpathquadraticcurveto{\pgfqpoint{2.184261in}{1.413802in}}{\pgfqpoint{2.156483in}{1.413802in}}% 2269 \pgfpathlineto{\pgfqpoint{0.897222in}{1.413802in}}% 2270 \pgfpathquadraticcurveto{\pgfqpoint{0.869444in}{1.413802in}}{\pgfqpoint{0.869444in}{1.386024in}}% 2271 \pgfpathlineto{\pgfqpoint{0.869444in}{0.625222in}}% 2272 \pgfpathquadraticcurveto{\pgfqpoint{0.869444in}{0.597444in}}{\pgfqpoint{0.897222in}{0.597444in}}% 2273 \pgfpathclose% 2274 \pgfusepath{stroke,fill}% 2275 \end{pgfscope}% 2276 \begin{pgfscope}% 2277 \pgfsetbuttcap% 2278 \pgfsetroundjoin% 2279 \pgfsetlinewidth{1.505625pt}% 2280 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2281 \pgfsetstrokecolor{currentstroke}% 2282 \pgfsetdash{}{0pt}% 2283 \pgfpathmoveto{\pgfqpoint{1.063889in}{1.240191in}}% 2284 \pgfpathlineto{\pgfqpoint{1.063889in}{1.379080in}}% 2285 \pgfusepath{stroke}% 2286 \end{pgfscope}% 2287 \begin{pgfscope}% 2288 \pgfsetbuttcap% 2289 \pgfsetroundjoin% 2290 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 2291 \pgfsetfillcolor{currentfill}% 2292 \pgfsetlinewidth{1.003750pt}% 2293 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 2457 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2294 2458 \pgfsetstrokecolor{currentstroke}% 2295 2459 \pgfsetdash{}{0pt}% … … 2300 2464 }% 2301 2465 \begin{pgfscope}% 2302 \pgfsys@transformshift{ 1.063889in}{1.240191in}%2303 \pgfsys@useobject{currentmarker}{}% 2304 \end{pgfscope}% 2305 \end{pgfscope}% 2306 \begin{pgfscope}% 2307 \pgfsetbuttcap% 2308 \pgfsetroundjoin% 2309 \definecolor{currentfill}{rgb}{0.1 21569,0.466667,0.705882}%2466 \pgfsys@transformshift{3.869368in}{2.120444in}% 2467 \pgfsys@useobject{currentmarker}{}% 2468 \end{pgfscope}% 2469 \end{pgfscope}% 2470 \begin{pgfscope}% 2471 \pgfsetbuttcap% 2472 \pgfsetroundjoin% 2473 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2310 2474 \pgfsetfillcolor{currentfill}% 2311 2475 \pgfsetlinewidth{1.003750pt}% 2312 \definecolor{currentstroke}{rgb}{0.1 21569,0.466667,0.705882}%2476 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2313 2477 \pgfsetstrokecolor{currentstroke}% 2314 2478 \pgfsetdash{}{0pt}% … … 2319 2483 }% 2320 2484 \begin{pgfscope}% 2321 \pgfsys@transformshift{ 1.063889in}{1.379080in}%2485 \pgfsys@transformshift{3.869368in}{2.342667in}% 2322 2486 \pgfsys@useobject{currentmarker}{}% 2323 2487 \end{pgfscope}% … … 2327 2491 \pgfsetroundjoin% 2328 2492 \pgfsetlinewidth{1.505625pt}% 2329 \definecolor{currentstroke}{rgb}{0.1 21569,0.466667,0.705882}%2330 \pgfsetstrokecolor{currentstroke}% 2331 \pgfsetdash{}{0pt}% 2332 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{1.309636in}}%2333 \pgfpathlineto{\pgfqpoint{ 1.202778in}{1.309636in}}%2334 \pgfusepath{stroke}% 2335 \end{pgfscope}% 2336 \begin{pgfscope}% 2337 \pgfsetbuttcap% 2338 \pgfset roundjoin%2339 \definecolor{currentfill}{rgb}{0.1 21569,0.466667,0.705882}%2493 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2494 \pgfsetstrokecolor{currentstroke}% 2495 \pgfsetdash{}{0pt}% 2496 \pgfpathmoveto{\pgfqpoint{3.647146in}{2.231556in}}% 2497 \pgfpathlineto{\pgfqpoint{4.091591in}{2.231556in}}% 2498 \pgfusepath{stroke}% 2499 \end{pgfscope}% 2500 \begin{pgfscope}% 2501 \pgfsetbuttcap% 2502 \pgfsetmiterjoin% 2503 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2340 2504 \pgfsetfillcolor{currentfill}% 2341 2505 \pgfsetlinewidth{1.003750pt}% 2342 \definecolor{currentstroke}{rgb}{0.1 21569,0.466667,0.705882}%2506 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2343 2507 \pgfsetstrokecolor{currentstroke}% 2344 2508 \pgfsetdash{}{0pt}% 2345 2509 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2346 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2347 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2348 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2349 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2350 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2351 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2352 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2353 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2354 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2510 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 2511 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 2512 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 2513 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 2355 2514 \pgfpathclose% 2356 2515 \pgfusepath{stroke,fill}% 2357 2516 }% 2358 2517 \begin{pgfscope}% 2359 \pgfsys@transformshift{ 1.063889in}{1.309636in}%2518 \pgfsys@transformshift{3.869368in}{2.231556in}% 2360 2519 \pgfsys@useobject{currentmarker}{}% 2361 2520 \end{pgfscope}% … … 2365 2524 \pgfsetstrokecolor{textcolor}% 2366 2525 \pgfsetfillcolor{textcolor}% 2367 \pgftext[x= 1.313889in,y=1.261024in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-baseline}%2368 \end{pgfscope}% 2369 \begin{pgfscope}% 2370 \pgfsetbuttcap% 2371 \pgfsetroundjoin% 2372 \pgfsetlinewidth{1.505625pt}% 2373 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2374 \pgfsetstrokecolor{currentstroke}% 2375 \pgfsetdash{}{0pt}% 2376 \pgfpathmoveto{\pgfqpoint{ 1.063889in}{1.046518in}}%2377 \pgfpathlineto{\pgfqpoint{ 1.063889in}{1.185407in}}%2378 \pgfusepath{stroke}% 2379 \end{pgfscope}% 2380 \begin{pgfscope}% 2381 \pgfsetbuttcap% 2382 \pgfsetroundjoin% 2383 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2526 \pgftext[x=4.269368in,y=2.153778in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA-rand}% 2527 \end{pgfscope}% 2528 \begin{pgfscope}% 2529 \pgfsetbuttcap% 2530 \pgfsetroundjoin% 2531 \pgfsetlinewidth{1.505625pt}% 2532 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2533 \pgfsetstrokecolor{currentstroke}% 2534 \pgfsetdash{}{0pt}% 2535 \pgfpathmoveto{\pgfqpoint{3.869368in}{1.795985in}}% 2536 \pgfpathlineto{\pgfqpoint{3.869368in}{2.018207in}}% 2537 \pgfusepath{stroke}% 2538 \end{pgfscope}% 2539 \begin{pgfscope}% 2540 \pgfsetbuttcap% 2541 \pgfsetroundjoin% 2542 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2384 2543 \pgfsetfillcolor{currentfill}% 2385 2544 \pgfsetlinewidth{1.003750pt}% 2386 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2545 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2387 2546 \pgfsetstrokecolor{currentstroke}% 2388 2547 \pgfsetdash{}{0pt}% … … 2393 2552 }% 2394 2553 \begin{pgfscope}% 2395 \pgfsys@transformshift{ 1.063889in}{1.046518in}%2396 \pgfsys@useobject{currentmarker}{}% 2397 \end{pgfscope}% 2398 \end{pgfscope}% 2399 \begin{pgfscope}% 2400 \pgfsetbuttcap% 2401 \pgfsetroundjoin% 2402 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2554 \pgfsys@transformshift{3.869368in}{1.795985in}% 2555 \pgfsys@useobject{currentmarker}{}% 2556 \end{pgfscope}% 2557 \end{pgfscope}% 2558 \begin{pgfscope}% 2559 \pgfsetbuttcap% 2560 \pgfsetroundjoin% 2561 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2403 2562 \pgfsetfillcolor{currentfill}% 2404 2563 \pgfsetlinewidth{1.003750pt}% 2405 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2564 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2406 2565 \pgfsetstrokecolor{currentstroke}% 2407 2566 \pgfsetdash{}{0pt}% … … 2412 2571 }% 2413 2572 \begin{pgfscope}% 2414 \pgfsys@transformshift{ 1.063889in}{1.185407in}%2573 \pgfsys@transformshift{3.869368in}{2.018207in}% 2415 2574 \pgfsys@useobject{currentmarker}{}% 2416 2575 \end{pgfscope}% … … 2420 2579 \pgfsetroundjoin% 2421 2580 \pgfsetlinewidth{1.505625pt}% 2422 \definecolor{currentstroke}{rgb}{ 1.000000,0.498039,0.054902}%2423 \pgfsetstrokecolor{currentstroke}% 2424 \pgfsetdash{}{0pt}% 2425 \pgfpathmoveto{\pgfqpoint{ 0.925000in}{1.115963in}}%2426 \pgfpathlineto{\pgfqpoint{ 1.202778in}{1.115963in}}%2427 \pgfusepath{stroke}% 2428 \end{pgfscope}% 2429 \begin{pgfscope}% 2430 \pgfsetbuttcap% 2431 \pgfset roundjoin%2432 \definecolor{currentfill}{rgb}{ 1.000000,0.498039,0.054902}%2581 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2582 \pgfsetstrokecolor{currentstroke}% 2583 \pgfsetdash{}{0pt}% 2584 \pgfpathmoveto{\pgfqpoint{3.647146in}{1.907096in}}% 2585 \pgfpathlineto{\pgfqpoint{4.091591in}{1.907096in}}% 2586 \pgfusepath{stroke}% 2587 \end{pgfscope}% 2588 \begin{pgfscope}% 2589 \pgfsetbuttcap% 2590 \pgfsetmiterjoin% 2591 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2433 2592 \pgfsetfillcolor{currentfill}% 2434 2593 \pgfsetlinewidth{1.003750pt}% 2435 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 2436 \pgfsetstrokecolor{currentstroke}% 2437 \pgfsetdash{}{0pt}% 2438 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2439 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2440 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2441 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2442 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2443 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2444 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2445 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2446 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2447 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2594 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2595 \pgfsetstrokecolor{currentstroke}% 2596 \pgfsetdash{}{0pt}% 2597 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.058926in}{-0.058926in}}{\pgfqpoint{0.058926in}{0.058926in}}{% 2598 \pgfpathmoveto{\pgfqpoint{-0.000000in}{-0.058926in}}% 2599 \pgfpathlineto{\pgfqpoint{0.058926in}{0.000000in}}% 2600 \pgfpathlineto{\pgfqpoint{0.000000in}{0.058926in}}% 2601 \pgfpathlineto{\pgfqpoint{-0.058926in}{0.000000in}}% 2448 2602 \pgfpathclose% 2449 2603 \pgfusepath{stroke,fill}% 2450 2604 }% 2451 2605 \begin{pgfscope}% 2452 \pgfsys@transformshift{ 1.063889in}{1.115963in}%2606 \pgfsys@transformshift{3.869368in}{1.907096in}% 2453 2607 \pgfsys@useobject{currentmarker}{}% 2454 2608 \end{pgfscope}% … … 2458 2612 \pgfsetstrokecolor{textcolor}% 2459 2613 \pgfsetfillcolor{textcolor}% 2460 \pgftext[x=1.313889in,y=1.067352in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-baseline}% 2461 \end{pgfscope}% 2462 \begin{pgfscope}% 2463 \pgfsetbuttcap% 2464 \pgfsetroundjoin% 2465 \pgfsetlinewidth{1.505625pt}% 2466 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2467 \pgfsetstrokecolor{currentstroke}% 2468 \pgfsetdash{}{0pt}% 2469 \pgfpathmoveto{\pgfqpoint{1.063889in}{0.852846in}}% 2470 \pgfpathlineto{\pgfqpoint{1.063889in}{0.991734in}}% 2471 \pgfusepath{stroke}% 2472 \end{pgfscope}% 2473 \begin{pgfscope}% 2474 \pgfsetbuttcap% 2475 \pgfsetroundjoin% 2476 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2477 \pgfsetfillcolor{currentfill}% 2478 \pgfsetlinewidth{1.003750pt}% 2479 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2480 \pgfsetstrokecolor{currentstroke}% 2481 \pgfsetdash{}{0pt}% 2482 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2483 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2484 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2485 \pgfusepath{stroke,fill}% 2486 }% 2487 \begin{pgfscope}% 2488 \pgfsys@transformshift{1.063889in}{0.852846in}% 2489 \pgfsys@useobject{currentmarker}{}% 2490 \end{pgfscope}% 2491 \end{pgfscope}% 2492 \begin{pgfscope}% 2493 \pgfsetbuttcap% 2494 \pgfsetroundjoin% 2495 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2496 \pgfsetfillcolor{currentfill}% 2497 \pgfsetlinewidth{1.003750pt}% 2498 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2499 \pgfsetstrokecolor{currentstroke}% 2500 \pgfsetdash{}{0pt}% 2501 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2502 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2503 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2504 \pgfusepath{stroke,fill}% 2505 }% 2506 \begin{pgfscope}% 2507 \pgfsys@transformshift{1.063889in}{0.991734in}% 2508 \pgfsys@useobject{currentmarker}{}% 2509 \end{pgfscope}% 2510 \end{pgfscope}% 2511 \begin{pgfscope}% 2512 \pgfsetrectcap% 2513 \pgfsetroundjoin% 2514 \pgfsetlinewidth{1.505625pt}% 2515 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2516 \pgfsetstrokecolor{currentstroke}% 2517 \pgfsetdash{}{0pt}% 2518 \pgfpathmoveto{\pgfqpoint{0.925000in}{0.922290in}}% 2519 \pgfpathlineto{\pgfqpoint{1.202778in}{0.922290in}}% 2520 \pgfusepath{stroke}% 2521 \end{pgfscope}% 2522 \begin{pgfscope}% 2523 \pgfsetbuttcap% 2524 \pgfsetroundjoin% 2525 \definecolor{currentfill}{rgb}{0.172549,0.627451,0.172549}% 2526 \pgfsetfillcolor{currentfill}% 2527 \pgfsetlinewidth{1.003750pt}% 2528 \definecolor{currentstroke}{rgb}{0.172549,0.627451,0.172549}% 2529 \pgfsetstrokecolor{currentstroke}% 2530 \pgfsetdash{}{0pt}% 2531 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2532 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2533 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2534 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2535 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2536 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2537 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2538 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2539 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2540 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2541 \pgfpathclose% 2542 \pgfusepath{stroke,fill}% 2543 }% 2544 \begin{pgfscope}% 2545 \pgfsys@transformshift{1.063889in}{0.922290in}% 2546 \pgfsys@useobject{currentmarker}{}% 2547 \end{pgfscope}% 2548 \end{pgfscope}% 2549 \begin{pgfscope}% 2550 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2551 \pgfsetstrokecolor{textcolor}% 2552 \pgfsetfillcolor{textcolor}% 2553 \pgftext[x=1.313889in,y=0.873679in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA-rand}% 2554 \end{pgfscope}% 2555 \begin{pgfscope}% 2556 \pgfsetbuttcap% 2557 \pgfsetroundjoin% 2558 \pgfsetlinewidth{1.505625pt}% 2559 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2560 \pgfsetstrokecolor{currentstroke}% 2561 \pgfsetdash{}{0pt}% 2562 \pgfpathmoveto{\pgfqpoint{1.063889in}{0.659173in}}% 2563 \pgfpathlineto{\pgfqpoint{1.063889in}{0.798062in}}% 2564 \pgfusepath{stroke}% 2565 \end{pgfscope}% 2566 \begin{pgfscope}% 2567 \pgfsetbuttcap% 2568 \pgfsetroundjoin% 2569 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2570 \pgfsetfillcolor{currentfill}% 2571 \pgfsetlinewidth{1.003750pt}% 2572 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2573 \pgfsetstrokecolor{currentstroke}% 2574 \pgfsetdash{}{0pt}% 2575 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2576 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2577 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2578 \pgfusepath{stroke,fill}% 2579 }% 2580 \begin{pgfscope}% 2581 \pgfsys@transformshift{1.063889in}{0.659173in}% 2582 \pgfsys@useobject{currentmarker}{}% 2583 \end{pgfscope}% 2584 \end{pgfscope}% 2585 \begin{pgfscope}% 2586 \pgfsetbuttcap% 2587 \pgfsetroundjoin% 2588 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2589 \pgfsetfillcolor{currentfill}% 2590 \pgfsetlinewidth{1.003750pt}% 2591 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2592 \pgfsetstrokecolor{currentstroke}% 2593 \pgfsetdash{}{0pt}% 2594 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 2595 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 2596 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 2597 \pgfusepath{stroke,fill}% 2598 }% 2599 \begin{pgfscope}% 2600 \pgfsys@transformshift{1.063889in}{0.798062in}% 2601 \pgfsys@useobject{currentmarker}{}% 2602 \end{pgfscope}% 2603 \end{pgfscope}% 2604 \begin{pgfscope}% 2605 \pgfsetrectcap% 2606 \pgfsetroundjoin% 2607 \pgfsetlinewidth{1.505625pt}% 2608 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2609 \pgfsetstrokecolor{currentstroke}% 2610 \pgfsetdash{}{0pt}% 2611 \pgfpathmoveto{\pgfqpoint{0.925000in}{0.728617in}}% 2612 \pgfpathlineto{\pgfqpoint{1.202778in}{0.728617in}}% 2613 \pgfusepath{stroke}% 2614 \end{pgfscope}% 2615 \begin{pgfscope}% 2616 \pgfsetbuttcap% 2617 \pgfsetroundjoin% 2618 \definecolor{currentfill}{rgb}{0.839216,0.152941,0.156863}% 2619 \pgfsetfillcolor{currentfill}% 2620 \pgfsetlinewidth{1.003750pt}% 2621 \definecolor{currentstroke}{rgb}{0.839216,0.152941,0.156863}% 2622 \pgfsetstrokecolor{currentstroke}% 2623 \pgfsetdash{}{0pt}% 2624 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 2625 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 2626 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 2627 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 2628 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 2629 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 2630 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 2631 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 2632 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 2633 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 2634 \pgfpathclose% 2635 \pgfusepath{stroke,fill}% 2636 }% 2637 \begin{pgfscope}% 2638 \pgfsys@transformshift{1.063889in}{0.728617in}% 2639 \pgfsys@useobject{currentmarker}{}% 2640 \end{pgfscope}% 2641 \end{pgfscope}% 2642 \begin{pgfscope}% 2643 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 2644 \pgfsetstrokecolor{textcolor}% 2645 \pgfsetfillcolor{textcolor}% 2646 \pgftext[x=1.313889in,y=0.680006in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CPP-rand}% 2614 \pgftext[x=4.269368in,y=1.829318in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CPP-rand}% 2647 2615 \end{pgfscope}% 2648 2616 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/figures/pyke_Channel_Contention.pgf
r3a513d89 r044ae62 77 77 \pgfsetstrokecolor{textcolor}% 78 78 \pgfsetfillcolor{textcolor}% 79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 2\)}%79 \pgftext[x=1.025455in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 2\)}% 80 80 \end{pgfscope}% 81 81 \begin{pgfscope}% … … 102 102 \pgfsetstrokecolor{textcolor}% 103 103 \pgfsetfillcolor{textcolor}% 104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 4\)}%104 \pgftext[x=1.326061in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 4\)}% 105 105 \end{pgfscope}% 106 106 \begin{pgfscope}% … … 127 127 \pgfsetstrokecolor{textcolor}% 128 128 \pgfsetfillcolor{textcolor}% 129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 8\)}%129 \pgftext[x=1.927273in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 8\)}% 130 130 \end{pgfscope}% 131 131 \begin{pgfscope}% … … 152 152 \pgfsetstrokecolor{textcolor}% 153 153 \pgfsetfillcolor{textcolor}% 154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 16\)}%154 \pgftext[x=3.129697in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 16\)}% 155 155 \end{pgfscope}% 156 156 \begin{pgfscope}% … … 177 177 \pgfsetstrokecolor{textcolor}% 178 178 \pgfsetfillcolor{textcolor}% 179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 24\)}%179 \pgftext[x=4.332121in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 24\)}% 180 180 \end{pgfscope}% 181 181 \begin{pgfscope}% … … 202 202 \pgfsetstrokecolor{textcolor}% 203 203 \pgfsetfillcolor{textcolor}% 204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{1 0.000000}{12.000000}\selectfont \(\displaystyle 32\)}%204 \pgftext[x=5.534545in,y=0.430778in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 32\)}% 205 205 \end{pgfscope}% 206 206 \begin{pgfscope}% … … 208 208 \pgfsetstrokecolor{textcolor}% 209 209 \pgfsetfillcolor{textcolor}% 210 \pgftext[x=3.280000in,y=0. 251766in,,top]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Cores}%210 \pgftext[x=3.280000in,y=0.161874in,,top]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Cores}% 211 211 \end{pgfscope}% 212 212 \begin{pgfscope}% … … 233 233 \pgfsetstrokecolor{textcolor}% 234 234 \pgfsetfillcolor{textcolor}% 235 \pgftext[x=0. 501581in,y=2.276306in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont \(\displaystyle 10^{8}\)}%235 \pgftext[x=0.399655in,y=2.241198in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont \(\displaystyle 10^{8}\)}% 236 236 \end{pgfscope}% 237 237 \begin{pgfscope}% … … 429 429 \pgfsetstrokecolor{textcolor}% 430 430 \pgfsetfillcolor{textcolor}% 431 \pgftext[x=0. 446026in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Throughput (channel operations)}%431 \pgftext[x=0.344100in,y=2.376000in,,bottom,rotate=90.000000]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Throughput (channel operations)}% 432 432 \end{pgfscope}% 433 433 \begin{pgfscope}% … … 838 838 \pgfusepath{clip}% 839 839 \pgfsetbuttcap% 840 \pgfset roundjoin%840 \pgfsetmiterjoin% 841 841 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 842 842 \pgfsetfillcolor{currentfill}% 843 843 \pgfsetlinewidth{1.003750pt}% 844 844 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 845 \pgfsetstrokecolor{currentstroke}% 846 \pgfsetdash{}{0pt}% 847 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 848 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 849 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 850 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 851 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 852 \pgfpathclose% 853 \pgfusepath{stroke,fill}% 854 }% 855 \begin{pgfscope}% 856 \pgfsys@transformshift{1.025455in}{3.619140in}% 857 \pgfsys@useobject{currentmarker}{}% 858 \end{pgfscope}% 859 \begin{pgfscope}% 860 \pgfsys@transformshift{1.326061in}{3.242405in}% 861 \pgfsys@useobject{currentmarker}{}% 862 \end{pgfscope}% 863 \begin{pgfscope}% 864 \pgfsys@transformshift{1.927273in}{2.083323in}% 865 \pgfsys@useobject{currentmarker}{}% 866 \end{pgfscope}% 867 \begin{pgfscope}% 868 \pgfsys@transformshift{3.129697in}{0.987727in}% 869 \pgfsys@useobject{currentmarker}{}% 870 \end{pgfscope}% 871 \begin{pgfscope}% 872 \pgfsys@transformshift{4.332121in}{0.742138in}% 873 \pgfsys@useobject{currentmarker}{}% 874 \end{pgfscope}% 875 \begin{pgfscope}% 876 \pgfsys@transformshift{5.534545in}{0.704967in}% 877 \pgfsys@useobject{currentmarker}{}% 878 \end{pgfscope}% 879 \end{pgfscope}% 880 \begin{pgfscope}% 881 \pgfsetrectcap% 882 \pgfsetmiterjoin% 883 \pgfsetlinewidth{0.803000pt}% 884 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 885 \pgfsetstrokecolor{currentstroke}% 886 \pgfsetdash{}{0pt}% 887 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 888 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 889 \pgfusepath{stroke}% 890 \end{pgfscope}% 891 \begin{pgfscope}% 892 \pgfsetrectcap% 893 \pgfsetmiterjoin% 894 \pgfsetlinewidth{0.803000pt}% 895 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 896 \pgfsetstrokecolor{currentstroke}% 897 \pgfsetdash{}{0pt}% 898 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 899 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 900 \pgfusepath{stroke}% 901 \end{pgfscope}% 902 \begin{pgfscope}% 903 \pgfsetrectcap% 904 \pgfsetmiterjoin% 905 \pgfsetlinewidth{0.803000pt}% 906 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 907 \pgfsetstrokecolor{currentstroke}% 908 \pgfsetdash{}{0pt}% 909 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 910 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 911 \pgfusepath{stroke}% 912 \end{pgfscope}% 913 \begin{pgfscope}% 914 \pgfsetrectcap% 915 \pgfsetmiterjoin% 916 \pgfsetlinewidth{0.803000pt}% 917 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 918 \pgfsetstrokecolor{currentstroke}% 919 \pgfsetdash{}{0pt}% 920 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 921 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 922 \pgfusepath{stroke}% 923 \end{pgfscope}% 924 \begin{pgfscope}% 925 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 926 \pgfsetstrokecolor{textcolor}% 927 \pgfsetfillcolor{textcolor}% 928 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{19.200000}{23.040000}\selectfont Channel Contention Benchmark}% 929 \end{pgfscope}% 930 \begin{pgfscope}% 931 \pgfsetbuttcap% 932 \pgfsetmiterjoin% 933 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 934 \pgfsetfillcolor{currentfill}% 935 \pgfsetfillopacity{0.800000}% 936 \pgfsetlinewidth{1.003750pt}% 937 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 938 \pgfsetstrokecolor{currentstroke}% 939 \pgfsetstrokeopacity{0.800000}% 940 \pgfsetdash{}{0pt}% 941 \pgfpathmoveto{\pgfqpoint{4.447292in}{3.397303in}}% 942 \pgfpathlineto{\pgfqpoint{5.604444in}{3.397303in}}% 943 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{3.397303in}}{\pgfqpoint{5.648889in}{3.441747in}}% 944 \pgfpathlineto{\pgfqpoint{5.648889in}{4.068444in}}% 945 \pgfpathquadraticcurveto{\pgfqpoint{5.648889in}{4.112889in}}{\pgfqpoint{5.604444in}{4.112889in}}% 946 \pgfpathlineto{\pgfqpoint{4.447292in}{4.112889in}}% 947 \pgfpathquadraticcurveto{\pgfqpoint{4.402848in}{4.112889in}}{\pgfqpoint{4.402848in}{4.068444in}}% 948 \pgfpathlineto{\pgfqpoint{4.402848in}{3.441747in}}% 949 \pgfpathquadraticcurveto{\pgfqpoint{4.402848in}{3.397303in}}{\pgfqpoint{4.447292in}{3.397303in}}% 950 \pgfpathclose% 951 \pgfusepath{stroke,fill}% 952 \end{pgfscope}% 953 \begin{pgfscope}% 954 \pgfsetbuttcap% 955 \pgfsetroundjoin% 956 \pgfsetlinewidth{1.505625pt}% 957 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 958 \pgfsetstrokecolor{currentstroke}% 959 \pgfsetdash{}{0pt}% 960 \pgfpathmoveto{\pgfqpoint{4.713959in}{3.824000in}}% 961 \pgfpathlineto{\pgfqpoint{4.713959in}{4.046222in}}% 962 \pgfusepath{stroke}% 963 \end{pgfscope}% 964 \begin{pgfscope}% 965 \pgfsetbuttcap% 966 \pgfsetroundjoin% 967 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 968 \pgfsetfillcolor{currentfill}% 969 \pgfsetlinewidth{1.003750pt}% 970 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 971 \pgfsetstrokecolor{currentstroke}% 972 \pgfsetdash{}{0pt}% 973 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 974 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 975 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 976 \pgfusepath{stroke,fill}% 977 }% 978 \begin{pgfscope}% 979 \pgfsys@transformshift{4.713959in}{3.824000in}% 980 \pgfsys@useobject{currentmarker}{}% 981 \end{pgfscope}% 982 \end{pgfscope}% 983 \begin{pgfscope}% 984 \pgfsetbuttcap% 985 \pgfsetroundjoin% 986 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 987 \pgfsetfillcolor{currentfill}% 988 \pgfsetlinewidth{1.003750pt}% 989 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 990 \pgfsetstrokecolor{currentstroke}% 991 \pgfsetdash{}{0pt}% 992 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 993 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 994 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 995 \pgfusepath{stroke,fill}% 996 }% 997 \begin{pgfscope}% 998 \pgfsys@transformshift{4.713959in}{4.046222in}% 999 \pgfsys@useobject{currentmarker}{}% 1000 \end{pgfscope}% 1001 \end{pgfscope}% 1002 \begin{pgfscope}% 1003 \pgfsetrectcap% 1004 \pgfsetroundjoin% 1005 \pgfsetlinewidth{1.505625pt}% 1006 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1007 \pgfsetstrokecolor{currentstroke}% 1008 \pgfsetdash{}{0pt}% 1009 \pgfpathmoveto{\pgfqpoint{4.491737in}{3.935111in}}% 1010 \pgfpathlineto{\pgfqpoint{4.936181in}{3.935111in}}% 1011 \pgfusepath{stroke}% 1012 \end{pgfscope}% 1013 \begin{pgfscope}% 1014 \pgfsetbuttcap% 1015 \pgfsetroundjoin% 1016 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 1017 \pgfsetfillcolor{currentfill}% 1018 \pgfsetlinewidth{1.003750pt}% 1019 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 845 1020 \pgfsetstrokecolor{currentstroke}% 846 1021 \pgfsetdash{}{0pt}% … … 859 1034 }% 860 1035 \begin{pgfscope}% 861 \pgfsys@transformshift{1.025455in}{3.619140in}% 862 \pgfsys@useobject{currentmarker}{}% 863 \end{pgfscope}% 864 \begin{pgfscope}% 865 \pgfsys@transformshift{1.326061in}{3.242405in}% 866 \pgfsys@useobject{currentmarker}{}% 867 \end{pgfscope}% 868 \begin{pgfscope}% 869 \pgfsys@transformshift{1.927273in}{2.083323in}% 870 \pgfsys@useobject{currentmarker}{}% 871 \end{pgfscope}% 872 \begin{pgfscope}% 873 \pgfsys@transformshift{3.129697in}{0.987727in}% 874 \pgfsys@useobject{currentmarker}{}% 875 \end{pgfscope}% 876 \begin{pgfscope}% 877 \pgfsys@transformshift{4.332121in}{0.742138in}% 878 \pgfsys@useobject{currentmarker}{}% 879 \end{pgfscope}% 880 \begin{pgfscope}% 881 \pgfsys@transformshift{5.534545in}{0.704967in}% 882 \pgfsys@useobject{currentmarker}{}% 883 \end{pgfscope}% 884 \end{pgfscope}% 885 \begin{pgfscope}% 886 \pgfsetrectcap% 887 \pgfsetmiterjoin% 888 \pgfsetlinewidth{0.803000pt}% 889 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 890 \pgfsetstrokecolor{currentstroke}% 891 \pgfsetdash{}{0pt}% 892 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 893 \pgfpathlineto{\pgfqpoint{0.800000in}{4.224000in}}% 894 \pgfusepath{stroke}% 895 \end{pgfscope}% 896 \begin{pgfscope}% 897 \pgfsetrectcap% 898 \pgfsetmiterjoin% 899 \pgfsetlinewidth{0.803000pt}% 900 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 901 \pgfsetstrokecolor{currentstroke}% 902 \pgfsetdash{}{0pt}% 903 \pgfpathmoveto{\pgfqpoint{5.760000in}{0.528000in}}% 904 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 905 \pgfusepath{stroke}% 906 \end{pgfscope}% 907 \begin{pgfscope}% 908 \pgfsetrectcap% 909 \pgfsetmiterjoin% 910 \pgfsetlinewidth{0.803000pt}% 911 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 912 \pgfsetstrokecolor{currentstroke}% 913 \pgfsetdash{}{0pt}% 914 \pgfpathmoveto{\pgfqpoint{0.800000in}{0.528000in}}% 915 \pgfpathlineto{\pgfqpoint{5.760000in}{0.528000in}}% 916 \pgfusepath{stroke}% 917 \end{pgfscope}% 918 \begin{pgfscope}% 919 \pgfsetrectcap% 920 \pgfsetmiterjoin% 921 \pgfsetlinewidth{0.803000pt}% 922 \definecolor{currentstroke}{rgb}{0.000000,0.000000,0.000000}% 923 \pgfsetstrokecolor{currentstroke}% 924 \pgfsetdash{}{0pt}% 925 \pgfpathmoveto{\pgfqpoint{0.800000in}{4.224000in}}% 926 \pgfpathlineto{\pgfqpoint{5.760000in}{4.224000in}}% 927 \pgfusepath{stroke}% 1036 \pgfsys@transformshift{4.713959in}{3.935111in}% 1037 \pgfsys@useobject{currentmarker}{}% 1038 \end{pgfscope}% 928 1039 \end{pgfscope}% 929 1040 \begin{pgfscope}% … … 931 1042 \pgfsetstrokecolor{textcolor}% 932 1043 \pgfsetfillcolor{textcolor}% 933 \pgftext[x=3.280000in,y=4.307333in,,base]{\color{textcolor}\rmfamily\fontsize{12.000000}{14.400000}\selectfont Channel Contention Benchmark}% 934 \end{pgfscope}% 935 \begin{pgfscope}% 936 \pgfsetbuttcap% 937 \pgfsetmiterjoin% 938 \definecolor{currentfill}{rgb}{1.000000,1.000000,1.000000}% 939 \pgfsetfillcolor{currentfill}% 940 \pgfsetfillopacity{0.800000}% 941 \pgfsetlinewidth{1.003750pt}% 942 \definecolor{currentstroke}{rgb}{0.800000,0.800000,0.800000}% 943 \pgfsetstrokecolor{currentstroke}% 944 \pgfsetstrokeopacity{0.800000}% 945 \pgfsetdash{}{0pt}% 946 \pgfpathmoveto{\pgfqpoint{4.938626in}{3.725543in}}% 947 \pgfpathlineto{\pgfqpoint{5.662778in}{3.725543in}}% 948 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{3.725543in}}{\pgfqpoint{5.690556in}{3.753321in}}% 949 \pgfpathlineto{\pgfqpoint{5.690556in}{4.126778in}}% 950 \pgfpathquadraticcurveto{\pgfqpoint{5.690556in}{4.154556in}}{\pgfqpoint{5.662778in}{4.154556in}}% 951 \pgfpathlineto{\pgfqpoint{4.938626in}{4.154556in}}% 952 \pgfpathquadraticcurveto{\pgfqpoint{4.910848in}{4.154556in}}{\pgfqpoint{4.910848in}{4.126778in}}% 953 \pgfpathlineto{\pgfqpoint{4.910848in}{3.753321in}}% 954 \pgfpathquadraticcurveto{\pgfqpoint{4.910848in}{3.725543in}}{\pgfqpoint{4.938626in}{3.725543in}}% 955 \pgfpathclose% 956 \pgfusepath{stroke,fill}% 957 \end{pgfscope}% 958 \begin{pgfscope}% 959 \pgfsetbuttcap% 960 \pgfsetroundjoin% 961 \pgfsetlinewidth{1.505625pt}% 962 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 963 \pgfsetstrokecolor{currentstroke}% 964 \pgfsetdash{}{0pt}% 965 \pgfpathmoveto{\pgfqpoint{5.105293in}{3.980944in}}% 966 \pgfpathlineto{\pgfqpoint{5.105293in}{4.119833in}}% 967 \pgfusepath{stroke}% 968 \end{pgfscope}% 969 \begin{pgfscope}% 970 \pgfsetbuttcap% 971 \pgfsetroundjoin% 972 \definecolor{currentfill}{rgb}{0.121569,0.466667,0.705882}% 973 \pgfsetfillcolor{currentfill}% 974 \pgfsetlinewidth{1.003750pt}% 975 \definecolor{currentstroke}{rgb}{0.121569,0.466667,0.705882}% 1044 \pgftext[x=5.113959in,y=3.857333in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont CFA}% 1045 \end{pgfscope}% 1046 \begin{pgfscope}% 1047 \pgfsetbuttcap% 1048 \pgfsetroundjoin% 1049 \pgfsetlinewidth{1.505625pt}% 1050 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1051 \pgfsetstrokecolor{currentstroke}% 1052 \pgfsetdash{}{0pt}% 1053 \pgfpathmoveto{\pgfqpoint{4.713959in}{3.499540in}}% 1054 \pgfpathlineto{\pgfqpoint{4.713959in}{3.721763in}}% 1055 \pgfusepath{stroke}% 1056 \end{pgfscope}% 1057 \begin{pgfscope}% 1058 \pgfsetbuttcap% 1059 \pgfsetroundjoin% 1060 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1061 \pgfsetfillcolor{currentfill}% 1062 \pgfsetlinewidth{1.003750pt}% 1063 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 976 1064 \pgfsetstrokecolor{currentstroke}% 977 1065 \pgfsetdash{}{0pt}% … … 982 1070 }% 983 1071 \begin{pgfscope}% 984 \pgfsys@transformshift{ 5.105293in}{3.980944in}%985 \pgfsys@useobject{currentmarker}{}% 986 \end{pgfscope}% 987 \end{pgfscope}% 988 \begin{pgfscope}% 989 \pgfsetbuttcap% 990 \pgfsetroundjoin% 991 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%992 \pgfsetfillcolor{currentfill}% 993 \pgfsetlinewidth{1.003750pt}% 994 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1072 \pgfsys@transformshift{4.713959in}{3.499540in}% 1073 \pgfsys@useobject{currentmarker}{}% 1074 \end{pgfscope}% 1075 \end{pgfscope}% 1076 \begin{pgfscope}% 1077 \pgfsetbuttcap% 1078 \pgfsetroundjoin% 1079 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1080 \pgfsetfillcolor{currentfill}% 1081 \pgfsetlinewidth{1.003750pt}% 1082 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 995 1083 \pgfsetstrokecolor{currentstroke}% 996 1084 \pgfsetdash{}{0pt}% … … 1001 1089 }% 1002 1090 \begin{pgfscope}% 1003 \pgfsys@transformshift{ 5.105293in}{4.119833in}%1091 \pgfsys@transformshift{4.713959in}{3.721763in}% 1004 1092 \pgfsys@useobject{currentmarker}{}% 1005 1093 \end{pgfscope}% … … 1009 1097 \pgfsetroundjoin% 1010 1098 \pgfsetlinewidth{1.505625pt}% 1011 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1012 \pgfsetstrokecolor{currentstroke}% 1013 \pgfsetdash{}{0pt}% 1014 \pgfpathmoveto{\pgfqpoint{4. 966404in}{4.050389in}}%1015 \pgfpathlineto{\pgfqpoint{ 5.244182in}{4.050389in}}%1016 \pgfusepath{stroke}% 1017 \end{pgfscope}% 1018 \begin{pgfscope}% 1019 \pgfsetbuttcap% 1020 \pgfset roundjoin%1021 \definecolor{currentfill}{rgb}{ 0.121569,0.466667,0.705882}%1022 \pgfsetfillcolor{currentfill}% 1023 \pgfsetlinewidth{1.003750pt}% 1024 \definecolor{currentstroke}{rgb}{ 0.121569,0.466667,0.705882}%1099 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1100 \pgfsetstrokecolor{currentstroke}% 1101 \pgfsetdash{}{0pt}% 1102 \pgfpathmoveto{\pgfqpoint{4.491737in}{3.610651in}}% 1103 \pgfpathlineto{\pgfqpoint{4.936181in}{3.610651in}}% 1104 \pgfusepath{stroke}% 1105 \end{pgfscope}% 1106 \begin{pgfscope}% 1107 \pgfsetbuttcap% 1108 \pgfsetmiterjoin% 1109 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1110 \pgfsetfillcolor{currentfill}% 1111 \pgfsetlinewidth{1.003750pt}% 1112 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1025 1113 \pgfsetstrokecolor{currentstroke}% 1026 1114 \pgfsetdash{}{0pt}% 1027 1115 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1028 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1029 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1030 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1031 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1032 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1033 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1034 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1035 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1036 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1116 \pgfpathmoveto{\pgfqpoint{-0.041667in}{-0.041667in}}% 1117 \pgfpathlineto{\pgfqpoint{0.041667in}{-0.041667in}}% 1118 \pgfpathlineto{\pgfqpoint{0.041667in}{0.041667in}}% 1119 \pgfpathlineto{\pgfqpoint{-0.041667in}{0.041667in}}% 1037 1120 \pgfpathclose% 1038 1121 \pgfusepath{stroke,fill}% 1039 1122 }% 1040 1123 \begin{pgfscope}% 1041 \pgfsys@transformshift{ 5.105293in}{4.050389in}%1124 \pgfsys@transformshift{4.713959in}{3.610651in}% 1042 1125 \pgfsys@useobject{currentmarker}{}% 1043 1126 \end{pgfscope}% … … 1047 1130 \pgfsetstrokecolor{textcolor}% 1048 1131 \pgfsetfillcolor{textcolor}% 1049 \pgftext[x=5.355293in,y=4.001778in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont CFA}% 1050 \end{pgfscope}% 1051 \begin{pgfscope}% 1052 \pgfsetbuttcap% 1053 \pgfsetroundjoin% 1054 \pgfsetlinewidth{1.505625pt}% 1055 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1056 \pgfsetstrokecolor{currentstroke}% 1057 \pgfsetdash{}{0pt}% 1058 \pgfpathmoveto{\pgfqpoint{5.105293in}{3.787272in}}% 1059 \pgfpathlineto{\pgfqpoint{5.105293in}{3.926161in}}% 1060 \pgfusepath{stroke}% 1061 \end{pgfscope}% 1062 \begin{pgfscope}% 1063 \pgfsetbuttcap% 1064 \pgfsetroundjoin% 1065 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1066 \pgfsetfillcolor{currentfill}% 1067 \pgfsetlinewidth{1.003750pt}% 1068 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1069 \pgfsetstrokecolor{currentstroke}% 1070 \pgfsetdash{}{0pt}% 1071 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1072 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1073 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1074 \pgfusepath{stroke,fill}% 1075 }% 1076 \begin{pgfscope}% 1077 \pgfsys@transformshift{5.105293in}{3.787272in}% 1078 \pgfsys@useobject{currentmarker}{}% 1079 \end{pgfscope}% 1080 \end{pgfscope}% 1081 \begin{pgfscope}% 1082 \pgfsetbuttcap% 1083 \pgfsetroundjoin% 1084 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1085 \pgfsetfillcolor{currentfill}% 1086 \pgfsetlinewidth{1.003750pt}% 1087 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1088 \pgfsetstrokecolor{currentstroke}% 1089 \pgfsetdash{}{0pt}% 1090 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.027778in}{-0.000000in}}{\pgfqpoint{0.027778in}{0.000000in}}{% 1091 \pgfpathmoveto{\pgfqpoint{0.027778in}{-0.000000in}}% 1092 \pgfpathlineto{\pgfqpoint{-0.027778in}{0.000000in}}% 1093 \pgfusepath{stroke,fill}% 1094 }% 1095 \begin{pgfscope}% 1096 \pgfsys@transformshift{5.105293in}{3.926161in}% 1097 \pgfsys@useobject{currentmarker}{}% 1098 \end{pgfscope}% 1099 \end{pgfscope}% 1100 \begin{pgfscope}% 1101 \pgfsetrectcap% 1102 \pgfsetroundjoin% 1103 \pgfsetlinewidth{1.505625pt}% 1104 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1105 \pgfsetstrokecolor{currentstroke}% 1106 \pgfsetdash{}{0pt}% 1107 \pgfpathmoveto{\pgfqpoint{4.966404in}{3.856716in}}% 1108 \pgfpathlineto{\pgfqpoint{5.244182in}{3.856716in}}% 1109 \pgfusepath{stroke}% 1110 \end{pgfscope}% 1111 \begin{pgfscope}% 1112 \pgfsetbuttcap% 1113 \pgfsetroundjoin% 1114 \definecolor{currentfill}{rgb}{1.000000,0.498039,0.054902}% 1115 \pgfsetfillcolor{currentfill}% 1116 \pgfsetlinewidth{1.003750pt}% 1117 \definecolor{currentstroke}{rgb}{1.000000,0.498039,0.054902}% 1118 \pgfsetstrokecolor{currentstroke}% 1119 \pgfsetdash{}{0pt}% 1120 \pgfsys@defobject{currentmarker}{\pgfqpoint{-0.041667in}{-0.041667in}}{\pgfqpoint{0.041667in}{0.041667in}}{% 1121 \pgfpathmoveto{\pgfqpoint{0.000000in}{-0.041667in}}% 1122 \pgfpathcurveto{\pgfqpoint{0.011050in}{-0.041667in}}{\pgfqpoint{0.021649in}{-0.037276in}}{\pgfqpoint{0.029463in}{-0.029463in}}% 1123 \pgfpathcurveto{\pgfqpoint{0.037276in}{-0.021649in}}{\pgfqpoint{0.041667in}{-0.011050in}}{\pgfqpoint{0.041667in}{0.000000in}}% 1124 \pgfpathcurveto{\pgfqpoint{0.041667in}{0.011050in}}{\pgfqpoint{0.037276in}{0.021649in}}{\pgfqpoint{0.029463in}{0.029463in}}% 1125 \pgfpathcurveto{\pgfqpoint{0.021649in}{0.037276in}}{\pgfqpoint{0.011050in}{0.041667in}}{\pgfqpoint{0.000000in}{0.041667in}}% 1126 \pgfpathcurveto{\pgfqpoint{-0.011050in}{0.041667in}}{\pgfqpoint{-0.021649in}{0.037276in}}{\pgfqpoint{-0.029463in}{0.029463in}}% 1127 \pgfpathcurveto{\pgfqpoint{-0.037276in}{0.021649in}}{\pgfqpoint{-0.041667in}{0.011050in}}{\pgfqpoint{-0.041667in}{0.000000in}}% 1128 \pgfpathcurveto{\pgfqpoint{-0.041667in}{-0.011050in}}{\pgfqpoint{-0.037276in}{-0.021649in}}{\pgfqpoint{-0.029463in}{-0.029463in}}% 1129 \pgfpathcurveto{\pgfqpoint{-0.021649in}{-0.037276in}}{\pgfqpoint{-0.011050in}{-0.041667in}}{\pgfqpoint{0.000000in}{-0.041667in}}% 1130 \pgfpathclose% 1131 \pgfusepath{stroke,fill}% 1132 }% 1133 \begin{pgfscope}% 1134 \pgfsys@transformshift{5.105293in}{3.856716in}% 1135 \pgfsys@useobject{currentmarker}{}% 1136 \end{pgfscope}% 1137 \end{pgfscope}% 1138 \begin{pgfscope}% 1139 \definecolor{textcolor}{rgb}{0.000000,0.000000,0.000000}% 1140 \pgfsetstrokecolor{textcolor}% 1141 \pgfsetfillcolor{textcolor}% 1142 \pgftext[x=5.355293in,y=3.808105in,left,base]{\color{textcolor}\rmfamily\fontsize{10.000000}{12.000000}\selectfont Go}% 1132 \pgftext[x=5.113959in,y=3.532874in,left,base]{\color{textcolor}\rmfamily\fontsize{16.000000}{19.200000}\selectfont Go}% 1143 1133 \end{pgfscope}% 1144 1134 \end{pgfpicture}% -
doc/theses/colby_parsons_MMAth/glossary.tex
r3a513d89 r044ae62 60 60 description={An implementation of the actor model.} 61 61 } 62 63 \newglossaryentry{synch_multiplex} 64 { 65 name=synchronous multiplexing, 66 description={synchronization on some subset of a set of resources.} 67 } -
doc/theses/colby_parsons_MMAth/local.bib
r3a513d89 r044ae62 55 55 url={http://hdl.handle.net/10012/17617} 56 56 } 57 58 @article{Roscoe88, 59 title={The laws of occam programming}, 60 author={Roscoe, Andrew William and Hoare, Charles Antony Richard}, 61 journal={Theoretical Computer Science}, 62 volume={60}, 63 number={2}, 64 pages={177--229}, 65 year={1988}, 66 publisher={Elsevier} 67 } 68 69 @article{Pike84, 70 title={The UNIX system: The blit: A multiplexed graphics terminal}, 71 author={Pike, Rob}, 72 journal={AT\&T Bell Laboratories Technical Journal}, 73 volume={63}, 74 number={8}, 75 pages={1607--1631}, 76 year={1984}, 77 publisher={Nokia Bell Labs} 78 } 79 80 @inproceedings{Dice11, 81 title={Brief announcement: multilane-a concurrent blocking multiset}, 82 author={Dice, David and Otenko, Oleksandr}, 83 booktitle={Proceedings of the twenty-third annual ACM symposium on Parallelism in algorithms and architectures}, 84 pages={313--314}, 85 year={2011} 86 } 87 88 @misc{go:chan, 89 author = "The Go Programming Language", 90 title = "src/runtime/chan.go", 91 howpublished = {\href{https://go.dev/src/runtime/chan.go}}, 92 note = "[Online; accessed 23-May-2023]" 93 } 94 95 @misc{go:select, 96 author = "The Go Programming Language", 97 title = "src/runtime/chan.go", 98 howpublished = {\href{https://go.dev/src/runtime/select.go}}, 99 note = "[Online; accessed 23-May-2023]" 100 } 101 -
doc/theses/colby_parsons_MMAth/style/style.tex
r3a513d89 r044ae62 7 7 8 8 \newcommand{\code}[1]{\lstinline[language=CFA]{#1}} 9 \newcommand{\Go}[1]{\lstinline[language=Go]{#1}} 9 10 \newcommand{\uC}{$\mu$\CC} 10 11 \newcommand{\PAB}[1]{{\color{red}PAB: #1}} 12 \newcommand{\CAP}[1]{{\color{orange}CAP: #1}} 11 13 12 14 \newsavebox{\myboxA} % used with subfigure -
doc/theses/colby_parsons_MMAth/text/CFA_concurrency.tex
r3a513d89 r044ae62 7 7 \section{Threading Model}\label{s:threading} 8 8 \CFA provides user-level threading and supports an $M$:$N$ threading model where $M$ user threads are scheduled on $N$ kernel threads, where both $M$ and $N$ can be explicitly set by the user. 9 Kernel threads are created by instancing a @processor@ structure.9 Kernel threads are created by declaring a @processor@ structure. 10 10 User-thread types are defined by creating a @thread@ aggregate-type, \ie replace @struct@ with @thread@. 11 11 For each thread type a corresponding @main@ routine must be defined, which is where the thread starts running once it is created. … … 30 30 When processors are added, they are added alongside the existing processor given to each program. 31 31 Thus, for $N$ processors, allocate $N-1$ processors. 32 A thread is implicitly joined at deallocat ed, either implicitly at block exit for stack allocation or explicitly at @delete@ for heap allocation.32 A thread is implicitly joined at deallocation, either implicitly at block exit for stack allocation or explicitly at @delete@ for heap allocation. 33 33 The thread performing the deallocation must wait for the thread to terminate before the deallocation can occur. 34 34 A thread terminates by returning from the main routine where it starts. -
doc/theses/colby_parsons_MMAth/text/CFA_intro.tex
r3a513d89 r044ae62 6 6 7 7 \section{Overview} 8 The following serves as an introduction to \CFA. 9 \CFA is a layer over C, is transpiled\footnote{Source to source translator.} to C, and is largely considered to be an extension of C. 10 Beyond C, it adds productivity features, extended libraries, an advanced type system, and many control-flow/concurrency constructions.11 However, \CFA stays true to the C programming style, with most code revolving around @struct@'s and routines, and respects the same rules as C. 12 \CFA is not object oriented as it has no notion of @this@ (receiver) and no structures with methods, but supports some object oriented ideas including constructors, destructors, and limited containment inheritance.8 The following serves as an introduction to \CFA. 9 \CFA is a layer over C, is transpiled\footnote{Source to source translator.} to C, and is largely considered to be an extension of C. 10 Beyond C, it adds productivity features, extended libraries, an advanced type-system, and many control-flow/concurrency constructions. 11 However, \CFA stays true to the C programming style, with most code revolving around @struct@'s and routines, and respects the same rules as C. 12 \CFA is not object oriented as it has no notion of @this@ (receiver) and no structures with methods, but supports some object oriented ideas including constructors, destructors, and limited nominal inheritance. 13 13 While \CFA is rich with interesting features, only the subset pertinent to this work is discussed. 14 14 15 15 \section{References} 16 References in \CFA are similar to references in \CC; however \CFA references are rebindable, and support multi-level referencing.17 References in \CFA are a layer of syntactic sugar over pointers to reduce the number of ref/deref operations needed with pointer usage. 16 References in \CFA are similar to references in \CC; however \CFA references are \emph{rebindable}, and support multi-level referencing. 17 References in \CFA are a layer of syntactic sugar over pointers to reduce the number of ref/deref operations needed with pointer usage. 18 18 Another difference is the use of @0p@ instead of C's @NULL@ or \CC's @nullptr@. 19 Examples of references are shown in \VRef[Listing]{l:cfa_ref}. 19 Examples of references are shown in \VRef[Listing]{l:cfa_ref}. 20 20 21 21 \begin{cfa}[caption={Example of \CFA references},label={l:cfa_ref}] … … 37 37 38 38 \section{Overloading}\label{s:Overloading} 39 \CFA routines can be overloaded on parameter type, number of parameters, and \emph{return type}. 40 Variables can also be overloaded on type, meaning that two variables can have the same name so long as they have different types. 39 \CFA routines can be overloaded on parameter type, number of parameters, and \emph{return type}. 40 Variables can also be overloaded on type, meaning that two variables can have the same name so long as they have different types. 41 41 A routine or variable is disambiguated at each usage site via its type and surrounding expression context. 42 A cast is used to disambiguate any conflicting usage. 43 Examples of overloading are shown in \VRef[Listing]{l:cfa_overload}. 42 A cast is used to disambiguate any conflicting usage. 43 Examples of overloading are shown in \VRef[Listing]{l:cfa_overload}. 44 44 45 45 \begin{cfa}[caption={Example of \CFA overloading},label={l:cfa_overload}] … … 60 60 61 61 62 \section{ WithStatement}62 \section{\lstinline{with} Statement} 63 63 The \CFA @with@ statement is for exposing fields of an aggregate type within a scope, allowing field names without qualification. 64 This feature is also implemented in Pascal~\cite{Pascal}. 65 It can exist as a stand-alone statement or wrap a routine body to expose aggregate fields. 66 Examples of the @with@ statement are shown in \VRef[Listing]{l:cfa_with}. 64 This feature is also implemented in Pascal~\cite{Pascal}. 65 It can exist as a stand-alone statement or wrap a routine body to expose aggregate fields. 66 Examples of the @with@ statement are shown in \VRef[Listing]{l:cfa_with}. 67 67 68 68 \begin{cfa}[caption={Example of \CFA \lstinline{with} statement},label={l:cfa_with}] … … 83 83 84 84 \section{Operators} 85 Operators can be overloaded in \CFA with operator routines. 85 Operators can be overloaded in \CFA with operator routines. 86 86 Operators in \CFA are named using an operator symbol and '@?@' to represent operands. 87 Examples of \CFA operators are shown in \VRef[Listing]{l:cfa_operate}. 87 Examples of \CFA operators are shown in \VRef[Listing]{l:cfa_operate}. 88 88 89 89 \begin{cfa}[caption={Example of \CFA operators},label={l:cfa_operate}] … … 102 102 103 103 \section{Constructors and Destructors} 104 Constructors and destructors in \CFA are special operator routines used for creation and destruction of objects. 105 The default constructor and destructor for a type are called implicitly upon creation and deletion, respectively. 106 Examples of \CFA constructors and destructors are shown in \VRef[Listing]{l:cfa_ctor}. 104 Constructors and destructors in \CFA are special operator routines used for creation and destruction of objects. 105 The default constructor and destructor for a type are called implicitly upon creation and deletion, respectively. 106 Examples of \CFA constructors and destructors are shown in \VRef[Listing]{l:cfa_ctor}. 107 107 108 108 \begin{cfa}[caption={Example of \CFA constructors and destructors},label={l:cfa_ctor}] … … 128 128 \section{Polymorphism}\label{s:poly} 129 129 C supports limited polymorphism, often requiring users to implement polymorphism using a @void *@ (type erasure) approach. 130 \CFA extends C with generalized overloading polymorphism (see \VRef{s:Overloading}), as well as, parametric polymorphism and nominal inheritance.130 \CFA extends C with generalized overloading polymorphism (see \VRef{s:Overloading}), as well as, parametric polymorphism and limited nominal inheritance. 131 131 132 132 \subsection{Parametric Polymorphism} 133 \CFA provides parametric polymorphism in the form of @forall@, and @trait@s. 134 A @forall@ takes in a set of types and a list of constraints. 135 The declarations that follow the @forall@ are parameterized over the types listed that satisfy the constraints. 136 A list of @forall@ constraints can be refactored into a named @trait@ and reused in @forall@s. 137 Examples of \CFA parametric polymorphism are shown in \VRef[Listing]{l:cfa_poly}. 133 \CFA provides parametric polymorphism in the form of @forall@, and @trait@s. 134 A @forall@ takes in a set of types and a list of constraints. 135 The declarations that follow the @forall@ are parameterized over the types listed that satisfy the constraints. 136 A list of @forall@ constraints can be refactored into a named @trait@ and reused in @forall@s. 137 Examples of \CFA parametric polymorphism are shown in \VRef[Listing]{l:cfa_poly}. 138 138 139 139 \begin{cfa}[caption={Example of \CFA parametric polymorphism},label={l:cfa_poly}] … … 180 180 181 181 \subsection{Inheritance} 182 Inheritance in \CFA is taken from Plan-9 C's containment inheritance.183 In \CFA, @struct@s can @inline@ another struct type to gain its fields and masquerade as that type. 184 Examples of \CFA containment inheritance are shown in \VRef[Listing]{l:cfa_inherit}.185 186 \begin{cfa}[caption={Example of \CFA containmentinheritance},label={l:cfa_inherit}]182 Inheritance in \CFA is taken from Plan-9 C's nominal inheritance. 183 In \CFA, @struct@s can @inline@ another struct type to gain its fields and masquerade as that type. 184 Examples of \CFA nominal inheritance are shown in \VRef[Listing]{l:cfa_inherit}. 185 186 \begin{cfa}[caption={Example of \CFA nominal inheritance},label={l:cfa_inherit}] 187 187 struct one_d { double x; }; 188 struct two_d { 188 struct two_d { 189 189 @inline@ one_d; 190 190 double y; 191 191 }; 192 struct three_d { 192 struct three_d { 193 193 @inline@ two_d; 194 194 double z; -
doc/theses/colby_parsons_MMAth/text/actors.tex
r3a513d89 r044ae62 673 673 674 674 \section{Performance}\label{s:actor_perf} 675 \CAP{I will update the figures to have the larger font size and different line markers once we start editing this chapter.} 675 676 The performance of \CFA's actor system is tested using a suite of microbenchmarks, and compared with other actor systems. 676 677 Most of the benchmarks are the same as those presented in \ref{}, with a few additions. -
doc/theses/colby_parsons_MMAth/text/channels.tex
r3a513d89 r044ae62 5 5 % ====================================================================== 6 6 7 Channels are a concurrent-language feature used to perform \Newterm{message-passing concurrency}: a model of concurrency where threads communicate by sending (mostly nonblocking) data as messages and synchronizing by receiving (blocking) sent data.8 This model is an alternative to shared-memory concurrency, where threads can communicate directly by changing shared state.9 7 Most modern concurrent programming languages do not subscribe to just one style of communication among threads and provide features that support multiple approaches. 8 Channels are a concurrent-language feature used to perform \Newterm{message-passing concurrency}: a model of concurrency where threads communicate by sending data as messages (mostly non\-blocking) and synchronizing by receiving sent messages (blocking). 9 This model is an alternative to shared-memory concurrency, where threads communicate directly by changing shared state. 10 10 11 11 Channels were first introduced by Kahn~\cite{Kahn74} and extended by Hoare~\cite{Hoare78} (CSP). … … 13 13 Both languages are highly restrictive. 14 14 Kahn's language restricts a reading process to only wait for data on a single channel at a time and different writing processes cannot send data on the same channel. 15 Hoare's language restricts ... 16 Channels as a programming language feature has been popularized in recent years due to the language Go, which encourages the use of channels as its fundamental concurrent feature. 17 Go's restrictions are ... 18 \CFA channels do not have these restrictions. 15 Hoare's language restricts both the sender and receiver to explicitly name the process that is the destination of a channel send or the source of a channel receive. 16 These channel semantics remove the ability to have an anonymous sender or receiver. 17 Additionally all channel operations in CSP are synchronous (no buffering). 18 Advanced channels as a programming language feature has been popularized in recent years by the language Go~\cite{Go}, which encourages the use of channels as its fundamental concurrent feature. 19 It was the popularity of Go channels that lead to their implemention in \CFA. 20 Neither Go nor \CFA channels have the restrictions of the early channel-based concurrent systems. 19 21 20 22 \section{Producer-Consumer Problem} 21 Most channels in modern programming languages are built on top of a shared memory buffer. 22 While it is possible to create a channel that contains an unbounded buffer, most implementations opt to only support a fixed size channel, where the size is given at the time of channel creation. 23 This turns the implementation of a channel into the producer-consumer problem. 24 The producer-consumer problem, also known as the bounded buffer problem, was introduced by Dijkstra in his book Cooperating Sequential Processes\cite{Dijkstra65}. 25 In the problem threads interact with the buffer in two ways, either consuming values by removing them from the buffer, or producing values and inserting them in the buffer. 26 The buffer needs to be protected from concurrent access since each item in the buffer should only be produced and consumed once. 27 Additionally, a consumer can only remove from a non-empty buffer and a producer can only insert into a non-full buffer. 23 A channel is an abstraction for a shared-memory buffer, which turns the implementation of a channel into the producer-consumer problem. 24 The producer-consumer problem, also known as the bounded-buffer problem, was introduced by Dijkstra~\cite[\S~4.1]{Dijkstra65}. 25 In the problem, threads interact with a buffer in two ways: producing threads insert values into the buffer and consuming threads remove values from the buffer. 26 In general, a buffer needs protection to ensure a producer only inserts into a non-full buffer and a consumer only removes from a non-empty buffer (synchronization). 27 As well, a buffer needs protection from concurrent access by multiple producers or consumers attempting to insert or remove simultaneously (MX). 28 29 \section{Channel Size}\label{s:ChannelSize} 30 Channels come in three flavours of buffers: 31 \begin{enumerate} 32 \item 33 Zero sized implies the communication is synchronous, \ie the producer must wait for the consumer to arrive or vice versa for a value to be communicated. 34 \item 35 Fixed sized (bounded) implies the communication is asynchronous, \ie the producer can proceed up to the buffer size and vice versa for the consumer with respect to removal. 36 \item 37 Infinite sized (unbounded) implies the communication is asynchronous, \ie the producer never waits but the consumer waits when the buffer is empty. 38 Since memory is finite, all unbounded buffers are ultimately bounded; 39 this restriction must be part of its implementation. 40 \end{enumerate} 41 42 In general, the order values are processed by the consumer does not affect the correctness of the producer-consumer problem. 43 For example, the buffer can be LIFO, FIFO, or prioritized with respect to insertion and removal. 44 However, like MX, a buffer should ensure every value is eventually removed after some reasonable bounded time (no long-term starvation). 45 The simplest way to prevent starvation is to implement the buffer as a queue, either with a cyclic array or linked nodes. 28 46 29 47 \section{First-Come First-Served} 30 The channel implementations that will be discussed are \gls{fcfs}. 31 This term was defined by Lamport~\cite{Lamport74}. 48 As pointed out, a bounded buffer requires MX among multiple producers or consumers. 49 This MX should be fair among threads, independent of the FIFO buffer being fair among values. 50 Fairness among threads is called \gls{fcfs} and was defined by Lamport~\cite[p.~454]{Lamport74}. 32 51 \gls{fcfs} is defined in relation to a doorway~\cite[p.~330]{Lamport86II}, which is the point at which an ordering among threads can be established. 33 Given this doorway, a critical section is said to be \gls{fcfs}, if threads access the shared resource in the order they proceed through the doorway. 34 \gls{fcfs} is a fairness property which prevents unequal access to the shared resource and prevents starvation, however it can come at a cost. 35 Implementing an algorithm with \gls{fcfs} can lead to double blocking, where entering threads may need to block to allow other threads to proceed first, resulting in blocking both inside and outside the doorway. 36 As such algorithms that are not \gls{fcfs} may be more performant but that performance comes with the downside of likely introducing starvation and unfairness. 52 Given this doorway, a CS is said to be \gls{fcfs}, if threads access the shared resource in the order they proceed through the doorway. 53 A consequence of \gls{fcfs} execution is the elimination of \Newterm{barging}, where barging means a thread arrives at a CS with waiting threads, and the MX protecting the CS allows the arriving thread to enter the CS ahead of one or more of the waiting threads. 54 55 \gls{fcfs} is a fairness property that prevents unequal access to the shared resource and prevents starvation, however it comes at a cost. 56 Implementing an algorithm with \gls{fcfs} can lead to \Newterm{double blocking}, where arriving threads block outside the doorway waiting for a thread in the lock entry-protocol and inside the doorway waiting for a thread in the CS. 57 An analogue is boarding an airplane: first you wait to get through security to the departure gates (short term), and then wait again at the departure gate for the airplane (long term). 58 As such, algorithms that are not \gls{fcfs} (barging) can be more performant by skipping the wait for the CS and entering directly; 59 however, this performance gain comes by introducing unfairness with possible starvation for waiting threads. 37 60 38 61 \section{Channel Implementation} 39 The channel implementation in \CFA is a near carbon copy of the Go implementation. 40 Experimentation was conducted that varied the producer-consumer problem algorithm and lock type used inside the channel. 41 With the exception of non-\gls{fcfs} algorithms, no algorithm or lock usage in the channel implementation was found to be consistently more performant that Go's choice of algorithm and lock implementation. 62 Currently, only the Go programming language provides user-level threading where the primary communication mechanism is channels. 63 Experiments were conducted that varied the producer-consumer problem algorithm and lock type used inside the channel. 64 With the exception of non-\gls{fcfs} or non-FIFO algorithms, no algorithm or lock usage in the channel implementation was found to be consistently more performant that Go's choice of algorithm and lock implementation. 65 Performance of channels can be improved by sharding the underlying buffer \cite{Dice11}. 66 In doing so the FIFO property is lost, which is undesireable for user-facing channels. 67 Therefore, the low-level channel implementation in \CFA is largely copied from the Go implementation, but adapted to the \CFA type and runtime systems. 42 68 As such the research contributions added by \CFA's channel implementation lie in the realm of safety and productivity features. 69 70 The Go channel implementation utilitizes cooperation between threads to achieve good performance~\cite{go:chan}. 71 The cooperation between threads only occurs when producers or consumers need to block due to the buffer being full or empty. 72 In these cases the blocking thread stores their relevant data in a shared location and the signalling thread will complete their operation before waking them. 73 This helps improve performance in a few ways. 74 First, each thread interacting with the channel with only acquire and release the internal channel lock exactly once. 75 This decreases contention on the internal lock, as only entering threads will compete for the lock since signalled threads never reacquire the lock. 76 The other advantage of the cooperation approach is that it eliminates the potential bottleneck of waiting for signalled threads. 77 The property of acquiring/releasing the lock only once can be achieved without cooperation by \Newterm{baton passing} the lock. 78 Baton passing is when one thread acquires a lock but does not release it, and instead signals a thread inside the critical section conceptually "passing" the mutual exclusion to the signalled thread. 79 While baton passing is useful in some algorithms, it results in worse performance than the cooperation approach in channel implementations since all entering threads then need to wait for the blocked thread to reach the front of the ready queue and run before other operations on the channel can proceed. 80 81 In this work, all channel sizes \see{Sections~\ref{s:ChannelSize}} are implemented with bounded buffers. 82 However, only non-zero-sized buffers are analysed because of their complexity and higher usage. 43 83 44 84 \section{Safety and Productivity} … … 47 87 48 88 \begin{itemize} 49 \item Toggle-able statistic collection on channel behaviour that counts channel operations, and the number of the operations that block. 50 Tracking blocking operations helps users tune their channel size or channel usage when the channel is used for buffering, where the aim is to have as few blocking operations as possible. 51 \item Deadlock detection on deallocation of the channel. 52 If any threads are blocked inside the channel when it terminates it is detected and informs the user, as this would cause a deadlock. 53 \item A \code{flush} routine that delivers copies of an element to all waiting consumers, flushing the buffer. 54 Programmers can use this to easily to broadcast data to multiple consumers. 55 Additionally, the \code{flush} routine is more performant then looping around the \code{insert} operation since it can deliver the elements without having to reacquire mutual exclusion for each element sent. 89 \item Toggle-able statistic collection on channel behaviour that count channel and blocking operations. 90 Tracking blocking operations helps illustrate usage for tuning the channel size, where the aim is to reduce blocking. 91 92 \item Deadlock detection on channel deallocation. 93 If threads are blocked inside a channel when it terminates, this case is detected and the user is informed, as this can cause a deadlock. 94 95 \item A @flush@ routine that delivers copies of an element to all waiting consumers, flushing the buffer. 96 Programmers use this mechanism to broadcast a sentinel value to multiple consumers. 97 Additionally, the @flush@ routine is more performant then looping around the @insert@ operation since it can deliver the elements without having to reacquire mutual exclusion for each element sent. 56 98 \end{itemize} 57 99 58 The other safety and productivity feature of \CFA channels deals with concurrent termination. 100 \subsection{Toggle-able Statistics} 101 As discussed, a channel is a concurrent layer over a bounded buffer. 102 To achieve efficient buffering users should aim for as few blocking operations on a channel as possible. 103 Often to achieve this users may change the buffer size, shard a channel into multiple channels, or tweak the number of producer and consumer threads. 104 Fo users to be able to make informed decisions when tuning channel usage, toggle-able channel statistics are provided. 105 The statistics are toggled at compile time via the @CHAN_STATS@ macro to ensure that they are entirely elided when not used. 106 When statistics are turned on, four counters are maintained per channel, two for producers and two for consumers. 107 The two counters per type of operation track the number of blocking operations and total operations. 108 In the channel destructor the counters are printed out aggregated and also per type of operation. 109 An example use case of the counters follows. 110 A user is buffering information between producer and consumer threads and wants to analyze channel performance. 111 Via the statistics they see that producers block for a large percentage of their operations while consumers do not block often. 112 They then can use this information to adjust their number of producers/consumers or channel size to achieve a larger percentage of non-blocking producer operations, thus increasing their channel throughput. 113 114 \subsection{Deadlock Detection} 115 The deadlock detection in the \CFA channels is fairly basic. 116 It only detects the case where threads are blocked on the channel during deallocation. 117 This case is guaranteed to deadlock since the list holding the blocked thread is internal to the channel and will be deallocated. 118 If a user maintained a separate reference to a thread and unparked it outside the channel they could avoid the deadlock, but would run into other runtime errors since the thread would access channel data after waking that is now deallocated. 119 More robust deadlock detection surrounding channel usage would have to be implemented separate from the channel implementation since it would require knowledge about the threading system and other channel/thread state. 120 121 \subsection{Program Shutdown} 59 122 Terminating concurrent programs is often one of the most difficult parts of writing concurrent code, particularly if graceful termination is needed. 60 The difficulty of graceful termination often arises from the usage of synchronization primitives whichneed to be handled carefully during shutdown.123 The difficulty of graceful termination often arises from the usage of synchronization primitives that need to be handled carefully during shutdown. 61 124 It is easy to deadlock during termination if threads are left behind on synchronization primitives. 62 125 Additionally, most synchronization primitives are prone to \gls{toctou} issues where there is race between one thread checking the state of a concurrent object and another thread changing the state. 63 126 \gls{toctou} issues with synchronization primitives often involve a race between one thread checking the primitive for blocked threads and another thread blocking on it. 64 Channels are a particularly hard synchronization primitive to terminate since both sending and receiving offa channel can block.127 Channels are a particularly hard synchronization primitive to terminate since both sending and receiving to/from a channel can block. 65 128 Thus, improperly handled \gls{toctou} issues with channels often result in deadlocks as threads trying to perform the termination may end up unexpectedly blocking in their attempt to help other threads exit the system. 66 129 67 % C_TODO: add reference to select chapter, add citation to go channels info 68 Go channels provide a set of tools to help with concurrent shutdown. 69 Channels in Go have a \code{close} operation and a \code{select} statement that both can be used to help threads terminate. 70 The \code{select} statement will be discussed in \ref{}, where \CFA's \code{waituntil} statement will be compared with the Go \code{select} statement. 71 The \code{close} operation on a channel in Go changes the state of the channel. 72 When a channel is closed, sends to the channel will panic and additional calls to \code{close} will panic. 73 Receives are handled differently where receivers will never block on a closed channel and will continue to remove elements from the channel. 74 Once a channel is empty, receivers can continue to remove elements, but will receive the zero-value version of the element type. 75 To aid in avoiding unwanted zero-value elements, Go provides the ability to iterate over a closed channel to remove the remaining elements. 76 These design choices for Go channels enforce a specific interaction style with channels during termination, where careful thought is needed to ensure that additional \code{close} calls don't occur and that no sends occur after channels are closed. 130 \paragraph{Go channels} provide a set of tools to help with concurrent shutdown~\cite{go:chan}. 131 Channels in Go have a @close@ operation and a \Go{select} statement that both can be used to help threads terminate. 132 The \Go{select} statement is discussed in \ref{s:waituntil}, where \CFA's @waituntil@ statement is compared with the Go \Go{select} statement. 133 134 The @close@ operation on a channel in Go changes the state of the channel. 135 When a channel is closed, sends to the channel panic along with additional calls to @close@. 136 Receives are handled differently. 137 Receivers (consumers) never block on a closed channel and continue to remove elements from the channel. 138 Once a channel is empty, receivers can continue to remove elements, but receive the zero-value version of the element type. 139 To avoid unwanted zero-value elements, Go provides the ability to iterate over a closed channel to remove the remaining elements. 140 These Go design choices enforce a specific interaction style with channels during termination: careful thought is needed to ensure additional @close@ calls do not occur and no sends occur after a channel is closed. 77 141 These design choices fit Go's paradigm of error management, where users are expected to explicitly check for errors, rather than letting errors occur and catching them. 78 If errors need to occur in Go, return codes are used to pass error information where they are needed.79 Note that panics in Go can be caught, but it is not considered anidiomatic way to write Go programs.142 If errors need to occur in Go, return codes are used to pass error information up call levels. 143 Note, panics in Go can be caught, but it is not the idiomatic way to write Go programs. 80 144 81 145 While Go's channel closing semantics are powerful enough to perform any concurrent termination needed by a program, their lack of ease of use leaves much to be desired. 82 Since both closing and sending panic , once a channel is closed, a user often has to synchronize the senders to a channelbefore the channel can be closed to avoid panics.83 However, in doing so it renders the \code{close} operation nearly useless, as the only utilities it provides are the ability to ensure that receivers no longer block on the channel, and willreceive zero-valued elements.84 This can be useful if the zero-typed element is recognized as a sentinel value, but if another sentinel value is preferred, then \code{close} only provides itsnon-blocking feature.85 To avoid \gls{toctou} issues during shutdown, a busy wait with a \ code{select} statement is often used to add or remove elements from a channel.146 Since both closing and sending panic once a channel is closed, a user often has to synchronize the senders (producers) before the channel can be closed to avoid panics. 147 However, in doing so it renders the @close@ operation nearly useless, as the only utilities it provides are the ability to ensure receivers no longer block on the channel and receive zero-valued elements. 148 This functionality is only useful if the zero-typed element is recognized as a sentinel value, but if another sentinel value is necessary, then @close@ only provides the non-blocking feature. 149 To avoid \gls{toctou} issues during shutdown, a busy wait with a \Go{select} statement is often used to add or remove elements from a channel. 86 150 Due to Go's asymmetric approach to channel shutdown, separate synchronization between producers and consumers of a channel has to occur during shutdown. 87 151 88 In \CFA, exception handling is an encouraged paradigm and has full language support \cite{Beach21}. 89 As such \CFA uses an exception based approach to channel shutdown that is symmetric for both producers and consumers, and supports graceful shutdown.Exceptions in \CFA support both termination and resumption.Termination exceptions operate in the same way as exceptions seen in many popular programming languages such as \CC, Python and Java. 90 Resumption exceptions are a style of exception that when caught run the corresponding catch block in the same way that termination exceptions do. 91 The difference between the exception handling mechanisms arises after the exception is handled. 92 In termination handling, the control flow continues into the code following the catch after the exception is handled. 93 In resumption handling, the control flow returns to the site of the \code{throw}, allowing the control to continue where it left off. 94 Note that in resumption, since control can return to the point of error propagation, the stack is not unwound during resumption propagation. 95 In \CFA if a resumption is not handled, it is reraised as a termination. 96 This mechanism can be used to create a flexible and robust termination system for channels. 97 98 When a channel in \CFA is closed, all subsequent calls to the channel will throw a resumption exception at the caller. 99 If the resumption is handled, then the caller will proceed to attempt to complete their operation. 100 If the resumption is not handled it is then rethrown as a termination exception. 101 Or, if the resumption is handled, but the subsequent attempt at an operation would block, a termination exception is thrown. 102 These termination exceptions allow for non-local transfer that can be used to great effect to eagerly and gracefully shut down a thread. 152 \paragraph{\CFA channels} have access to an extensive exception handling mechanism~\cite{Beach21}. 153 As such \CFA uses an exception-based approach to channel shutdown that is symmetric for both producers and consumers, and supports graceful shutdown. 154 155 Exceptions in \CFA support both termination and resumption. 156 \Newterm{Termination exception}s perform a dynamic call that unwinds the stack preventing the exception handler from returning to the raise point, such as in \CC, Python and Java. 157 \Newterm{Resumption exception}s perform a dynamic call that does not unwind the stack allowing the exception handler to return to the raise point. 158 In \CFA, if a resumption exception is not handled, it is reraised as a termination exception. 159 This mechanism is used to create a flexible and robust termination system for channels. 160 161 When a channel in \CFA is closed, all subsequent calls to the channel raise a resumption exception at the caller. 162 If the resumption is handled, the caller attempts to complete the channel operation. 163 However, if channel operation would block, a termination exception is thrown. 164 If the resumption is not handled, the exception is rethrown as a termination. 165 These termination exceptions allow for non-local transfer that is used to great effect to eagerly and gracefully shut down a thread. 103 166 When a channel is closed, if there are any blocked producers or consumers inside the channel, they are woken up and also have a resumption thrown at them. 104 The resumption exception, \code{channel_closed}, has a couple fields to aid in handling the exception.167 The resumption exception, @channel_closed@, has a couple fields to aid in handling the exception. 105 168 The exception contains a pointer to the channel it was thrown from, and a pointer to an element. 106 169 In exceptions thrown from remove the element pointer will be null. … … 112 175 This should not be an issue, since termination is rarely an fast-path of an application and ensuring that termination can be implemented correctly with ease is the aim of the exception approach. 113 176 114 To highlight the differences between \CFA's and Go's close semantics, an example program is presented. 115 The program is a barrier implemented using two channels shown in Listings~\ref{l:cfa_chan_bar} and \ref{l:go_chan_bar}. 177 \section{\CFA / Go channel Examples} 178 To highlight the differences between \CFA's and Go's close semantics, three examples will be presented. 179 The first example is a simple shutdown case, where there are producer threads and consumer threads operating on a channel for a fixed duration. 180 Once the duration ends, producers and consumers terminate without worrying about any leftover values in the channel. 181 The second example extends the first example by requiring the channel to be empty upon shutdown. 182 Both the first and second example are shown in Figure~\ref{f:ChannelTermination}. 183 184 185 First the Go solutions to these examples shown in Figure~\ref{l:go_chan_term} are discussed. 186 Since some of the elements being passed through the channel are zero-valued, closing the channel in Go does not aid in communicating shutdown. 187 Instead, a different mechanism to communicate with the consumers and producers needs to be used. 188 This use of an additional flag or communication method is common in Go channel shutdown code, since to avoid panics on a channel, the shutdown of a channel often has to be communicated with threads before it occurs. 189 In this example, a flag is used to communicate with producers and another flag is used for consumers. 190 Producers and consumers need separate avenues of communication both so that producers terminate before the channel is closed to avoid panicking, and to avoid the case where all the consumers terminate first, which can result in a deadlock for producers if the channel is full. 191 The producer flag is set first, then after producers terminate the consumer flag is set and the channel is closed. 192 In the second example where all values need to be consumed, the main thread iterates over the closed channel to process any remaining values. 193 194 195 In the \CFA solutions in Figure~\ref{l:cfa_chan_term}, shutdown is communicated directly to both producers and consumers via the @close@ call. 196 In the first example where all values do not need to be consumed, both producers and consumers do not handle the resumption and finish once they receive the termination exception. 197 The second \CFA example where all values must be consumed highlights how resumption is used with channel shutdown. 198 The @Producer@ thread-main knows to stop producing when the @insert@ call on a closed channel raises exception @channel_closed@. 199 The @Consumer@ thread-main knows to stop consuming after all elements of a closed channel are removed and the call to @remove@ would block. 200 Hence, the consumer knows the moment the channel closes because a resumption exception is raised, caught, and ignored, and then control returns to @remove@ to return another item from the buffer. 201 Only when the buffer is drained and the call to @remove@ would block, a termination exception is raised to stop consuming. 202 The \CFA semantics allow users to communicate channel shutdown directly through the channel, without having to share extra state between threads. 203 Additionally, when the channel needs to be drained, \CFA provides users with easy options for processing the leftover channel values in the main thread or in the consumer threads. 204 If one wishes to consume the leftover values in the consumer threads in Go, extra synchronization between the main thread and the consumer threads is needed. 205 206 \begin{figure} 207 \centering 208 209 \begin{lrbox}{\myboxA} 210 \begin{cfa}[aboveskip=0pt,belowskip=0pt] 211 channel( size_t ) Channel{ ChannelSize }; 212 213 thread Consumer {}; 214 void main( Consumer & this ) { 215 try { 216 for ( ;; ) 217 remove( Channel ); 218 @} catchResume( channel_closed * ) { @ 219 // handled resume => consume from chan 220 } catch( channel_closed * ) { 221 // empty or unhandled resume 222 } 223 } 224 225 thread Producer {}; 226 void main( Producer & this ) { 227 size_t count = 0; 228 try { 229 for ( ;; ) 230 insert( Channel, count++ ); 231 } catch ( channel_closed * ) { 232 // unhandled resume or full 233 } 234 } 235 236 int main( int argc, char * argv[] ) { 237 Consumer c[Consumers]; 238 Producer p[Producers]; 239 sleep(Duration`s); 240 close( Channel ); 241 return 0; 242 } 243 \end{cfa} 244 \end{lrbox} 245 246 \begin{lrbox}{\myboxB} 247 \begin{cfa}[aboveskip=0pt,belowskip=0pt] 248 var cons_done, prod_done bool = false, false; 249 var prodJoin chan int = make(chan int, Producers) 250 var consJoin chan int = make(chan int, Consumers) 251 252 func consumer( channel chan uint64 ) { 253 for { 254 if cons_done { break } 255 <-channel 256 } 257 consJoin <- 0 // synch with main thd 258 } 259 260 func producer( channel chan uint64 ) { 261 var count uint64 = 0 262 for { 263 if prod_done { break } 264 channel <- count++ 265 } 266 prodJoin <- 0 // synch with main thd 267 } 268 269 func main() { 270 channel = make(chan uint64, ChannelSize) 271 for j := 0; j < Consumers; j++ { 272 go consumer( channel ) 273 } 274 for j := 0; j < Producers; j++ { 275 go producer( channel ) 276 } 277 time.Sleep(time.Second * Duration) 278 prod_done = true 279 for j := 0; j < Producers ; j++ { 280 <-prodJoin // wait for prods 281 } 282 cons_done = true 283 close(channel) // ensure no cons deadlock 284 @for elem := range channel { @ 285 // process leftover values 286 @}@ 287 for j := 0; j < Consumers; j++{ 288 <-consJoin // wait for cons 289 } 290 } 291 \end{cfa} 292 \end{lrbox} 293 294 \subfloat[\CFA style]{\label{l:cfa_chan_term}\usebox\myboxA} 295 \hspace*{3pt} 296 \vrule 297 \hspace*{3pt} 298 \subfloat[Go style]{\label{l:go_chan_term}\usebox\myboxB} 299 \caption{Channel Termination Examples 1 and 2. Code specific to example 2 is highlighted.} 300 \label{f:ChannelTermination} 301 \end{figure} 302 303 The final shutdown example uses channels to implement a barrier. 304 It is shown in Figure~\ref{f:ChannelBarrierTermination}. 305 The problem of implementing a barrier is chosen since threads are both producers and consumers on the barrier-internal channels, which removes the ability to easily synchronize producers before consumers during shutdown. 306 As such, while the shutdown details will be discussed with this problem in mind, they are also applicable to other problems taht have individual threads both producing and consuming from channels. 116 307 Both of these examples are implemented using \CFA syntax so that they can be easily compared. 117 Listing~\ref{l:go_chan_bar} uses go-style channel close semantics and Listing~\ref{l:cfa_chan_bar} uses \CFAclose semantics.118 In this problem it is infeasible to use the Go \code{close} call since all tasks are both potentially producers and consumers, causing panics on close to be unavoidable.119 As such in Listing~\ref{l:go_chan_bar} to implement a flush routine for the buffer, a sentinel value of $-1$has to be used to indicate to threads that they need to leave the barrier.308 Figure~\ref{l:cfa_chan_bar} uses \CFA-style channel close semantics and Figure~\ref{l:go_chan_bar} uses Go-style close semantics. 309 In this example it is infeasible to use the Go @close@ call since all threads are both potentially producers and consumers, causing panics on close to be unavoidable without complex synchronization. 310 As such in Figure~\ref{l:go_chan_bar} to implement a flush routine for the buffer, a sentinel value of @-1@ has to be used to indicate to threads that they need to leave the barrier. 120 311 This sentinel value has to be checked at two points. 121 Furthermore, an additional flag \code{done}is needed to communicate to threads once they have left the barrier that they are done.122 This use of an additional flag or communication method is common in Go channel shutdown code, since to avoid panics on a channel, the shutdown of a channel often has to be communicated with threads before it occurs. 312 Furthermore, an additional flag @done@ is needed to communicate to threads once they have left the barrier that they are done. 313 123 314 In the \CFA version~\ref{l:cfa_chan_bar}, the barrier shutdown results in an exception being thrown at threads operating on it, which informs the threads that they must terminate. 124 315 This avoids the need to use a separate communication method other than the barrier, and avoids extra conditional checks on the fast path of the barrier implementation. 125 316 Also note that in the Go version~\ref{l:go_chan_bar}, the size of the barrier channels has to be larger than in the \CFA version to ensure that the main thread does not block when attempting to clear the barrier. 126 317 127 \begin{cfa}[caption={\CFA channel barrier termination},label={l:cfa_chan_bar}] 318 \begin{figure} 319 \centering 320 321 \begin{lrbox}{\myboxA} 322 \begin{cfa}[aboveskip=0pt,belowskip=0pt] 128 323 struct barrier { 129 channel( int ) barWait; 130 channel( int ) entryWait; 324 channel( int ) barWait, entryWait; 131 325 int size; 132 } 133 void ?{}(barrier & this, int size) with(this) { 134 barWait{size}; 135 entryWait{size}; 326 }; 327 void ?{}( barrier & this, int size ) with(this) { 328 barWait{size}; entryWait{size}; 136 329 this.size = size; 137 for ( j; size ) 138 insert( *entryWait, j ); 139 } 140 330 for ( i; size ) 331 insert( entryWait, i ); 332 } 333 void wait( barrier & this ) with(this) { 334 int ticket = remove( entryWait ); 335 336 if ( ticket == size - 1 ) { 337 for ( i; size - 1 ) 338 insert( barWait, i ); 339 return; 340 } 341 ticket = remove( barWait ); 342 343 if ( size == 1 || ticket == size - 2 ) { // last ? 344 for ( i; size ) 345 insert( entryWait, i ); 346 } 347 } 141 348 void flush(barrier & this) with(this) { 142 close(barWait); 143 close(entryWait); 144 } 145 void wait(barrier & this) with(this) { 146 int ticket = remove( *entryWait ); 349 @close( barWait ); close( entryWait );@ 350 } 351 enum { Threads = 4 }; 352 barrier b{Threads}; 353 354 thread Thread {}; 355 void main( Thread & this ) { 356 @try {@ 357 for () 358 wait( b ); 359 @} catch ( channel_closed * ) {}@ 360 } 361 int main() { 362 Thread t[Threads]; 363 sleep(10`s); 364 365 flush( b ); 366 } // wait for threads to terminate 367 \end{cfa} 368 \end{lrbox} 369 370 \begin{lrbox}{\myboxB} 371 \begin{cfa}[aboveskip=0pt,belowskip=0pt] 372 struct barrier { 373 channel( int ) barWait, entryWait; 374 int size; 375 }; 376 void ?{}( barrier & this, int size ) with(this) { 377 barWait{size + 1}; entryWait{size + 1}; 378 this.size = size; 379 for ( i; size ) 380 insert( entryWait, i ); 381 } 382 void wait( barrier & this ) with(this) { 383 int ticket = remove( entryWait ); 384 @if ( ticket == -1 ) { insert( entryWait, -1 ); return; }@ 147 385 if ( ticket == size - 1 ) { 148 for ( j; size - 1 )149 insert( *barWait, j);386 for ( i; size - 1 ) 387 insert( barWait, i ); 150 388 return; 151 389 } 152 ticket = remove( *barWait ); 153 154 // last one out 155 if ( size == 1 || ticket == size - 2 ) { 156 for ( j; size ) 157 insert( *entryWait, j ); 158 } 159 } 160 barrier b{Tasks}; 161 162 // thread main 163 void main(Task & this) { 164 try { 165 for ( ;; ) { 166 wait( b ); 167 } 168 } catch ( channel_closed * e ) {} 169 } 170 390 ticket = remove( barWait ); 391 @if ( ticket == -1 ) { insert( barWait, -1 ); return; }@ 392 if ( size == 1 || ticket == size - 2 ) { // last ? 393 for ( i; size ) 394 insert( entryWait, i ); 395 } 396 } 397 void flush(barrier & this) with(this) { 398 @insert( entryWait, -1 ); insert( barWait, -1 );@ 399 } 400 enum { Threads = 4 }; 401 barrier b{Threads}; 402 @bool done = false;@ 403 thread Thread {}; 404 void main( Thread & this ) { 405 for () { 406 @if ( done ) break;@ 407 wait( b ); 408 } 409 } 171 410 int main() { 172 { 173 Task t[Tasks]; 174 175 sleep(10`s); 176 flush( b ); 177 } // wait for tasks to terminate 178 return 0; 179 } 411 Thread t[Threads]; 412 sleep(10`s); 413 done = true; 414 flush( b ); 415 } // wait for threads to terminate 180 416 \end{cfa} 181 182 \begin{cfa}[caption={Go channel barrier termination},label={l:go_chan_bar}] 183 184 struct barrier { 185 channel( int ) barWait; 186 channel( int ) entryWait; 187 int size; 188 } 189 void ?{}(barrier & this, int size) with(this) { 190 barWait{size + 1}; 191 entryWait{size + 1}; 192 this.size = size; 193 for ( j; size ) 194 insert( *entryWait, j ); 195 } 196 197 void flush(barrier & this) with(this) { 198 insert( *entryWait, -1 ); 199 insert( *barWait, -1 ); 200 } 201 void wait(barrier & this) with(this) { 202 int ticket = remove( *entryWait ); 203 if ( ticket == -1 ) { 204 insert( *entryWait, -1 ); 205 return; 206 } 207 if ( ticket == size - 1 ) { 208 for ( j; size - 1 ) 209 insert( *barWait, j ); 210 return; 211 } 212 ticket = remove( *barWait ); 213 if ( ticket == -1 ) { 214 insert( *barWait, -1 ); 215 return; 216 } 217 218 // last one out 219 if ( size == 1 || ticket == size - 2 ) { 220 for ( j; size ) 221 insert( *entryWait, j ); 222 } 223 } 224 barrier b; 225 226 bool done = false; 227 // thread main 228 void main(Task & this) { 229 for ( ;; ) { 230 if ( done ) break; 231 wait( b ); 232 } 233 } 234 235 int main() { 236 { 237 Task t[Tasks]; 238 239 sleep(10`s); 240 done = true; 241 242 flush( b ); 243 } // wait for tasks to terminate 244 return 0; 245 } 246 \end{cfa} 247 248 In Listing~\ref{l:cfa_resume} an example of channel closing with resumption is used. 249 This program uses resumption in the \code{Consumer} thread main to ensure that all elements in the channel are removed before the consumer thread terminates. 250 The producer only has a \code{catch} so the moment it receives an exception it terminates, whereas the consumer will continue to remove from the closed channel via handling resumptions until the buffer is empty, which then throws a termination exception. 251 If the same program was implemented in Go it would require explicit synchronization with both producers and consumers by some mechanism outside the channel to ensure that all elements were removed before task termination. 252 253 \begin{cfa}[caption={\CFA channel resumption usage},label={l:cfa_resume}] 254 channel( int ) chan{ 128 }; 255 256 // Consumer thread main 257 void main(Consumer & this) { 258 size_t runs = 0; 259 try { 260 for ( ;; ) { 261 remove( chan ); 262 } 263 } catchResume ( channel_closed * e ) {} 264 catch ( channel_closed * e ) {} 265 } 266 267 // Producer thread main 268 void main(Producer & this) { 269 int j = 0; 270 try { 271 for ( ;;j++ ) { 272 insert( chan, j ); 273 } 274 } catch ( channel_closed * e ) {} 275 } 276 277 int main( int argc, char * argv[] ) { 278 { 279 Consumers c[4]; 280 Producer p[4]; 281 282 sleep(10`s); 283 284 for ( i; Channels ) 285 close( channels[i] ); 286 } 287 return 0; 288 } 289 \end{cfa} 417 \end{lrbox} 418 419 \subfloat[\CFA style]{\label{l:cfa_chan_bar}\usebox\myboxA} 420 \hspace*{3pt} 421 \vrule 422 \hspace*{3pt} 423 \subfloat[Go style]{\label{l:go_chan_bar}\usebox\myboxB} 424 \caption{Channel Barrier Termination} 425 \label{f:ChannelBarrierTermination} 426 \end{figure} 290 427 291 428 \section{Performance} 292 429 293 Given that the base implementation of the \CFA channels is very similar to the Go implementation, this section aims to show th at the performance of the two implementations are comparable.294 One microbenchmark is conducted to compare Go and \CFA.295 The benchmark is a ten second experiment where producers and consumers operate on a channel in parallel and throughput is measured.430 Given that the base implementation of the \CFA channels is very similar to the Go implementation, this section aims to show the performance of the two implementations are comparable. 431 The microbenchmark for the channel comparison is similar to Figure~\ref{f:ChannelTermination}, where the number of threads and processors is set from the command line. 432 The processors are divided equally between producers and consumers, with one producer or consumer owning each core. 296 433 The number of cores is varied to measure how throughput scales. 297 The cores are divided equally between producers and consumers, with one producer or consumer owning each core. 434 298 435 The results of the benchmark are shown in Figure~\ref{f:chanPerf}. 299 436 The performance of Go and \CFA channels on this microbenchmark is comparable. 300 Note, it is expected for the performance to decline as the number of cores increases as the channel operations all occur in a critical section so an increase in cores results in higher contention with no increase in parallelism. 301 437 Note, the performance should decline as the number of cores increases as the channel operations occur in a critical section, so increasing cores results in higher contention with no increase in parallelism. 302 438 303 439 \begin{figure} -
doc/theses/colby_parsons_MMAth/text/frontpgs.tex
r3a513d89 r044ae62 80 80 Concurrent programs are notoriously hard to program and even harder to debug. Furthermore concurrent programs must be performant, as the introduction of concurrency into a program is often done to achieve some form of speedup. 81 81 82 This thesis presents a suite of high-level concurrent-language features in the new programming language \CFA, all of which are implemented with the aim of improving the performance, productivity, and safety of concurrent programs. \CFA is a non object-oriented programming language that extends C. The foundation for concurrency in \CFA was laid by Thierry Delisle~\cite{Delisle18}, who implemented coroutines, user-level threads, and monitors. This thesis builds upon that work and introduces a suite of new concurrent features as its main contribution. The features include Go-like channels, mutex statements (similar to \CC scoped locks or Java synchronized statement), an actor system, and a Go-like select statement. The root ideas behind these features are not new, but the \CFA implementations extends the original ideas in performance, productivity, and safety. 82 This thesis presents a suite of high-level concurrent-language features in the new programming-language \CFA, all of which are implemented with the aim of improving the performance, productivity, and safety of concurrent programs. 83 \CFA is a non-object-oriented programming language that extends C. 84 The foundation for concurrency in \CFA was laid by Thierry Delisle~\cite{Delisle18}, who implemented coroutines, user-level threads, and monitors. 85 This thesis builds upon that work and introduces a suite of new concurrent features as its main contribution. 86 The features include a @mutex@ statement (similar to a \CC scoped lock or Java \lstinline[language=Java]{synchronized} statement), Go-like channels and \lstinline[language=Go]{select} statement, and an actor system. 87 The root ideas behind these features are not new, but the \CFA implementations extends the original ideas in performance, productivity, and safety. 83 88 84 89 \cleardoublepage -
doc/theses/colby_parsons_MMAth/text/intro.tex
r3a513d89 r044ae62 8 8 To seize the reins and write performant and safe concurrent code, high-level concurrent-language features are needed. 9 9 Like any other craftsmen, programmers are only as good as their tools, and concurrent tooling and features are no exception. 10 This thesis presents a set of concurrent features implemented in the new programming-language \CFA. 10 11 This thesis presents a suite of high-level concurrent-language features implemented in the new programming-language \CFA. 11 12 These features aim to improve the performance of concurrent programs, aid in writing safe programs, and assist user productivity by improving the ease of concurrent programming. 12 13 The groundwork for concurrent features in \CFA was implemented by Thierry Delisle~\cite{Delisle18}, who contributed the threading system, coroutines, monitors and other tools. 13 14 This thesis builds on top of that foundation by providing a suite of high-level concurrent features. 14 The se features include mutex statements, channels, an actor system and a waituntil statement.15 The features include a @mutex@ statement, channels and a @waituntil@ statement, and an actor system. 15 16 All of these features exist in other programming in some shape or form, however this thesis extends the original ideas by improving performance, productivity, and safety. -
doc/theses/colby_parsons_MMAth/text/mutex_stmt.tex
r3a513d89 r044ae62 5 5 % ====================================================================== 6 6 7 The mutual exclusion problem was introduced by Dijkstra in 1965~\cite{Dijkstra65,Dijkstra65a} .8 There are several concurrent processes or threads that communicate by shared variables and from time to time need exclusive access to shared resources.7 The mutual exclusion problem was introduced by Dijkstra in 1965~\cite{Dijkstra65,Dijkstra65a}: 8 there are several concurrent processes or threads that communicate by shared variables and from time to time need exclusive access to shared resources. 9 9 A shared resource and code manipulating it form a pairing called a \Newterm{critical section (CS)}, which is a many-to-one relationship; 10 10 \eg if multiple files are being written to by multiple threads, only the pairings of simultaneous writes to the same files are CSs. … … 26 26 27 27 \section{Monitor} 28 \CFA provides a high-level locking object, called a \Newterm{monitor}, an elegant, efficient, high-level mechanisms for mutual exclusion and synchronization for shared-memory systems. 29 First proposed by Brinch Hansen~\cite{Hansen73} and later described and extended by C.A.R.~Hoare~\cite{Hoare74}, several concurrent programming languages provide monitors as an explicit language construct: \eg Concurrent Pascal~\cite{ConcurrentPascal}, Mesa~\cite{Mesa}, Turing~\cite{Turing:old}, Modula-3~\cite{Modula-3}, \uC~\cite{Buhr92a} and Java~\cite{Java}. 28 \CFA provides a high-level locking object, called a \Newterm{monitor}, an elegant and efficient abstraction for providing mutual exclusion and synchronization for shared-memory systems. 29 First proposed by Brinch Hansen~\cite{Hansen73} and later described and extended by C.A.R.~Hoare~\cite{Hoare74}. 30 Several concurrent programming languages provide monitors as an explicit language construct: \eg Concurrent Pascal~\cite{ConcurrentPascal}, Mesa~\cite{Mesa}, Turing~\cite{Turing:old}, Modula-3~\cite{Modula-3}, \uC~\cite{Buhr92a} and Java~\cite{Java}. 30 31 In addition, operating-system kernels and device drivers have a monitor-like structure, although they often use lower-level primitives such as mutex locks or semaphores to manually implement a monitor. 31 32 32 33 Figure~\ref{f:AtomicCounter} shows a \CFA and Java monitor implementing an atomic counter. 33 34 A \Newterm{monitor} is a programming technique that implicitly binds mutual exclusion to static function scope by call and return. 34 Lock mutual exclusion, defined by acquire/release calls, is independent of lexical context (analogous to block versus heap storage allocation).35 In contrast, lock mutual exclusion, defined by acquire/release calls, is independent of lexical context (analogous to block versus heap storage allocation). 35 36 Restricting acquire and release points in a monitor eases programming, comprehension, and maintenance, at a slight cost in flexibility and efficiency. 36 37 Ultimately, a monitor is implemented using a combination of basic locks and atomic instructions. … … 110 111 To increase locking flexibility, some languages introduce a mutex statement. 111 112 \VRef[Figure]{f:ReadersWriter} shows the outline of a reader/writer lock written as a \CFA monitor and mutex statements. 112 (The exact lock implement is irrelevant.)113 (The exact lock implementation is irrelevant.) 113 114 The @read@ and @write@ functions are called with a reader/write lock and any arguments to perform reading or writing. 114 115 The @read@ function is not MX because multiple readers can read simultaneously. … … 271 272 The @scoped_lock@ uses a deadlock avoidance algorithm where all locks after the first are acquired using @try_lock@ and if any of the lock attempts fail, all acquired locks are released. 272 273 This repeats after selecting a new starting point in a cyclic manner until all locks are acquired successfully. 273 This deadlock avoidance algorithm is shown in Listing~\ref{l:cc_deadlock_avoid}.274 This deadlock avoidance algorithm is shown in Figure~\ref{f:cc_deadlock_avoid}. 274 275 The algorithm is taken directly from the source code of the @<mutex>@ header, with some renaming and comments for clarity. 275 276 276 \begin{cfa}[caption={\CC \lstinline{scoped_lock} deadlock avoidance algorithm},label={l:cc_deadlock_avoid}] 277 \begin{figure} 278 \begin{cfa} 277 279 int first = 0; // first lock to attempt to lock 278 280 do { … … 291 293 } while ( ! locks[first].owns_lock() ); $\C{// is first lock held?}$ 292 294 \end{cfa} 293 294 While the algorithm in \ref{l:cc_deadlock_avoid} successfully avoids deadlock, there is a livelock scenario. 295 \caption{\CC \lstinline{scoped_lock} deadlock avoidance algorithm} 296 \label{f:cc_deadlock_avoid} 297 \end{figure} 298 299 While this algorithm successfully avoids deadlock, there is a livelock scenario. 295 300 Assume two threads, $A$ and $B$, create a @scoped_lock@ accessing two locks, $L1$ and $L2$. 296 301 A livelock can form as follows. … … 335 340 \end{cquote} 336 341 Comparatively, if the @scoped_lock@ is used and the same locks are acquired elsewhere, there is no concern of the @scoped_lock@ deadlocking, due to its avoidance scheme, but it may livelock. 337 The convenience and safety of the @mutex@ statement, \eg guaranteed lock release with exceptions, should encourage programmers to always use it for locking, mitigating any deadlock scenario .342 The convenience and safety of the @mutex@ statement, \eg guaranteed lock release with exceptions, should encourage programmers to always use it for locking, mitigating any deadlock scenario versus combining manual locking with the mutex statement. 338 343 339 344 \section{Performance} … … 345 350 346 351 The benchmark used to evaluate the avoidance algorithms repeatedly acquires a fixed number of locks in a random order and then releases them. 347 The pseudo code for the deadlock avoidance benchmark is shown in \VRef[Listing]{l:deadlock_avoid_pseudo}.352 The pseudocode for the deadlock avoidance benchmark is shown in \VRef[Listing]{l:deadlock_avoid_pseudo}. 348 353 To ensure the comparison exercises the implementation of each lock avoidance algorithm, an identical spinlock is implemented in each language using a set of builtin atomics available in both \CC and \CFA. 349 354 The benchmarks are run for a fixed duration of 10 seconds and then terminate. … … 352 357 The median is calculated and is plotted alongside the 95\% confidence intervals for each point. 353 358 354 \begin{cfa}[caption={Deadlock avoidance bendchmark pseudo code},label={l:deadlock_avoid_pseudo}] 355 356 357 358 $\PAB{// add pseudo code}$ 359 360 359 \begin{cfa}[caption={Deadlock avoidance benchmark pseudocode},label={l:deadlock_avoid_pseudo}] 360 361 size_t n_locks; $\C{// number of locks}$ 362 size_t n_thds; $\C{// number of threads}$ 363 size_t n_gens; $\C{// number of random orderings (default 100)}$ 364 size_t total = 0; $\C{// global throughput aggregator}$ 365 volatile bool done = false; $\C{// termination flag}$ 366 367 test_spinlock locks[n_locks]; 368 size_t rands[n_thds][n_locks * n_gens]; $\C{// random ordering per thread}$ 369 370 void main( worker & w ) with(w) { $\C{// thread main}$ 371 size_t count = 0, idx = 0; 372 while ( !done ) { 373 idx = (count % n_locks * n_gens) * n_locks; $\C{// get start of next sequence}$ 374 mutex(locks[rands[0]], ..., locks[rands[n_locks - 1]]){} $\C{// lock sequence of locks}$ 375 count++; 376 } 377 __atomic_add_fetch(&total, count, __ATOMIC_SEQ_CST); $\C{// atomically add to total}$ 378 } 379 380 int main( int argc, char * argv[] ) { 381 gen_orders(); $\C{// generate random orderings}$ 382 { 383 worker w[n_thds]; 384 sleep( 10`s ); 385 done = true; 386 } 387 printf( "%lu\n", total ); 388 } 361 389 362 390 \end{cfa} … … 374 402 375 403 Figure~\ref{f:mutex_bench} shows the results of the benchmark experiments. 376 \PAB{Make the points in the graphs for each line different.377 Also, make the text in the graphs larger.}378 404 The baseline results for both languages are mostly comparable, except for the 8 locks results in \ref{f:mutex_bench8_AMD} and \ref{f:mutex_bench8_Intel}, where the \CFA baseline is slightly slower. 379 405 The avoidance result for both languages is significantly different, where \CFA's mutex statement achieves throughput that is magnitudes higher than \CC's @scoped_lock@. … … 383 409 For example, on the AMD machine with 32 threads and 8 locks, the benchmarks would occasionally livelock indefinitely, with no threads making any progress for 3 hours before the experiment was terminated manually. 384 410 It is likely that shorter bouts of livelock occurred in many of the experiments, which would explain large confidence intervals for some of the data points in the \CC data. 385 In Figures~\ref{f:mutex_bench8_AMD} and \ref{f:mutex_bench8_Intel} the mutex statement performsbetter than the baseline.386 At 7 locks and above the mutex statement switches from a hard coded sort to insertion sort .387 It is likely th at the improvement in throughput compared to baseline is due to the timespent in the insertion sort, which decreases contention on the locks.411 In Figures~\ref{f:mutex_bench8_AMD} and \ref{f:mutex_bench8_Intel} there is the counter-intuitive result of the mutex statement performing better than the baseline. 412 At 7 locks and above the mutex statement switches from a hard coded sort to insertion sort, which should decrease performance. 413 It is likely the increase in throughput compared to baseline is due to the delay spent in the insertion sort, which decreases contention on the locks. 388 414 389 415 \begin{figure} -
doc/theses/colby_parsons_MMAth/thesis.tex
r3a513d89 r044ae62 200 200 \input{actors} 201 201 202 \input{waituntil} 203 202 204 %---------------------------------------------------------------------- 203 205 % END MATERIAL
Note:
See TracChangeset
for help on using the changeset viewer.