Apply ACM layout

This commit is contained in:
2024-05-24 10:13:39 +02:00
parent 92682a55d6
commit 304ff3c48a

View File

@@ -1,13 +1,118 @@
% This is samplepaper.tex, a sample chapter demonstrating the
% LLNCS macro package for Springer Computer Science proceedings;
% Version 2.20 of 2017/10/04
%
\documentclass[runningheads]{llncs}
%
%%
%% This is file `sample-sigconf.tex',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% samples.dtx (with options: `all,proceedings,bibtex,sigconf')
%%
%% IMPORTANT NOTICE:
%%
%% For the copyright see the source file.
%%
%% Any modified versions of this file must be renamed
%% with new filenames distinct from sample-sigconf.tex.
%%
%% For distribution of the original source see the terms
%% for copying and modification in the file samples.dtx.
%%
%% This generated file may be distributed as long as the
%% original source files, as listed above, are part of the
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%%
%%
%% Commands for TeXCount
%TC:macro \cite [option:text,text]
%TC:macro \citep [option:text,text]
%TC:macro \citet [option:text,text]
%TC:envir table 0 1
%TC:envir table* 0 1
%TC:envir tabular [ignore] word
%TC:envir displaymath 0 word
%TC:envir math 0 word
%TC:envir comment 0 0
%%
%%
%% The first command in your LaTeX source must be the \documentclass
%% command.
%%
%% For submission and review of your manuscript please change the
%% command to \documentclass[manuscript, screen, review]{acmart}.
%%
%% When submitting camera ready or to TAPS, please change the command
%% to \documentclass[sigconf]{acmart} or whichever template is required
%% for your publication.
%%
%%
% \documentclass[manuscript, screen, review]{acmart}
\documentclass[sigconf]{acmart}
%%
%% \BibTeX command to typeset BibTeX logo in the docs
\AtBeginDocument{%
\providecommand\BibTeX{{%
Bib\TeX}}}
% TODO...
%% Rights management information. This information is sent to you
%% when you complete the rights form. These commands have SAMPLE
%% values in them; it is your responsibility as an author to replace
%% the commands and values with those provided to you when you
%% complete the rights form.
\setcopyright{acmlicensed}
\copyrightyear{2018}
\acmYear{2018}
\acmDOI{XXXXXXX.XXXXXXX}
%% These commands are for a PROCEEDINGS abstract or paper.
\acmConference[MEMSYS 2024]{10th International Symposium on Memory Systems}{September 30--October 03,
2024}{Washington, DC}
%%
%% Uncomment \acmBooktitle if the title of the proceedings is different
%% from ``Proceedings of ...''!
%%
%%\acmBooktitle{Woodstock '18: ACM Symposium on Neural Gaze Detection,
%% June 03--05, 2018, Woodstock, NY}
% \acmISBN{978-1-4503-XXXX-X/18/06}
%%
%% Submission ID.
%% Use this when submitting an article to a sponsored event. You'll
%% receive a unique submission ID from the organizers
%% of the event, and this ID should be used as the parameter to this command.
%%\acmSubmissionID{123-A56-BU3}
%%
%% For managing citations, it is recommended to use bibliography
%% files in BibTeX format.
%%
%% You can then either use BibTeX with the ACM-Reference-Format style,
%% or BibLaTeX with the acmnumeric or acmauthoryear sytles, that include
%% support for advanced citation of software artefact from the
%% biblatex-software package, also separately available on CTAN.
%%
%% Look at the sample-*-biblatex.tex files for templates showcasing
%% the biblatex styles.
%%
%%
%% The majority of ACM publications use numbered citations and
%% references. The command \citestyle{authoryear} switches to the
%% "author year" style.
%%
%% If you are preparing content for an event
%% sponsored by ACM SIGGRAPH, you must use the "author year" style of
%% citations and references.
%% Uncommenting
%% the next command will enable that style.
%%\citestyle{acmauthoryear}
\usepackage{siunitx}
\usepackage[nameinlink,capitalize,noabbrev]{cleveref}
\usepackage{acro}
\usepackage[usenames,dvipsnames]{xcolor}
% \usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz}
\usepackage{circuitikz}
\usepackage{mathdots}
@@ -40,53 +145,137 @@
\begin{document}
%
\title{PIMSys:\\A Virtual Prototype for Processing in Memory}
% %
% %\titlerunning{Abbreviated paper title}
% % If the paper title is too long for the running head, you can set
% % an abbreviated paper title here
% %
% \author{%
% Derek Christ\inst{1}%\orcidID{0000-1111-2222-3333}
% \and
% Lukas Steiner\inst{2}%\orcidID{1111-2222-3333-4444}
% \and
% Matthias Jung\inst{1,3}%\orcidID{2222--3333-4444-5555}
% \and
% Norbert Wehn\inst{2}%\orcidID{2222--3333-4444-5555}
% }
% %
% \authorrunning{D. Christ et al.}
% % First names are abbreviated in the running head.
% % If there are more than two authors, 'et al.' is used.
% %
% \institute{
% Fraunhofer IESE, Germany\\
% \email{\{firstname.lastname\}@iese.fraunhofer.de}\\
% \and
% RPTU Kaiserslautern-Landau, Germany\\
% \email{\{firstname.lastname\}@rptu.de}\\
% \and
% JMU Würzburg, Germany\\
% \email{m.jung@uni-wuerzburg.de}
% }
%
%\titlerunning{Abbreviated paper title}
% If the paper title is too long for the running head, you can set
% an abbreviated paper title here
%
\author{%
Derek Christ\inst{1}%\orcidID{0000-1111-2222-3333}
\and
Lukas Steiner\inst{2}%\orcidID{1111-2222-3333-4444}
\and
Matthias Jung\inst{1,3}%\orcidID{2222--3333-4444-5555}
\and
Norbert Wehn\inst{2}%\orcidID{2222--3333-4444-5555}
%%
%% The "author" command and its associated commands are used to define
%% the authors and their affiliations.
%% Of note is the shared affiliation of the first two authors, and the
%% "authornote" and "authornotemark" commands
%% used to denote shared contribution to the research.
\author{Derek Christ}
\email{derek.christ@iese.fraunhofer.de}
% \orcid{1234-5678-9012}
\affiliation{%
\institution{Fraunhofer IESE}
\city{Kaiserslautern}
\country{Germany}
}
%
\authorrunning{D. Christ et al.}
% First names are abbreviated in the running head.
% If there are more than two authors, 'et al.' is used.
%
\institute{
Fraunhofer IESE, Germany\\
\email{\{firstname.lastname\}@iese.fraunhofer.de}\\
\and
RPTU Kaiserslautern-Landau, Germany\\
\email{\{firstname.lastname\}@rptu.de}\\
\and
JMU Würzburg, Germany\\
\email{m.jung@uni-wuerzburg.de}
}
%
\maketitle
\author{Lukas Steiner}
\email{lukas.steiner@rptu.de}
\affiliation{%
\institution{RPTU Kaiserslautern-Landau}
\city{Kaiserslautern}
\country{Germany}}
\author{Matthias Jung}
\email{m.jung@uni-wuerzburg.de}
\affiliation{%
\institution{JMU Würzburg}
\city{Würzburg}
\country{Germany}}
%%
%% By default, the full list of authors will be used in the page
%% headers. Often, this list is too long, and will overlap
%% other information printed in the page headers. This command allows
%% the author to define a more concise list
%% of authors' names for this purpose.
\renewcommand{\shortauthors}{D. Christ et al.}
%%
\begin{abstract}
Data-driven applications are increasingly central to our information technology society, propelled by AI techniques reshaping various sectors of our economy. Despite their transformative potential, these applications demand immense data processing, leading to significant energy consumption primarily in communication and data storage rather than computation. The concept of \ac{pim} offers a solution by processing data within memory, reducing energy overheads associated with data transfer. \Ac{pim} has been an enduring idea, with recent advancements in DRAM test chips integrating \ac{pim} functionality, indicating potential market adoption.
This paper introduces a virtual prototype of Samsung's PIM-HBM architecture, leveraging open-source tools like gem5 and DRAMSys, along with a custom Rust software library facilitating easy utilization of \ac{pim} functionality. Key contributions include the first gem5 based full-system simulation of PIM-HBM, experimental validation of the virtual platform with benchmarks, and the development of a Rust library enabling \ac{pim} functionality at the software level.
Our benchmarks evaluated an reduction in simulation time for \ac{pim} in the range of \qtyrange{6.0}{17.5}{\times} for different memory-bound workloads.
\keywords{DRAM \and PIM \and Virtual Platforms}
\end{abstract}
%
%
%
% TODO?
%%
%% The code below is generated by the tool at http://dl.acm.org/ccs.cfm.
%% Please copy and paste the code instead of the example below.
%%
% \begin{CCSXML}
% <ccs2012>
% <concept>
% <concept_id>00000000.0000000.0000000</concept_id>
% <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc>
% <concept_significance>500</concept_significance>
% </concept>
% <concept>
% <concept_id>00000000.00000000.00000000</concept_id>
% <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc>
% <concept_significance>300</concept_significance>
% </concept>
% <concept>
% <concept_id>00000000.00000000.00000000</concept_id>
% <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc>
% <concept_significance>100</concept_significance>
% </concept>
% <concept>
% <concept_id>00000000.00000000.00000000</concept_id>
% <concept_desc>Do Not Use This Code, Generate the Correct Terms for Your Paper</concept_desc>
% <concept_significance>100</concept_significance>
% </concept>
% </ccs2012>
% \end{CCSXML}
% \ccsdesc[500]{Do Not Use This Code~Generate the Correct Terms for Your Paper}
% \ccsdesc[300]{Do Not Use This Code~Generate the Correct Terms for Your Paper}
% \ccsdesc{Do Not Use This Code~Generate the Correct Terms for Your Paper}
% \ccsdesc[100]{Do Not Use This Code~Generate the Correct Terms for Your Paper}
%%
%% Keywords. The author(s) should pick words that accurately describe
%% the work being presented. Separate the keywords with commas.
\keywords{DRAM, PIM, Virtual Platforms}
% TODO?
% \received{20 February 2007}
% \received[revised]{12 March 2009}
% \received[accepted]{5 June 2009}
%%
%% This command processes the author and affiliation and title
%% information and builds the first part of the formatted document.
\maketitle
\section{Introduction}
\label{sec:intro}
% TODO Matthias
Data-driven applications are increasingly becoming the focal point of our information technology society, with AI techniques fundamentally altering various sectors of our society and economy. A common characteristic of these applications is the vast amount of data they require to be captured, stored, and processed. Consequently, many of these applications, e.\,g., \acp{llm} or other artificial intelligence workloads are bound by the memory performance.
Furthermore, a significant portion of energy is consumed by communication and data storage rather than computation. As demonstrated by Jouppi et al.~\cite{jouhyu_21}, in a 7nm process, a 32-bit floating-point multiplication requires \qty{1.31}{\pico\joule}, whereas a 64-bit DRAM memory access demands \qty{1300}{\pico\joule}. This energy is expended in transferring data from memory through the network on chip, arbiters, and various levels of caches. Hence, it would be considerably more energy-efficient to process data where it resides, particularly within the memory itself. This approach works very well with data-flow oriented applications. In other words, rather than transmitting data to computational units, the computational instructions should be sent to the memory housing the data.
Furthermore, a significant portion of energy is consumed by communication and data storage rather than computation. As demonstrated by Jouppi et al.~\cite{jouhyu_21}, in a 7nm process, a 32-bit floating-point multiplication requires \qty{1.31}{\pico\joule}, whereas a 64-bit DRAM memory access demands \qty{1300}{\pico\joule}. This energy is expended in transferring data from memory through the network on chip, arbiters, and various levels of caches. Hence, it would be considerably more energy-efficient to process data where it resides, particularly within the memory itself. This approach works very well with data-flow oriented applications. In other words, rather than transmitting data to computational units, the computational instructions should be sent to the memory housing the data.
This concept, known as \ac{pim}, has been around for many years. For instance, Stone already proposed it in the 1970s~\cite{sto_70}. Since then, similar to the field of artificial intelligence, this idea has experienced \enquote{summer} and \enquote{winter} periods in research over the past decades. However, recently, different companies have developed DRAM test chips with integrated \ac{pim} functionality, showing promising potential for entry into the market.
@@ -408,7 +597,7 @@ Furthermore, an examination of the wallclock time for simulations comparing non-
In this work, the first system-level virtual prototype of Samsung's \ac{fimdram} is presented, enabling the rapid exploration and feasibility analysis of various workloads in a realistic and detailed manner.
Looking ahead, future work should focus on expanding the software framework to a Linux implementation, enabling further research on real-world AI applications.
\bibliographystyle{IEEEtran}
\bibliography{references.bib}
\bibliographystyle{ACM-Reference-Format}
\bibliography{references}
\end{document}