Ignore:
Timestamp:
Apr 24, 2026, 1:27:24 PM (5 days ago)
Author:
Michael Brooks <mlbrooks@…>
Branches:
master
Children:
8501107
Parents:
534188b
Message:

revisions to ll perf intro and graph formatting

Location:
doc/theses/mike_brooks_MMath
Files:
8 added
11 deleted
7 edited
1 moved

Legend:

Unmodified
Added
Removed
  • doc/theses/mike_brooks_MMath/Makefile

    r534188b rbf73608  
    114114#-include ${Build}/*.d
    115115
     116.PHONY: plots
     117plots: $(PlotSRC)
     118
    116119
    117120# troubleshooting, e.g. `make echo_DEMOS` runs `echo $(DEMOS)`
  • doc/theses/mike_brooks_MMath/list.tex

    r534188b rbf73608  
    963963\end{figure}
    964964
    965 Where \VRef[Figure]{f:ListPerfGlossary} enumerates the specific values, reall the use-case dimensions are:
     965Where \VRef[Figure]{f:ListPerfGlossary} enumerates the specific values, recall the use-case dimensions are:
    966966\begin{description}
    967967        \item[movement ($\times 2$)]
     
    10151015Rather, size zones are picked, specific effects inside of a zone are averaged away, and the story at one zone is compared to that at another zone.
    10161016
     1017\begin{figure}
     1018\centering
     1019  \setlength{\tabcolsep}{0pt}
     1020  \begin{tabular}{p{3.4375in}p{0.125in}p{2.9375in}}
     1021        \subfloat[ ]{\label{f:zoomin-abs-i-swift}
     1022                \includegraphics{plot-list-zoomin-abs-i-swift.pdf}
     1023        } & &
     1024        \subfloat[ ]{\label{f:zoomin-abs-viii-java}
     1025                \includegraphics{plot-list-zoomin-abs-viii-java.pdf}
     1026        }
     1027  \end{tabular}
     1028  \caption{Variety of IR duration \vs list length, at small--medium lengths.  Two example use cases are shown: I, stack movement with head-only access (plot a); VIII, queue movement with element-oriented removal access (plot b); both use cases have insert-first polarity.  One example is run on each machine: UC-I on AMD (ploat a); UC-VIII on Intel (plot b).  Lower duration is better.}
     1029  \label{fig:plot-list-zoomin-abs}
     1030\end{figure}
     1031
     1032\VRef[Figure]{fig:plot-list-zoomin-abs} gives two example responses to size.
     1033The dataset here is a small portion of the overall result and it is premature to attempt conclusions about framework differences from it.
     1034These two examples show, firstly, how differently a pair of individual configurations can behave.
     1035Of more immediate significance, they also have a pattern repeated, in all eight of their size responses.
     1036Note the ``small'' and ``medium'' overlaid boxes, which call out the size zones' definitions.
     1037Outside of an identified box, size response is erratic.
     1038Inside a box, size response is smooth.
     1039This pattern occurs generally throughout all the experimental results, beyond the two examples here.
     1040
    10171041To preview, \VRef[Section]{toc:coarse-compre} dismisses ``Large'' sizes (above 150 elements), where the performance story is dominated by the amount of memory touched, inherently, by the choice of intrusive list \vs wrapped, and where one intrusive framework is quite obviously as good as another.
    1018 At smaller sizes, comparing one intrusive framework to another makes sense; this comparion occurs in the remaining ``Result'' sections.
    1019 Among the ``not Large'' sizes used there, two further zones, Small and Medium, are selected as representatives of what can vary when the scale is changed.
     1042At smaller sizes, comparing one intrusive framework to another makes sense; this comparison occurs in the remaining ``Result'' sections.
     1043Among the remaining ``not Large'' sizes, two further zones, \VRef[Figure]{fig:plot-list-zoomin-abs}'s Small and Medium, are selected as representatives of what can vary when the scale is changed.
    10201044These particular ranges were chosen beacause each range tends to have one story repeated across its constituent sizes.
    10211045If \CFA's duration increases across Small, then the other frameworks' usually do too.
     
    10761100
    10771101Use case, physical context and framework are the explanatory factors.
    1078 Taking all combinations of the explanatory factors gives 624 individual configurations.
    1079 
    1080 Though there are multiple experimental trials of each configuration (to assure repeatability), the usual measure is mean AIR among the trials, considered for each of the 624 individual configurations.
    1081 
    1082 All means reported in this analysis are geometric.
    1083 
    1084 \MLB{TODO: add example plots; explain histogram of 624}
     1102Taking all combinations of the explanatory factors gives 624 individual configurations:
     1103\[
     1104        \textrm{624 individual configurations} =
     1105        \sum_{\substack{
     1106                \textrm{12 use cases}\\
     1107                \textrm{4 physical contexts}\\
     1108                \textrm{4 specific sizes}\\
     1109                \textrm{3.25 frameworks}
     1110        }}
     1111        \textrm{1 individual configuration}
     1112\]
     1113
     1114\begin{figure}
     1115\centering
     1116  \setlength{\tabcolsep}{0pt}
     1117  \includegraphics[trim={0in, 1.75in, 0in, 0in}, clip]{plot-list-legend-rel-i-swift.pdf}
     1118  \begin{tabular}{p{2.75in}p{0.125in}p{3.625in}}
     1119        \subfloat[ ]{\label{f:zoomin-rel-i-swift}
     1120                \includegraphics{plot-list-zoomin-rel-i-swift.pdf}
     1121        } & &
     1122        \subfloat[ ]{\label{f:zoomin-histo-i-swift}
     1123                \includegraphics{plot-list-histo-rel-i-swift.pdf}
     1124        }
     1125  \end{tabular}
     1126  \caption{IR duration, transformed for general anaysis.  The analysis follows the single example setup of \VRef[Figure]{f:zoomin-abs-i-swift}, \ie Use Case I on AMD, where IR is given as absolute duration.  Plot (a) transforms the source dataset by conditioning on specific size.  Plot (b) takes the results from only the identified size zones, discards their specific-size information, and shows the resulting distribution.  Lower duration is better.}
     1127  \label{fig:plot-list-rel}
     1128\end{figure}
     1129
     113032 of these individual configurations, plucked from  \VRef[Figure]{f:zoomin-abs-i-swift}, are the subject of \VRef[Figure]{fig:plot-list-rel}, where they are now transformed into the format used for general analysis.
     1131In \subref*{f:zoomin-rel-i-swift}, each of the 56 data points is an individual configuration; the subset within the two boxes has the 32 of interest.
     1132In \subref*{f:zoomin-histo-i-swift}, the very leftmost histogram (Small, \CFA) summarizes the 4 Small--\CFA individual configurations.
     1133Each remaining framework, at size zone Small, similarly summarizes 4 individual configurations.
     1134This statement is the interpretation of the x-category label, ``Small (/4).''
     1135Each line under the ``/4'' label has 4 individual configurations; so, this group has 16 individual configurations.
     1136The interpretation of ``Medium (/4)'' is similar; it groups the remaining 16 configurations.
     1137When both size zones are pooled together, ``Both (/8)'' results; this group revisits all 32 configurations.
     1138
     1139This example's use of 32 individual configurations is in contrast with full-universe comparisons like the forthcoming \VRef[Figure]{fig:plot-list-1ord}, whose coverage further includes all use cases and both machines.
     1140
     1141The transformation of \VRef[Figure]{f:zoomin-abs-i-swift} into \VRef[Figure]{f:zoomin-rel-i-swift} conditions on the configuration's specific size.
     1142At a particular size, the average duration is computed, across the three frameworks that work on all use cases: \CFA, \uCpp and LQ-@tailq@.
     1143\VRef[Figure]{fig:plot-list-rel} shows a particular configuration's duration relative to this average.
     1144
     1145The effect of conditioning on specific size erases the fact that \VRef[Figure]{fig:plot-list-zoomin-abs} shows, aside from the coarse hops, all frameworks getting smoothly slower as size increases.
     1146This effect is partiularly relevant \emph{within} a size zone, most noticeable as the data lines all going up across the Small box.
     1147Now, with size conditioned, \VRef[Figure]{f:zoomin-rel-i-swift} has the trends inside a zone box being flat.
     1148This flatness gives \subref*{f:histo-rel-i-swift} nicely separated histograms.
     1149
     1150Specific size is the only factor conditioned in this view.
     1151This choice was made to keep the relationship between \VRef[Figures]{f:zoomin-abs-i-swift} and \VRef[]{:zoomin-rel-i-swift} perceptible.
     1152By contrast, general comparisons like \VRef[Figure]{fig:plot-list-1ord} condition on more, generally, everyting not presented.
     1153Its physical-factor breakdown conditions on use case and framework, but not on physical factors; its other two breakdowns are defined similarly.
     1154
     1155The noteworthy performance hop, in this example, is LQ-@list@, which \VRef[Figures]{f:zoomin-abs-i-swift} has as consistently slow in the Small range, and consistently fast in the Medium range.
     1156Therefore, in \VRef{f:zoomin-histo-i-swift}, its two per-size-zone histograms are far apart, and its cross-size-zone histogram is bimdal.
     1157Hops and distribution contributions, like this one, are common.
     1158They are attention-grabbing curiosities when comparing nearly any pair of individual configurations.
     1159They are the background noise of the all-in inter-configuration comparisons following.
     1160With this one, \VRef[Figure]{fig:plot-list-1ord}'s LQ-@list@ distribution (farthest right) does have a perceptible bump at $1.8\times$, corresponding to the upper mode seen here.
     1161But this UC-I--Intel contribution is only $1/6 = 8/48$ of the configurations summarized there.
     1162
     1163Each individual configuration is tested by five trials, giving the error bars of \VRef[Figure]{:zoomin-rel-i-swift} (at min and max).
     1164This trial error is unaffected by the size conditioning.
     1165Though this error is presented only for the narrow slice of the current examples, the amount of it seen here is typical across all the configurations.
     1166With a few exceptions, it is modest; so, the experiment is repeatable.
     1167The data points in \subref{f:zoomin-rel-i-swift} show mean excluding min and max.
     1168This value, alone, is the contribution to the histogram in \subref{f:zoomin-histo-i-swift}.
     1169That is, inter-configuration rollups discard the modest trial-repeatability error.
     1170The girth of a histogram's distribution is entirely the inter-configuration variance, of its configurations' expected performance.
     1171
     1172Thus, in the forthcoming comparison plots:
     1173\begin{itemize}
     1174\item
     1175The measure is mean IR among the middle 3 trials out of 5, that occurred for an individual configuration.
     1176\item
     1177The number of individual configurations per histogram is stated as ``/N,'' at a relevant grnaularity.
     1178\item
     1179All reported averages are geometric means and all IR duration axes (verticals) are logarithmic.
     1180\item
     1181Unless indicated otherwise, all explanatory factors appearing on a plot are marginalized, while those not appearing on the plot are conditioned.
     1182\end{itemize}
    10851183
    10861184
     
    11241222  \caption{Insert/remove duration \vs list length.
    11251223  Lengths go as large possible without error.
    1126   One example use case is shown: stack movement, insert-first polarity and head-mediated access. Lower is better.}
     1224  One example use case is shown: I, stack movement, insert-first polarity and head-mediated access. Lower duration is better.}
    11271225  \label{fig:plot-list-zoomout}
    11281226\end{figure}
     
    12111309\begin{figure}
    12121310  \centering
    1213   \includegraphics{plot-list-1ord.pdf}
     1311  \includegraphics{plot-list-1ord.pdf} \\
     1312  \small{\textsuperscript{\textdagger} LQ-@list@ is (/48) by its incomplete (25\%) use case coverage.  Its bars are scaled to match.}
    12141313  \caption{Histogram of IR durations, decomposed by all first-order effects.
    1215   Each of the three breakdowns divides the entire population of test results into its mutually disjoint constituents. The measure is duration; lower is better.}
     1314  Each of the three breakdowns divides the entire population of test results into its mutually disjoint constituents. Lower duration is better. \MLB{To fix: the size-zone bars are broken (wrong data)}}
    12161315  \label{fig:plot-list-1ord}
    12171316\end{figure}
     
    12461345
    12471346
    1248 \subsection{Intrusive Sweet and Sore Spots}
     1347\subsection{Result: Sweet and Sore Spots}
    12491348
    12501349\begin{figure}
    12511350        \centering
    1252         \includegraphics{plot-list-2ord.pdf}
     1351        \includegraphics{plot-list-2ord.pdf}\\
     1352
     1353        \small{
     1354        \textsuperscript{\textdagger} LQ-@list@ is absent from Movement and Polarity comparisons because it does not support queue and insert-last, respectively.\\
     1355        \textsuperscript{\textdaggerdbl} LQ-@list@ is (/24) by its incomplete (25\%) use case coverage.  Its bars are scaled to match.\\
     1356        \textsuperscript{*} The full population of 192 individual configurations applies (48 for LQ-@list@), but this analysis summarizes pairs of them, giving each histogram's 96 contributions (24 for LQ-@list@).
     1357        }
    12531358        \caption{Histogram of IR durations, illustrating interactions with framework.
    12541359        Each distribution shows how its framework reacts to a single other factor being varied across one pair of options.
    12551360        Every (binned and mean-contributing) individual data point represents a pair of test setups, one with the criterion set to the option labelled at the top; the other setup uses the bottom option.
    12561361        This point's y-axis score is the ratio of these setups' durations.
    1257         The point lands in a bin closer to the label of the option that performs better.
     1362        The point lands in a bin closer to the label of the option that performs better. \MLB{To fix: the size-zone bars are broken (no data)}
    12581363        }
    12591364        \label{fig:plot-list-2ord}
     
    12921397It occurs only for the queue movement, only on the AMD machine, and only for the \CFA framework.
    12931398
    1294 Length-1 performane is an important case.
     1399Length-1 performance is an important case.
    12951400Lists like those of waiting threads are frequently left empty, with the occasional thread (or few) momentarily joining.
    12961401These scenarios need to work.
    12971402
    1298 A cause of this behaviour was never determined.
    1299 Speculation is that \CFA's increased data dependency, a result of the tagging scheme, pairs poorly with the situation implied by queue movement.
     1403A cause of the slowdown was never determined.
     1404Speculation is that \CFA's increased data dependency, a result of the tagging scheme, pairs poorly with the aliasing implied by queue movement.
    13001405The aliasing, at length 1, is: the head's first element is the head's last element.
    1301 With stack movement, one of these aliases is used twice, while with queue movement, both are used in alternation.
    1302 
    1303 The breakdowns earlier in the performane assessment work by varying length only.
     1406With stack movement, one of these names for the first element is reaused for both insert and remove.
     1407While with queue movement, both names are used in alternation.
     1408
     1409The breakdowns earlier in the performance assessment vary length only.
    13041410That is, they see the story down the leftmost column in a triangle.
    13051411The insight for contextualizing this issue was to inspect both length and width.
     
    13581464\begin{comment}
    13591465
    1360 \begin{figure}
    1361 \centering
    1362   \setlength{\tabcolsep}{0pt}
    1363   \begin{tabular}{p{0.75in}p{2.75in}p{3in}}
    1364   &
    1365   \subfloat[Operation I, AMD]{\label{f:AbsoluteTime-i-swift}
    1366         \hspace*{-0.75in}
    1367         \includegraphics{plot-list-zoomin-abs-i-swift.pdf}
    1368   } % subfigure
    1369   &
    1370   \subfloat[Operation I, Intel]{\label{f:AbsoluteTime-i-java}
    1371         \includegraphics{plot-list-zoomin-abs-i-java.pdf}
    1372   } % subfigure
    1373   \\
    1374   &
    1375   \subfloat[Operation VIII, AMD]{\label{f:AbsoluteTime-viii-swift}
    1376         \hspace*{-0.75in}
    1377         \includegraphics{plot-list-zoomin-abs-viii-swift.pdf}
    1378   } % subfigure
    1379   &
    1380   \subfloat[Operation VIII, Intel]{\label{f:AbsoluteTime-viii-java}
    1381         \includegraphics{plot-list-zoomin-abs-viii-java.pdf}
    1382   } % subfigure
    1383   \end{tabular}
    1384   \caption{Operation duration \vs list length at small-medium lengths.  Two example operations are shown: [I] stack movement with head-only access (plots a and b); [VIII] queue movement with element-oriented removal access (plots c and d); both operations use insert-first polarity. Lower is better.}
    1385   \label{fig:plot-list-zoomin}
    1386 \end{figure}
    13871466
    13881467\VRef[Figure]{fig:plot-list-zoomin} shows the sizes below 150 blown up.
  • doc/theses/mike_brooks_MMath/plots/ListCommon.py

    r534188b rbf73608  
    5050    timings['SizeZone'] = np.select(
    5151        condlist = [
    52             (4 <= timings['NumNodes']) & (timings['NumNodes'] <= 16),
    53             (48 <= timings['NumNodes']) & (timings['NumNodes'] <= 256)
     52            ( 6 <= timings['NumNodes']) & (timings['NumNodes'] <=  20),
     53            (50 <= timings['NumNodes']) & (timings['NumNodes'] <= 200)
    5454        ],
    5555        choicelist = [
  • doc/theses/mike_brooks_MMath/plots/list-1ord.gp

    r534188b rbf73608  
    2929
    3030set xrange [-5.5:17.5];
    31 set xlabel "Architecture, Size Zone;                           Operation;                                     Framework;       \nPrevalence                                   Prevalence                                     Prevalence"
     31set xlabel "Architecture, Size Zone (/156);                 Use Case (/52);                            Framework (/192^†)       \nPrevalence                                   Prevalence                                     Prevalence"
    3232set xtics ( \
    3333   "AMD, sm"    -5, \
     
    4949   "XII"  11, \
    5050\
    51    "{/Helvetica=15 C{/Symbol \42}}"      13, \
    52    "{/Symbol \155}C++"      14, \
    53    "LQ: tailq" 15, \
    54    "LQ: list"  16, \
     51   "{/Helvetica=15 C{/Symbol \42}}"  13, \
     52   "{/Symbol \155}C++"               14, \
     53   "LQ {/Helvetica=15 tailq}"        15, \
     54   "LQ {/Helvetica=15 list}"         16, \
    5555) scale 0 rotate by -45
    5656
    57 barHtScale_phys = 0.05
     57barHtScale_phys = 0.035
    5858barHtScale_op = 0.1
    5959barHtScale_fx = 0.05
  • doc/theses/mike_brooks_MMath/plots/list-2ord.gp

    r534188b rbf73608  
    2929
    3030set xrange [-0.7:27.5];
    31 set xlabel "Criterion;  top-bottom Options;  Prevalence" offset 0,-1.5
     31set xlabel "Criterion (/96^‡^*);  top-bottom Options;  Prevalence" offset 0,-1.5
    3232set format x ""
    3333set xtics ( \
     
    5050set label "stack"                           at first 11  , graph  1.05 center
    5151set label "queue"                           at first 11  , graph -0.05 center
    52 set label "Movement                      at first 11  , graph -0.14 center
     52set label "Movement^†"                      at first 11  , graph -0.14 center
    5353
    5454set label "ins. first"                      at first 15  , graph  1.05 center
    5555set label "ins. last"                       at first 15  , graph -0.05 center
    56 set label "Polarity                      at first 15  , graph -0.14 center
     56set label "Polarity^†"                      at first 15  , graph -0.14 center
    5757
    5858set label "all head"                        at first 19.5, graph  1.05 center
     
    173173       i ( 0 + 0) using ( 0 + 0 ):1 title "{/Helvetica=15 C{/Symbol \42}}"   with points     lc rgb "blue"        pt  7  ps 1.0, \
    174174    '' i ( 0 + 3) using ( 0 + 1 ):1 title "{/Symbol \155}C++"                with points     lc rgb "dark-orange" pt  9  ps 1.2, \
    175     '' i ( 0 + 2) using ( 0 + 2 ):1 title "LQ-tailq"                         with points     lc rgb "magenta"     pt  11 ps 1.2, \
    176     '' i ( 0 + 1) using ( 0 + 3 ):1 title "LQ-list"                          with points     lc rgb "dark-violet" pt  13 ps 1.4, \
     175    '' i ( 0 + 2) using ( 0 + 2 ):1 title "LQ {/Helvetica=15 tailq}"         with points     lc rgb "magenta"     pt  11 ps 1.2, \
     176    '' i ( 0 + 1) using ( 0 + 3 ):1 title "LQ {/Helvetica=15 list}"          with points     lc rgb "dark-violet" pt  13 ps 1.4, \
    177177    '' i ( 0 + 0) using ( 0 + 0):1:( 0 + 0):( 0 + 0 + .8)            notitle with xerrorbars lc rgb "blue"        pt  0, \
    178178    '' i ( 0 + 3) using ( 0 + 1):1:( 0 + 1):( 0 + 1 + .8)            notitle with xerrorbars lc rgb "dark-orange" pt  0, \
  • doc/theses/mike_brooks_MMath/plots/list-zoomin-abs-i-swift.gp

    r534188b rbf73608  
    1 set terminal pdfcairo color enhanced size 3.625in,2.0in font "Times,17"
     1set terminal pdfcairo color enhanced size 3.4375in,2.5in font "Times,17"
    22
    33set size 1.0, 1.0    # scale of plot area inside terminal
     
    1010set output OUTDIR."/plot-list-zoomin-abs-i-swift.pdf"
    1111
    12 set lmargin 10
     12set lmargin screen (0.5/3.4375) # half inch
    1313
    1414set grid
    15 unset key
    16 set logscale x 2
     15set key bottom right
     16
    1717set logscale y
    1818set yrange [1:15];
    19 set ytics (1,2,3,4,5,6,7,8,10,12,14)
     19set ytics (1,2,3,4,5,6,7,8,10,12,14) nomirror
     20set ylabel "Duration (ns)"
     21
     22set logscale x 2
    2023set xrange [0.75:180];
    21 # set xlabel "List length (item count)" offset 2,0
    22 set format x ""
    23 set ylabel "Duration (ns)" offset -3.0,0
     24set xlabel "List length (item count)"
     25# set format x ""
     26
     27# "drop" page-centre side of bounding box (drop whole box, re-draw desired three)
     28unset border
     29set arrow from graph 0, graph 0 to graph 0, graph 1 nohead lw 1 front  # left
     30set arrow from graph 0, graph 1 to graph 1, graph 1 nohead lw 1 front  # top
     31set arrow from graph 0, graph 0 to graph 1, graph 0 nohead lw 1 front  # bot
     32
     33# labelled boxes around size zones
     34set object rect from first  6, first 2.5 to first 23,   first 10 fc rgb "black"       fs empty         lw 2.0
     35set object rect from first 45, first 3.5 to graph 0.99, first 12 fc rgb "black"       fs empty         lw 2.0
     36set label "small"                        at first 23,   first (2.5 * 0.9) right
     37set label "medium"                       at graph 0.99, first (3.5 * 0.9) right
     38
     39
     40#set bmargin 0
     41set tmargin 0.1
     42#set lmargin 0
     43set rmargin 0.1
     44
     45set label "{/Times-Bold= Use Case I,}\n{/Times-Bold= AMD}"                           at first 1, graph  0.9 left
     46
    2447set errorbars 2.0
    2548set pointintervalbox 0
    2649
    2750plot INDIR."/plot-list-zoomin-abs-i-swift.dat" \
    28        i 0 using ($1 * 0.98):8:4:5 title columnheader(1) with yerrorbars lt rgb "blue"        pt  6  ps 0.85 lw 1, \
    29     '' i 4 using ($1 * 0.94):8:4:5 title columnheader(1) with yerrorbars lt rgb "dark-orange"   pt  8  ps 0.75 lw 1, \
    30     '' i 3 using ($1 * 1.02):8:4:5 title columnheader(1) with yerrorbars lt rgb "magenta"             pt  10 ps 0.85 lw 1, \
    31     '' i 2 using ($1 * 1.06):8:4:5 title columnheader(1) with yerrorbars lt rgb "purple"              pt  12 ps 1.0  lw 1
     51       i 0 using ($1 * 0.98):8:4:5 notitle                        with yerrorbars lt rgb "blue"              pt  6  ps 0.85 lw 1, \
     52    '' i 4 using ($1 * 0.94):8:4:5 notitle                        with yerrorbars lt rgb "dark-orange" pt  8  ps 0.75 lw 1, \
     53    '' i 3 using ($1 * 1.02):8:4:5 notitle                        with yerrorbars lt rgb "magenta"           pt  10 ps 0.85 lw 1, \
     54    '' i 2 using ($1 * 1.06):8:4:5 title "LQ {/Helvetica=15 list}" with yerrorbars lt rgb "purple"            pt  12 ps 1.0  lw 1
  • doc/theses/mike_brooks_MMath/plots/list-zoomin-abs-viii-java.gp

    r534188b rbf73608  
    1 set terminal pdfcairo color enhanced size 3.0in,2.5in font "Times,17"
     1set terminal pdfcairo color enhanced size 2.9375in,2.5in font "Times,17"
    22
    33set size 1.0, 1.0    # scale of plot area inside terminal
     
    1111
    1212set grid
    13 unset key
    14 set logscale x 2
     13set key bottom right
     14set key noopaque
     15
    1516set logscale y
    1617set yrange [1:15];
    17 set ytics (1,2,3,4,5,6,7,8,10,12,14)
     18set ytics (1,2,3,4,5,6,7,8,10,12,14) scale 0
     19#set ylabel "Duration (ns)" offset -3.0,0
    1820set format y ""
     21
     22set logscale y2
     23set y2range [1:15];
     24set y2tics (1,2,3,4,5,6,7,8,10,12,14) nomirror
     25set format y2 ""
     26
     27set logscale x 2
    1928set xrange [0.75:180];
    20 set xlabel "List length (item count)" offset 2,0
    21 # set ylabel "Duration (ns)" offset -1.0,0
    22 set format y ""
     29set xlabel "List length (item count)"
     30# set format x ""
     31
     32# "drop" page-centre side of bounding box (drop whole box, re-draw desired three)
     33unset border
     34set arrow from graph 1, graph 0 to graph 1, graph 1 nohead lw 1 front  # right
     35set arrow from graph 0, graph 1 to graph 1, graph 1 nohead lw 1 front  # top
     36set arrow from graph 0, graph 0 to graph 1, graph 0 nohead lw 1 front  # bot
     37
     38# labelled boxes around size zones
     39set object rect  from first  6, first 1.4 to first 23,   first 4.8 fc rgb "black"       fs empty         lw 2.0
     40set object rect  from first 45, first 3.5 to graph 0.99, first 6.5 fc rgb "black"       fs empty         lw 2.0
     41set label "small"  at first  6,                          first (4.8 * 1.15) left
     42set label "medium" at first 45,                          first (6.5 * 1.15) left
     43
     44
     45#set bmargin 0
     46set tmargin 0.1
     47set lmargin 0
     48set rmargin 0.1
     49
     50set label "{/Times-Bold= Use Case VIII,}\n{/Times-Bold= Intel}"                           at first 1, graph  0.9 left
     51
    2352set errorbars 2.0
    2453set pointintervalbox 0
    2554
    2655plot INDIR."/plot-list-zoomin-abs-viii-java.dat" \
    27        i 0 using ($1 * 0.98):8:4:5 title columnheader(1) with yerrorbars lt rgb "blue"        pt  6  ps 0.85 lw 1, \
    28     '' i 3 using ($1 * 0.94):8:4:5 title columnheader(1) with yerrorbars lt rgb "dark-orange"   pt  8  ps 0.75 lw 1, \
    29     '' i 2 using ($1 * 1.02):8:4:5 title columnheader(1) with yerrorbars lt rgb "magenta"             pt  10 ps 0.85 lw 1
     56       i 0 using ($1 * 0.98):8:4:5 title "{/Helvetica=15 C{/Symbol \42}}" with yerrorbars lt rgb "blue"              pt  6  ps 0.85 lw 1, \
     57    '' i 3 using ($1 * 0.94):8:4:5 title "{/Symbol \155}C++"              with yerrorbars lt rgb "dark-orange" pt  8  ps 0.75 lw 1, \
     58    '' i 2 using ($1 * 1.02):8:4:5 title "LQ {/Helvetica=15 tailq}"        with yerrorbars lt rgb "magenta"           pt  10 ps 0.85 lw 1
  • doc/theses/mike_brooks_MMath/plots/list-zoomin-rel-i-swift.py

    r534188b rbf73608  
    2121
    2222    measureBase='OpDurRel',
    23     marginalizeOn=['fx']
     23    marginalizeOn= list( set(explanations) - set(['NumNodes', 'SizeZone']) )
    2424)
Note: See TracChangeset for help on using the changeset viewer.