% ack.tex % mainfile: perfbook.tex % SPDX-License-Identifier: CC-BY-SA-3.0 \chapter{Credits} \label{bck:ack:Credits} % \Epigraph{If I have seen further it is by standing on the shoulders of giants.}{Isaac Newton, modernized} % \section{Authors} % CCASA 3.0 US wording from John Wiegley. % http://www.newartisans.com/blog_assets/git.from.bottom.up.pdf \section{\LaTeX\ Advisor} Akira Yokosawa is this book's \LaTeX\ advisor, which perhaps most notably includes the care and feeding of the style guide laid out in \cref{chp:app:styleguide:Style Guide}\@. This work includes table layout, listings, fonts, rendering of math, acronyms, bibliography formatting, epigraphs, hyperlinks, paper size. Akira also perfected the cross-referencing of quick quizzes, allowing easy and exact navigation between quick quizzes and their answers. He also added build options that permit quick quizzes to be hidden and to be gathered at the end of each chapter, textbook style. This role also includes the build system, which Akira has optimized and made much more user-friendly. His enhancements have included automating response to bibliography changes, automatically determining which source files are present, and automatically generating listings (with automatically generated hyperlinked line-number references) from the source files. \section{Reviewers} \begin{itemize} \item Alan Stern (\cref{chp:Advanced Synchronization: Memory Ordering}). \item Andy Whitcroft (\cref{sec:defer:RCU Fundamentals}, \cref{sec:defer:RCU Linux-Kernel API}). \item Artem Bityutskiy (\cref{chp:Advanced Synchronization: Memory Ordering}, \cref{chp:app:whymb:Why Memory Barriers?}). \item Dave Keck (\cref{chp:app:whymb:Why Memory Barriers?}). \item David S. Horner (\cref{sec:formal:Promela Parable: dynticks and Preemptible RCU}). \item Gautham Shenoy (\cref{sec:defer:RCU Fundamentals}, \cref{sec:defer:RCU Linux-Kernel API}). \item ``jarkao2'', AKA LWN guest \#41960 (\cref{sec:defer:RCU Linux-Kernel API}). \item Jonathan Walpole (\cref{sec:defer:RCU Linux-Kernel API}). \item Josh Triplett (\cref{chp:Formal Verification}). \item Michael Factor (\cref{sec:future:Transactional Memory}). \item Mike Fulton (\cref{sec:defer:RCU Fundamentals}). \item Peter Zijlstra (\cref{sec:defer:RCU Usage}). % Lanin and Shasha citation. \item Richard Woodruff (\cref{chp:app:whymb:Why Memory Barriers?}). \item Suparna Bhattacharya (\cref{chp:Formal Verification}). \item Vara Prasad (\cref{sec:formal:Promela Parable: dynticks and Preemptible RCU}). \end{itemize} Reviewers whose feedback took the extremely welcome form of a patch are credited in the git logs. \section{Machine Owners} Readers might have noticed some graphs showing scalability data out to several hundred CPUs, courtesy of my current employer, with special thanks to Paul Saab, Yashar Bayani, Joe Boyd, and Kyle McMartin. From back in my time at IBM, a great debt of thanks goes to Martin Bligh, who originated the Advanced Build and Test (ABAT) system at IBM's Linux Technology Center, as well as to Andy Whitcroft, Dustin Kirkland, and many others who extended this system. Many thanks go also to a great number of machine owners: Andrew Theurer, Andy Whitcroft, Anton Blanchard, Chris McDermott, Cody Schaefer, Darrick Wong, David ``Shaggy'' Kleikamp, Jon M. Tollefson, Jose R. Santos, Marvin Heffler, Nathan Lynch, Nishanth Aravamudan, Tim Pepper, and Tony Breeds. \section{Original Publications} \ListOriginalPublications \section{Figure Credits} \ListContributions \Cref{fig:defer:RCU Areas of Applicability} was adapted from \ppl{Fedor}{Pikus}'s ``When to use RCU'' slide~\cite{FedorPikus2017RCUthenWhat}. The discussion of mechanical reference counters in \cref{sec:defer:Reference Counting} stemmed from a private conversation with \ppl{Dave}{Regan}. \section{Other Support} We owe thanks to many CPU architects for patiently explaining the instruction- and memory-reordering features of their CPUs, particularly Wayne Cardoza, Ed Silha, Anton Blanchard, Tim Slegel, Juergen Probst, Ingo Adlung, Ravi Arimilli, Cathy May, Derek Williams, H.~Peter Anvin, Andy Glew, Leonid Yegoshin, Richard Grisenthwaite, and Will Deacon. Wayne deserves special thanks for his patience in explaining Alpha's reordering of dependent loads, a lesson that Paul resisted quite strenuously! The bibtex-generation service of the Association for Computing Machinery has saved us a huge amount of time and effort compiling the bibliography, for which we are grateful. Thanks are also due to Stamatis Karnouskos, who convinced me to drag my antique bibliography database kicking and screaming into the 21\textsuperscript{st} century. Any technical work of this sort owes thanks to the many individuals and organizations that keep Internet and the World Wide Web up and running, and this one is no exception. Portions of this material are based upon work supported by the National Science Foundation under Grant No.\@ CNS-0719851.