From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Akira Yokosawa <akiyks@gmail.com>
Cc: perfbook@vger.kernel.org
Subject: Re: [PATCH] styleguide: Reflect table format conversion
Date: Sat, 28 Oct 2017 20:25:33 -0700 [thread overview]
Message-ID: <20171029032533.GC3659@linux.vnet.ibm.com> (raw)
In-Reply-To: <e199471f-0d88-8b07-e75c-9611559c599c@gmail.com>
On Sun, Oct 29, 2017 at 09:19:18AM +0900, Akira Yokosawa wrote:
> >From 574dbdaffe6d9243921f4ac4f2cfcb9c3e86ae66 Mon Sep 17 00:00:00 2001
> From: Akira Yokosawa <akiyks@gmail.com>
> Date: Sun, 29 Oct 2017 09:15:02 +0900
> Subject: [PATCH] styleguide: Reflect table format conversion
>
> Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
Applied, thank you! To me, Table D.3 looks better than either
D.10 or D.11, though I should look again later.
Thanx, Paul
> ---
> appendix/styleguide/styleguide.tex | 268 ++++++++++++++++++-------------------
> 1 file changed, 132 insertions(+), 136 deletions(-)
>
> diff --git a/appendix/styleguide/styleguide.tex b/appendix/styleguide/styleguide.tex
> index 024270c..11f539b 100644
> --- a/appendix/styleguide/styleguide.tex
> +++ b/appendix/styleguide/styleguide.tex
> @@ -733,6 +733,105 @@ As you can see, extra space is placed before the comma.
>
> The \verb|\ldots| macro behaves the same as the \verb|\dots| macro.
>
> +\subsection{Floating Object Format}
> +\label{sec:app:styleguide:Floating Object Format}
> +
> +\subsubsection{Ruled Line in Table}
> +\label{sec:app:styleguide:Ruled Line in Table}
> +
> +They say that tables drawn by using ruled lines of plain \LaTeX\
> +look ugly.\footnote{
> + \url{https://www.inf.ethz.ch/personal/markusp/teaching/guides/guide-tables.pdf}
> +}
> +Vertical lines should be avoided and horizontal lines should be
> +used sparingly, especially in tables of simple structure.
> +
> +\IfTblCpTop{}{
> +\floatstyle{plaintop}
> +\restylefloat{table}
> +\setlength{\abovetopsep}{-2pt}
> +\addtolength{\abovecaptionskip}{-2.5pt}
> +}
> +
> +Table~\ref{tab:app:styleguide:Refrigeration Power Consumption}
> +(corresponding to
> +Table~\ref{tab:future:Refrigeration Power Consumption})
> +is drawn by using the features of ``booktabs'' and ``xcolor'' packages.
> +Note that ruled lines of booktabs can not be mixed with
> +vertical lines in a table.\footnote{
> + There is another package named ``arydshln'' which provides dashed lines
> + to be used in tables. A couple of experimental examples are presented in
> + Section~\ref{sec:app:styleguide:Table Layout Experiment}.
> +}
> +
> +\begin{table}[tbhp]
> +\rowcolors{1}{}{lightgray}
> +\renewcommand*{\arraystretch}{1.2}\centering\small
> +\begin{tabular}{lrrr}\toprule
> +Situation
> + & $T$ (K)
> + & $\CPf$ & \parbox[b]{.75in}{\raggedleft Power per watt\par waste heat (W)} \\
> +\midrule
> +Dry Ice
> + & $195$
> + & $1.990$
> + & 0.5 \\
> +Liquid N$_2$
> + & $77$
> + & $0.356$
> + & 2.8 \\
> +Liquid H$_2$
> + & $20$
> + & $0.073$
> + & 13.7 \\
> +Liquid He
> + & $4$
> + & $0.0138$
> + & 72.3 \\
> +IBM~Q & $0.015$
> + & $0.000051$
> + & 19,500.0 \\
> +\bottomrule
> +\end{tabular}
> +\caption{Refrigeration Power Consumption}
> +\label{tab:app:styleguide:Refrigeration Power Consumption}
> +\end{table}
> +
> +Most tables in the text have been converted to this format.
> +Tables~\ref{tab:future:Comparison of Locking and HTM}
> +and~\ref{tab:future:Comparison of Locking (Augmented by RCU or Hazard Pointers) and HTM}
> +are the exceptions. They are complex and require an alternative
> +approach.\footnote{Any suggestion is welcome!!!}
> +
> +\subsubsection{Position of Caption}
> +\label{sec:app:styleguide:Position of Caption}
> +
> +In \LaTeX\ conventions, captions of tables are usually placed
> +above them. The reason is the flow of your eye movement
> +when you look at them. Most tables have a row of heading at the
> +top. You naturally look at the top of a table at first. Captions at
> +the bottom of tables disturb this flow.
> +The same can be said of code snippets, which are read from
> +top to bottom.
> +
> +For code snippets, the ``ruled'' style chosen for listing
> +environment places the caption at the top.
> +See Listing~\ref{lst:app:styleguide:Sample Code Snippet}
> +for an example.
> +
> +As for tables, the position of caption is tweaked by
> +\verb|\floatstyle{}| and \verb|\restylefloat{}| macros
> +in preamble.
> +
> +Vertical skips below captions are reduced by setting a smaller
> +value to the \verb|\abovecaptionskip| variable,
> +which would also affect captions to figures.
> +
> +In the tables which use horizontal rules of ``booktabs'' package,
> +the vertical skips between captions and tables are further reduced
> +by setting a negative value to the \co{\\abovetopsep} variable,
> +which controls the behavior of \co{\\toprule}.
> +
> \subsection{Improvement Candidates}
> \label{sec:app:styleguide:Improvement Candidates}
>
> @@ -750,9 +849,6 @@ The \verb|\ldots| macro behaves the same as the \verb|\dots| macro.
> \end{minipage}
> \end{figure*}
>
> -\floatstyle{ruled}
> -\restylefloat{listing}
> -
> \begin{listing*}[tbh]%
> \caption{Message-Passing Litmus Test (by subfig)}%
> \label{lst:app:styleguide:Message-Passing Litmus Test (subfig)}%
> @@ -829,38 +925,7 @@ exists (1:r2=2 /\ 1:r3=0)
>
> There are a few areas yet to be attempted in perfbook
> which would further improve its appearance.
> -This section lists up such candidates.
> -
> -\subsubsection{Position of Caption}
> -\label{sec:app:styleguide:Position of Caption}
> -
> -In \LaTeX\ conventions, captions of tables are usually placed
> -above them. The reason is the flow of your eye movement
> -when you look at them. Most tables have a row of heading at the
> -top. You naturally look at the top of a table at first. Captions at
> -the bottom of tables disturb this flow.
> -The same can be said of code snippets, which are read from
> -top to bottom.
> -
> -For code snippets, the ``ruled'' style chosen for listing
> -environment places the caption at the top.
> -See Listing~\ref{lst:app:styleguide:Sample Code Snippet}
> -for an example.
> -
> -As for tables, the position of caption can be tweaked by
> -\verb|\floatstyle{}| and \verb|\restylefloat{}| macros
> -in preamble.
> -
> -In the sample tables shown in
> -Sections~\ref{sec:app:styleguide:Ruled Line in Table}
> -and~\ref{sec:app:styleguide:Table Layout Experiment},
> -vertical skips below captions are reduced by setting a smaller
> -value to the \verb|\abovecaptionskip| variable,
> -which would also affect captions to figures.\footnote{
> - The skip below table captions in these sections is further
> - reduced by setting a negative value to the \co{\\abovetopsep}
> - variable of the ``booktabs'' package which controls the behavior
> - of \co{\\toprule}.}
> +This section lists such candidates.
>
> \subsubsection{Grouping Related Figures/Listings}
> \label{sec:app:styleguide:Grouping Related Figures/Listings}
> @@ -909,75 +974,14 @@ subfloats.
> Otherwise, the resulting caption number would be off by one
> from the actual number.
>
> -\subsubsection{Ruled Line in Table}
> -\label{sec:app:styleguide:Ruled Line in Table}
> -
> -They say that tables drawn by using ruled lines of plain \LaTeX\
> -look ugly.\footnote{
> - \url{https://www.inf.ethz.ch/personal/markusp/teaching/guides/guide-tables.pdf}
> -}
> -Vertical lines should be avoided and horizontal lines should be
> -used sparingly, especially in tables of simple structure.
> -
> -\IfTblCpTop{}{
> -\floatstyle{plaintop}
> -\restylefloat{table}
> -\setlength{\abovetopsep}{-2pt}
> -\addtolength{\abovecaptionskip}{-2.5pt}
> -}
> -
> -For example,
> -Table~\ref{tab:future:Refrigeration Power Consumption}
> -can be tweaked as shown in
> -Table~\ref{tab:app:styleguide:Refrigeration Power Consumption}
> -with the help of ``booktabs'' and ``xcolor'' packages.
> -
> -\begin{table}[tbhp]
> -\rowcolors{1}{}{lightgray}
> -\renewcommand*{\arraystretch}{1.2}\centering\small
> -\begin{tabular}{lrrr}\toprule
> -Situation
> - & $T$ (K)
> - & $\CPf$ & \parbox[b]{.75in}{\raggedleft Power per watt\par waste heat (W)} \\
> -\midrule
> -Dry Ice
> - & $195$
> - & $1.990$
> - & 0.5 \\
> -Liquid N$_2$
> - & $77$
> - & $0.356$
> - & 2.8 \\
> -Liquid H$_2$
> - & $20$
> - & $0.073$
> - & 13.7 \\
> -Liquid He
> - & $4$
> - & $0.0138$
> - & 72.3 \\
> -IBM~Q & $0.015$
> - & $0.000051$
> - & 19,500.0 \\
> -\bottomrule
> -\end{tabular}
> -\caption{Refrigeration Power Consumption}
> -\label{tab:app:styleguide:Refrigeration Power Consumption}
> -\end{table}
> -
> -Note that ruled lines of booktabs can not be mixed with
> -vertical lines in a table.\footnote{
> - There is another package named ``arydshln'' which provides dashed lines
> - to be used in tables. A couple of experimental examples are presented in
> - Section~\ref{sec:app:styleguide:Table Layout Experiment}.
> -}
> -
> \subsubsection{Table Layout Experiment}
> \label{sec:app:styleguide:Table Layout Experiment}
>
> -To see how far we can go without vertical rules in tables,
> -several experiments using booktabs, xcolors, and arydshln packages
> -are presented in this section.
> +This section presents some experimental tables
> +using booktabs, xcolors, and arydshln packages.
> +The corresponding tables in the text have been converted using one of
> +the format shown here. The source of this section can be regarded
> +as a reference to be consulted when new tables are added in the text.
>
> \begin{table}[tb]
> \rowcolors{1}{}{lightgray}
> @@ -1007,25 +1011,26 @@ are presented in this section.
> \label{tab:app:styleguide:Performance of Synchronization Mechanisms of 4-CPU 1.8GHz AMD Opteron 844 System}
> \end{table}
>
> -Table~\ref{tab:cpu:Performance of Synchronization Mechanisms on 4-CPU 1.8GHz AMD Opteron 844 System}
> -can be tweaked as is shown in
> -Table~\ref{tab:app:styleguide:Performance of Synchronization Mechanisms of 4-CPU 1.8GHz AMD Opteron 844 System} using booktabs and xcolors.
> -In this table, original tabular source contains tweaks with
> -\verb|\textcolor{}| commands. They are removed by using ``S'' column
> -specifiers provided by the ``siunitx'' package.
> +In
> +Table~\ref{tab:app:styleguide:Performance of Synchronization Mechanisms of 4-CPU 1.8GHz AMD Opteron 844 System}
> +(corresponding to
> +Table~\ref{tab:cpu:Performance of Synchronization Mechanisms on 4-CPU 1.8GHz AMD Opteron 844 System}),
> +the ``S'' column specifiers provided
> +by the ``siunitx'' package are used to align numbers.
>
> Table~\ref{tab:app:styleguide:Reference Counting and Synchronization Mechanisms}
> -is a tweaked version of
> -Table~\ref{tab:together:Reference Counting and Synchronization Mechanisms},
> -which has more complex header than the tables experimented so far.
> -
> +(corresponding to
> +Table~\ref{tab:together:Reference Counting and Synchronization Mechanisms})
> +is an example of table with a complex header.
> In
> Table~\ref{tab:app:styleguide:Reference Counting and Synchronization Mechanisms},
> the gap in the mid-rule corresponds to the distinction
> -which is represented by double vertical rules in
> -Table~\ref{tab:together:Reference Counting and Synchronization Mechanisms}.
> -The legends in the frame box explain the abbreviations used in the matrix.
> -Two types of memory barrier are denoted by subscripts here.
> +which had been represented by double vertical rules before the conversion.
> +The legends in the frame box appended here explain the abbreviations used
> +in the matrix. Two types of memory barrier are denoted by subscripts here.
> +The legends and subscripts are not present in
> +Table~\ref{tab:together:Reference Counting and Synchronization Mechanisms}
> +since they are redundant there.
>
> \begin{table}[tb]
> \small
> @@ -1062,12 +1067,10 @@ Two types of memory barrier are denoted by subscripts here.
> \label{tab:app:styleguide:Reference Counting and Synchronization Mechanisms}
> \end{table}
>
> -Table~\ref{tab:app:whymb:Cache Coherence Example}
> -can be tweaked as in
> Table~\ref{tab:app:styleguide:Cache Coherence Example}
> -in a similar manner.
> -It is not a ``table'' in the narrow sense, rather a sequence diagram.
> -A ``figure'' environment might be a proper choice here.
> +(corresponding to
> +Table~\ref{tab:app:whymb:Cache Coherence Example})
> +is a sequence diagram drawn as a table.
>
> \begin{table*}[tbh]
> \small
> @@ -1117,12 +1120,15 @@ just below the mid-rules. This change makes it easier for
> properly.
>
> Table~\ref{tab:app:styleguide:RCU Publish-Subscribe and Version Maintenance APIs (colortbl)}
> -is another example which keeps original columns and colors rows only where
> +is another version which keeps original columns and colors rows only where
> a category has multiple rows. This is done by combining \verb|\rowcolors{}|
> of ``xcolor'' and \verb|\cellcolor{}| commands of the ``colortbl''
> package (\verb|\cellcolor{}| overrides \verb|\rowcolors{}|).
>
> -For consistent looks, the latter layout might be our choice.
> +In
> +Table~\ref{tab:defer:RCU Publish-Subscribe and Version Maintenance APIs},
> +the latter layout without partial row coloring has been
> +chosen for simplicity.
>
> \begin{table*}[tbh]
> \rowcolors{2}{}{blue!15}
> @@ -1272,10 +1278,10 @@ Pointer update &
> \label{tab:app:styleguide:RCU Publish-Subscribe and Version Maintenance APIs (colortbl)}
> \end{table*}
>
> -Table~\ref{tab:memorder:Memory Misordering: Store-Buffering Sequence of Events}
> -can be tweaked as shown in
> -Table~\ref{tab:app:styleguide:Memory Misordering: Store-Buffering Sequence of Events}.
> -It is also a sequence diagram drawn as a tabular object.
> +Table~\ref{tab:app:styleguide:Memory Misordering: Store-Buffering Sequence of Events}
> +(corresponding to
> +Table~\ref{tab:memorder:Memory Misordering: Store-Buffering Sequence of Events})
> +is also a sequence diagram drawn as a tabular object.
>
> \begin{table*}[tbh]
> \rowcolors{6}{}{lightgray}
> @@ -1381,11 +1387,6 @@ IBM~Q & $0.015$
> \label{tab:app:styleguide:Refrigeration Power Consumption (arydshln-2)}
> \end{table}
>
> -Tables in Chapter~\ref{chp:Advanced Synchronization: Memory Ordering}
> -have been recently converted to the scheme presented in this section.
> -Refer to \path{memorder/memorder.tex}
> -for examples of tables with complex headings.
> -
> \IfTblCpTop{}{
> \floatstyle{plain}
> \restylefloat{table}
> @@ -1399,11 +1400,6 @@ for examples of tables with complex headings.
> Other improvement candidates are listed in the source of this
> section as comments.
>
> -% Trademarks:
> -% As the Legal page covers trademarks, there is no need to
> -% use trademark symbol in the text. They seems to have been
> -% imported from original publications.
> -%
> % Ugly line break by \co{}
> % __
> % atomic_store()
> --
> 2.7.4
>
prev parent reply other threads:[~2017-10-29 3:25 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-29 0:19 [PATCH] styleguide: Reflect table format conversion Akira Yokosawa
2017-10-29 3:25 ` Paul E. McKenney [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171029032533.GC3659@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=akiyks@gmail.com \
--cc=perfbook@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.