Re: [PATCH -perfbook] cpu: PoC of A QQz citing table in answer to another QQz (was Re: Question about Table E.1)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2023-02-10 at 00:12 +0900, Akira Yokosawa wrote:
> Subject: [PATCH -perfbook] cpu: Add a QQz citing table E.1
> 
> An email thread started from a question from Leo [1] stimulated
> me to add a QQz on Paul's experience back in 2009.
> 
> Link: [1] https://www.spinics.net/lists/perfbook/msg03824.html
> Signed-off-by: Akira Yokosawa <akiyks@xxxxxxxxx>
> ---
> I wrote:
> > On second thought, it should be possible to put a QQz next to QQz 3.7
> > citing Table E.1 in the Quiz part.
> > 
> > Let me try and produce a PoC patch.
> 
> Something like this?
> 
> I couldn't make the QQz next to QQz 3.7 due to the
> 
>   \QuickQuizLabel{\QspeedOfLightAtoms}
> 
> just below QQz 3.7.
> If you put the label in the middle of
> 
> \QuickQuizSeries{
>  ...
> }
> 
> , you will get build errors in -nq builds. 
> 
> Instead, I added it next to QQz 3.8 (or the end of Section 3.2.2).
> It looks still relevant there.
> 
> The wording of the Quiz and its Answer is just a stub.
> Paul, feel free to rewrite them as you like.
> 
>         Thanks, Akira
> --
>  cpu/overheads.tex | 24 +++++++++++++++++++++---
>  1 file changed, 21 insertions(+), 3 deletions(-)
> 
> diff --git a/cpu/overheads.tex b/cpu/overheads.tex
> index 0d8270bf6e17..cff847cdadbf 100644
> --- a/cpu/overheads.tex
> +++ b/cpu/overheads.tex
> @@ -485,10 +485,11 @@ cycles, as shown in the ``Global Comms'' row.
>  %     page 6/76 'Leading Interconnect, Leading Performance'
>  % Needs updating...
>  
> -\QuickQuiz{
> +\QuickQuizSeries{%
> +\QuickQuizB{
>  	These numbers are insanely large!
>  	How can I possibly get my head around them?
> -}\QuickQuizAnswer{
> +}\QuickQuizAnswerB{
>  	Get a roll of toilet paper.
>  	In the USA, each roll will normally have somewhere around
>  	350--500 sheets.
> @@ -516,7 +517,24 @@ cycles, as shown in the ``Global Comms'' row.
>  	You might wish to avoid disabling interrupts across that many
>  	cache misses.\footnote{
>  		Kudos to Matthew Wilcox for this holding-breath analogy.}
> -}\QuickQuizEnd
> +}\QuickQuizEndB
> +%
> +\QuickQuizE{
> +	\Cref{tab:cpu:Performance of Synchronization Mechanisms on 16-CPU 2.8GHz Intel X5550 (Nehalem) System}
> +	in the answer to \QuickQuizARef{\QspeedOfLightAtoms} says that
> +	In-Core CAS is faster than both of Same-CPU CAS and In-Core Blind CAS\@.
> +	What is happening there?
> +}\QuickQuizAnswerE{
> +	I \emph{was} surprised by the data I obtained and did a rigorous
> +	check of their validity.
> +	I got the same result persistently.
> +	One theory that might explain the observation would be:
> +	The two threads in the core are able to overlap their accesses,
> +	while the single CPU must do everything sequentially.
> +	Unfortunately, there seems to be no public documentation explaining
> +	why the Intel X5550 (Nehalem) system behaved like that.
> +}\QuickQuizEndE
> +}                 % End of \QuickQuizSeries
>  
>  \subsection{Hardware Optimizations}
>  \label{sec:cpu:Hardware Optimizations}
> 
> base-commit: 14440e232cc1b2580dc1a73f873dc29fe3aea02b

Tested on Gitlab:
https://gitlab.com/linux-kernel/perfbook/-/pipelines/774642106

Observations for this PDF:
QQz 3.7 has the mentioned table.
QQz 3.9 has the comment on the table.
'Question + link' to QQz 3.9 appears in Chapter 3, on the page after 'question +
link' to QQz 3.7.

Is that the desired output?

(It feels a little 'misplaced', TBH. The best place would be just after QQz 3.7,
but looking into your comments, it seems it was not possible.)


Anyway, if the desired output was achieved:

Tested-by: Leonardo Bras <leobras@xxxxxxxxxx>
Reviewed-by: Leonardo Bras <leobras@xxxxxxxxxx>


Best regards,
Leo




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux