report (roofline) begonnen, kernels implementiert, komische ergebnisse - irgendwo wird noch immer was wegoptimiert glaub ich

This commit is contained in:
Armin Friedl 2016-06-19 20:30:49 +02:00
parent cb39db61ce
commit 68b0b82100
22 changed files with 4943 additions and 0 deletions

View file

@ -0,0 +1,6 @@
According to the definition used the arithmetic intensity is measured by operations per byte. This might not be adequat for haswell processors (and later). Due to the fused multiply-add\footnote{although called multiply-add there are 36 different slightly instructions} extension two floating point operations can be performed with a single instruction.
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../report"
%%% End:

View file

@ -0,0 +1,6 @@
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../report"
%%% End:

View file

@ -0,0 +1,5 @@
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../report"
%%% End:

View file

@ -0,0 +1,34 @@
\subsection{Theoretical Peak Performance}
The CPU under test was a Intel\textregistered{} Core\texttrademark{} i5-4210U. \prettyref{tbl:spec-4210} shows the relevant specifications for this processor according to \textcite{ark4210}.
\begin{table}[h!]
\centering
\begin{tabular}{ll}
\toprule
Specification & Value \\
\midrule
Instruction Set Extension & SSE4.1/4.2, AVX 2.0 \\
\# of Cores & 2 \\
Processor Base Frequency & 1.7 GHz \\
Max Turbo Frequency & 2.7 GHz \\
Microarchitecture & Haswell \\
\bottomrule
\end{tabular}
\caption{Intel\textregistered{} Core\texttrademark{} i5-4210U processor specifications~\cite{ark4210}}
\label{tbl:spec-4210}
\end{table}
The 4th generation Intel Core processors provide FMA\footnote{Fused Multiply Add} and AVX\footnote{Advanced Vector Extension} extensions~\cite[5-2 Vol.1]{intel2016}. An FMA unit is capable of ``[...] 256-bit floating-point instructions to perform computation on
256-bit vectors''~\cite[5-28 Vol.1]{intel2016}. Therefore it can execute 2 (multiply-add) times 4 double-precision floating-point instructions each cycle. This results in 8 DP FLOPs per cycle.
Unfortunately no definite source could be found but according to \textcite{shimpi2012} the Haswell architecture has 2 FMA units, equalling to $2 * 8 = 16$ DP FLOPs per core. Furthermore there are 2 cores in a Core i5 processor. Taken together this results in $16 * 2 = 32$ DP FLOPs per cycle for both cores.
At max frequency the processor is therefore capable of a theoretical peak performance of $32*2.7 = 86.4$ GFLOP/s.
\printbibliography
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../report"
%%% End:

View file

@ -0,0 +1,11 @@
@Comment{$ biblatex control file $}
@Comment{$ biblatex version 2.3 $}
Do not modify this file!
This is an auxiliary file used by the 'biblatex' package.
This file may safely be deleted. It will be recreated as
required.
@Control{biblatex-control,
options = {2.3:0:0:1:0:0:1:1:0:0:0:0:1:1:3:1:79:+},
}

View file

@ -0,0 +1,43 @@
\relax
\providecommand\hyper@newdestlabel[2]{}
\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument}
\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined
\global\let\oldcontentsline\contentsline
\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}}
\global\let\oldnewlabel\newlabel
\gdef\newlabel#1#2{\newlabelxx{#1}#2}
\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
\AtEndDocument{\ifx\hyper@anchor\@undefined
\let\contentsline\oldcontentsline
\let\newlabel\oldnewlabel
\fi}
\fi}
\global\let\hyper@last\relax
\gdef\HyperFirstAtBeginDocument#1{#1}
\providecommand\HyField@AuxAddToFields[1]{}
\providecommand\HyField@AuxAddToCoFields[2]{}
\abx@aux@sortscheme{nty}
\providecommand \oddpage@label [2]{}
\@writefile{toc}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
\@writefile{lof}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
\@writefile{lot}{\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax }
\select@language{english}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\select@language{english}}
\@writefile{lof}{\defcounter {refsection}{0}\relax }\@writefile{lof}{\select@language{english}}
\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\select@language{english}}
\abx@aux@cite{ark4210}
\abx@aux@cite{intel2016}
\abx@aux@cite{shimpi2012}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{2}{section.1}}
\newlabel{sec:introduction}{{1}{2}{Introduction}{section.1}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {2}Roofline Model}{2}{section.2}}
\newlabel{sec:roofline}{{2}{2}{Roofline Model}{section.2}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Theoretical Peak Performance}{2}{subsection.2.1}}
\@writefile{lot}{\defcounter {refsection}{0}\relax }\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Intel\textregistered {} Core\texttrademark {} i5-4210U processor specifications~\cite {ark4210}\relax }}{2}{table.caption.2}}
\providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}}
\newlabel{tbl:spec-4210}{{1}{2}{Intel\textregistered {} Core\texttrademark {} i5-4210U processor specifications~\cite {ark4210}\relax }{table.caption.2}{}}
\@writefile{toc}{\defcounter {refsection}{0}\relax }\@writefile{toc}{\contentsline {section}{\numberline {3}Kernels}{2}{section.3}}
\newlabel{sec:kernels}{{3}{2}{Kernels}{section.3}{}}
\newlabel{LastPage}{{}{2}{}{page.2}{}}
\xdef\lastpage@lastpage{2}
\xdef\lastpage@lastpageHy{2}

View file

@ -0,0 +1,88 @@
% $ biblatex auxiliary file $
% $ biblatex bbl format version 2.3 $
% Do not modify the above lines!
%
% This is an auxiliary file used by the 'biblatex' package.
% This file may safely be deleted. It will be recreated by
% biber as required.
%
\begingroup
\makeatletter
\@ifundefined{ver@biblatex.sty}
{\@latex@error
{Missing 'biblatex' package}
{The bibliography requires the 'biblatex' package.}
\aftergroup\endinput}
{}
\endgroup
\refsection{0}
\sortlist{entry}{nty}
\entry{intel2016}{online}{}
\name{labelname}{1}{}{%
{{hash=ff97a9fdede09eaf6e1c8ec9f6a61dd5}{Intel}{I\bibinitperiod}{}{}{}{}{}{}}%
}
\name{author}{1}{}{%
{{hash=ff97a9fdede09eaf6e1c8ec9f6a61dd5}{Intel}{I\bibinitperiod}{}{}{}{}{}{}}%
}
\list{organization}{1}{%
{Intel}%
}
\strng{namehash}{ff97a9fdede09eaf6e1c8ec9f6a61dd5}
\strng{fullhash}{ff97a9fdede09eaf6e1c8ec9f6a61dd5}
\field{sortinit}{I}
\field{labeltitle}{Intel® 64 and IA-32 Architectures Software Developers Manual}
\field{month}{04}
\field{subtitle}{Combined Volumes: 1, 2A, 2B, 2C, 3A, 3B, 3C and 3D}
\field{title}{Intel® 64 and IA-32 Architectures Software Developers Manual}
\field{year}{2016}
\verb{url}
\verb https://www-ssl.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf
\endverb
\endentry
\entry{ark4210}{online}{}
\name{labelname}{1}{}{%
{{hash=7e5a7615b54a4cc38565e3ac9203a5f7}{{Intel\bibnamedelimb Ark}}{I\bibinitperiod}{}{}{}{}{}{}}%
}
\name{author}{1}{}{%
{{hash=7e5a7615b54a4cc38565e3ac9203a5f7}{{Intel\bibnamedelimb Ark}}{I\bibinitperiod}{}{}{}{}{}{}}%
}
\strng{namehash}{7e5a7615b54a4cc38565e3ac9203a5f7}
\strng{fullhash}{7e5a7615b54a4cc38565e3ac9203a5f7}
\field{sortinit}{I}
\field{labeltitle}{Intel® Core™ i5-4210U Processor Specifications}
\field{title}{Intel® Core™ i5-4210U Processor Specifications}
\field{urlday}{19}
\field{urlmonth}{06}
\field{urlyear}{2016}
\verb{url}
\verb http://ark.intel.com/products/81016/
\endverb
\endentry
\entry{shimpi2012}{online}{}
\name{labelname}{1}{}{%
{{hash=90477a83e2d5fae7fe1656c2ebd90b9d}{Shimpi}{S\bibinitperiod}{Anand\bibnamedelima Lal}{A\bibinitperiod\bibinitdelim L\bibinitperiod}{}{}{}{}}%
}
\name{author}{1}{}{%
{{hash=90477a83e2d5fae7fe1656c2ebd90b9d}{Shimpi}{S\bibinitperiod}{Anand\bibnamedelima Lal}{A\bibinitperiod\bibinitdelim L\bibinitperiod}{}{}{}{}}%
}
\strng{namehash}{90477a83e2d5fae7fe1656c2ebd90b9d}
\strng{fullhash}{90477a83e2d5fae7fe1656c2ebd90b9d}
\field{sortinit}{S}
\field{labeltitle}{Haswell's Wide Execution Engine}
\field{day}{05}
\field{month}{10}
\field{title}{Haswell's Wide Execution Engine}
\field{urlday}{19}
\field{urlmonth}{06}
\field{urlyear}{2016}
\field{year}{2012}
\verb{url}
\verb http://www.anandtech.com/show/6355/intels-haswell-architecture/8
\endverb
\endentry
\endsortlist
\endrefsection
\endinput

2006
roofline/report/report.bcf Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,14 @@
[0] Config.pm:318> INFO - This is Biber 1.8
[0] Config.pm:321> INFO - Logfile is 'report.blg'
[58] biber:275> INFO - === Sun Jun 19, 2016, 09:41:00
[58] Biber.pm:333> INFO - Reading 'report.bcf'
[134] Biber.pm:630> INFO - Found 3 citekeys in bib section 0
[147] Biber.pm:3053> INFO - Processing section 0
[164] Biber.pm:3190> INFO - Looking for bibtex format file 'roofline.bib' for section 0
[165] bibtex.pm:937> INFO - Decoding LaTeX character macros into UTF-8
[166] bibtex.pm:812> INFO - Found BibTeX data source 'roofline.bib'
[199] Biber.pm:2939> INFO - Overriding locale 'en_US.UTF-8' default tailoring 'variable = shifted' with 'variable = non-ignorable'
[199] Biber.pm:2945> INFO - Sorting 'entry' list 'nty' keys
[199] Biber.pm:2949> INFO - No sort tailoring available for locale 'en_US.UTF-8'
[204] bbl.pm:482> INFO - Writing 'report.bbl' with encoding 'UTF-8'
[205] bbl.pm:555> INFO - Output to report.bbl

View file

@ -0,0 +1,223 @@
# Fdb version 3
["biber report"] 1466322059 "report.bcf" "report.bbl" "report" 1466322515
"report.bcf" 1466322515 91879 afa4c035d42f298e09198d1ac33d10c9 ""
"roofline.bib" 1466321832 1950 27e6f34d55d8a945170312496bac82cc ""
(generated)
"report.bbl"
"report.blg"
["pdflatex"] 1466322514 "report.tex" "report.pdf" "report" 1466322515
"/usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-ec.enc" 1254269338 2375 baa924870cfb487815765f9094cf3728 ""
"/usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-mathit.enc" 1202520719 2405 5dcf2c1b967ee25cc46c58cd52244aed ""
"/usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-mathsy.enc" 1202520719 2840 216e6e45ad352e2456e1149f28885bee ""
"/usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-rm.enc" 1202520719 2327 9d6df24f9c4f7368395224341a95523a ""
"/usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-ts1.enc" 1254269338 3031 6c4d3515bf7115d8518af1c9ab97ca44 ""
"/usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map" 1272929888 3287 e6b82fe08f5336d4d5ebc73fb1152e87 ""
"/usr/share/texlive/texmf-dist/fonts/map/pdftex/updmap/pdftex.map" 1396833912 1422999 120086736902aeebe94d194ffde31e04 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1095.tfm" 1136768653 3584 929cdff2b7a8c11bd4d49fd68cb0ae70 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm" 1246382020 916 f87d7c45f9c908e672703b83b72241a3 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm" 1246382020 924 9904cf1d39e9767e7a3622f2a125a565 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm" 1246382020 928 2dc8d444221b7a635bb58038579b861a ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm" 1246382020 908 2921f8a10601f252058503cc6570e581 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm" 1246382020 940 75ac932a52f80982a9f8ea75d03a34cf ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm" 1246382020 940 228d6584342e91276bf566bcf9716b83 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmr10.tfm" 1136768653 1296 45809c5a464d5f32c8f98ba97c1bb47f ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmbx10.tfm" 1254269338 12076 b54175e02101bea1addf6b2d0197ed12 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmbx12.tfm" 1254269338 12088 d750ac78274fa7c9f73ba09914c04f8a ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmcsc10.tfm" 1254269338 11276 116dd5bea6621ce4a1999f96d876084c ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr10.tfm" 1254269338 12056 7e13df7fe4cbce21b072ba7c4f4deb6e ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr12.tfm" 1254269338 12092 7b1546e2d096cfd5dcbd4049b0b1ec2e ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr6.tfm" 1254269338 12048 c1068d0f4772be9b0ec447692e1d6d82 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr8.tfm" 1254269338 12064 a35db870f0b76c338d749c56dc030ef5 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr9.tfm" 1254269338 12084 b7f5e4c003de6f57f07c7e9fee73a37c ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmri10.tfm" 1254269338 17148 9556e1b5f936b77a796f68d2d559ba99 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmtt10.tfm" 1254269338 1372 2ef2c2b492b3c4cd7879fe083abbb061 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmex10.tfm" 1148093231 992 ce925c9346c7613270a79afbee98c070 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi10.tfm" 1148093231 1528 6d36b2385e0ca062a654de6ac59cb34f ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi12.tfm" 1148093231 1524 753b192b18f2991794f9d41a8228510b ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi5.tfm" 1148093231 1508 198f5b7b99b5769126de3a533f6fc334 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi6.tfm" 1148093231 1512 94a3fd88c6f27dbd9ecb46987e297a4e ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi7.tfm" 1148093231 1528 d5b028dd23da623848ef0645c96a1ed7 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi8.tfm" 1148093231 1520 a3fe5596932db2db2cbda300920dd4e9 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi9.tfm" 1148093231 1524 cdf05765c2a8bdb569ea0aa208fb0947 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy10.tfm" 1148093231 1308 02cc510f9dd6012e5815d0c0ffbf6869 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy5.tfm" 1148093231 1296 54ed1a711e2303d5282575278e3620b0 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy6.tfm" 1148093231 1300 b0605d44c16c22d99dc001808e4f24ea ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy7.tfm" 1148093231 1304 32f22a15acc296b2a4e15698403dcb88 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy8.tfm" 1148093231 1304 cdc9a17df9ef0d2dc320eff37bbab1c4 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy9.tfm" 1148093231 1300 ca37bc0213808d24f74bf4d32f81f80d ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr10.tfm" 1254269338 11868 4f81e9b6033c032bdaf9884f4d7ef412 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr12.tfm" 1254269338 11888 6841b91e46b65cf41a49b160e6e74130 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr5.tfm" 1254269338 11804 aefb10c002e6492c25236524a447f969 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr6.tfm" 1254269338 11836 e3b6ce3e601aec94f64a536e7f4224d5 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr7.tfm" 1254269338 11852 5a9022f105fd1ee2797df861e79ae9a0 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr8.tfm" 1254269338 11864 309fd7f43e4a0ba39f6f7644d76e8edf ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr9.tfm" 1254269338 11884 c93929a6974dce79eabb778f219d7e18 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ts1-lmr10.tfm" 1254269338 1556 b86d923e6b2f9aab2e313098a95cb0b8 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ts1-lmri10.tfm" 1254269338 1764 bd63b6aa2f40108e63ad65c1421568c6 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm" 1302307949 848 f478e0761563bbc369eca609a1741348 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary5.tfm" 1302307949 848 e1bc58a31b9ed9c3729ffea165acfaac ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary6.tfm" 1302307949 848 068dd119e13b75777e62821af7d4f2a6 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary7.tfm" 1302307949 848 26631fcb3e4cb6757598b9cda7967b63 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary8.tfm" 1302307949 848 6125cdd3627e68d3db8013b98e587508 ""
"/usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary9.tfm" 1302307949 848 594c171945930dfc7cc52fb30457c803 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmbx10.pfb" 1255129361 121021 1bf809ce4a594679006bd72263eba59b ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmbx12.pfb" 1255129361 116908 1fca96723793882c2e0160350c192fc8 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmcsc10.pfb" 1255129361 116427 4a5b1ccaa7cce719091920a86b58608d ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmmi10.pfb" 1254269338 30388 702fae6a5f0e6e9c48a1d872b442ffcf ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr10.pfb" 1255129361 119235 f35b44530a1d90eb90fe15d9cba67ea0 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr12.pfb" 1255129361 113634 f99c44d58bae0863375faf0e1d74d612 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr6.pfb" 1255129361 123394 d390152bb30feeb496aaaa93299ee9ba ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr8.pfb" 1255129361 122174 a7a08406857c9530a0320a2517f60370 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr9.pfb" 1255129361 121065 50bbfa703ce7e11638752ef5a6d120c7 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmri10.pfb" 1255129361 112593 fda2373ba4420af33949610de4c28fe8 ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmsy10.pfb" 1254269338 27863 09ce3735688ffde955e72da27c95b61a ""
"/usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmtt10.pfb" 1255129361 113227 1010e11451afc2822c95dae77c390042 ""
"/usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii" 1337017135 71627 94eb9990bed73c364d7f53f960cc8c5b ""
"/usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf" 1367878877 6963 2e0cb3d93aa64508bdb0db58ae900d97 ""
"/usr/share/texlive/texmf-dist/tex/generic/babel/babel.def" 1395780385 49536 e1475dd245ff2196764ba5b91ac63714 ""
"/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty" 1395780385 13162 52453613e672419375f5bc44def13451 ""
"/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty" 1284331290 1458 43ab4710dc82f3edeabecd0d099626b2 ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty" 1303254447 8237 52810bdb4db2270e717422560a104aea ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty" 1338332114 189108 8b3553a56c83ff61acecb36b75d817e2 ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty" 1338332114 70752 45fa392800e07da61fa13446ad46b34d ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty" 1303254447 7324 11d14f318d865f420e692d4e6c9c18c3 ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty" 1303254447 7140 ece2cc23d9f20e1f53975ac167f42d3e ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty" 1335995445 8253 3bdedc8409aa5d290a2339be6f09af03 ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty" 1335995445 18425 775b341047ce304520cc7c11ca41392e ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdfescape.sty" 1335995445 18878 01274e6f43a7e13e09c80db9f3f7ab8d ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty" 1335995445 19987 01cb2f3c1d21e5f05711b7fd50b17f2a ""
"/usr/share/texlive/texmf-dist/tex/generic/oberdiek/stringenc.sty" 1335995445 21411 70ecd8a9f06f9e1b670126554a62ea3e ""
"/usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkeyval.tex" 1350473462 25158 17ce5e17c509c8ed5fd67545bd467826 ""
"/usr/share/texlive/texmf-dist/tex/latex/adjustbox/adjcalc.sty" 1337209790 5413 28ccf87dc7aa0cb642dca714a24a0e0e ""
"/usr/share/texlive/texmf-dist/tex/latex/adjustbox/adjustbox.sty" 1337644619 34406 e1a62300781a9f8a5ca0a38d16b34d67 ""
"/usr/share/texlive/texmf-dist/tex/latex/adjustbox/tc-pdftex.def" 1337209790 1442 51243195f4fdf731a12f15ee33772346 ""
"/usr/share/texlive/texmf-dist/tex/latex/adjustbox/trimclip.sty" 1337209790 7112 f0440fa8b74253e1bc8b4f4227a9df9d ""
"/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty" 1359763108 5949 3f3fd50a8cc94c3d4cbf4fc66cd3df1c ""
"/usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty" 1359763108 13829 94730e64147574077f8ecfea9bb69af4 ""
"/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd" 1359763108 961 6518c6525a34feb5e8250ffa91731cff ""
"/usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd" 1359763108 961 d02606146ba5601b5645f987c92e6193 ""
"/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty" 1362954379 2412 2d98314dc5be38f455f8890deeb2d091 ""
"/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty" 1362954379 4357 ad30ad08920902fc9b38caf35a3b0496 ""
"/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty" 1362954379 79178 b2e326c351e876df0e5e23df2e02441b ""
"/usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty" 1362954379 4082 502152465aedb8f6a3c4b0b7c0fa8ae5 ""
"/usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty" 1362954379 2637 846ebe982d3549c7ede7ce135456f54a ""
"/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty" 1254151887 4435 b97063eb2f20be499e7725926af85c55 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty" 1254151887 5022 2ec7815b07dc68e65542e23a180bc839 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty" 1254151887 4388 1cb2ca8d423695bd22ea8d126c276f33 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu" 1254151887 1868 39c80c053f689193a1ca9a83d05b2744 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu" 1254151887 2620 9a36ef7e0369aa29d9d298a6bf19588e ""
"/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def" 1254151887 9172 67c33288b50eb57eab968f345e8befb0 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu" 1254151887 7480 2a6bcf9edfeb9ff088a3f0cf7f1a196c ""
"/usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty" 1312312491 15509 394096bec6a284398e0b3ead6d33977e ""
"/usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd" 1254151887 2070 a9b43c0e3cee84bb3927d80d70ee10ce ""
"/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def" 1254151887 7630 8f51e48866ebfd08b8299888bbe81549 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu" 1254151887 4798 d0223689adb350a9cf3c5009ca803474 ""
"/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def" 1254151887 6350 d390538f995713c986118b8607d58f49 ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx" 1368140502 1644 4d42a3eca295cede45aa88bb630daceb ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/standard.bbx" 1382914355 23804 71cb94f13ce41590e2a86a15cfa8b384 ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.cfg" 1342308459 69 249fa6df04d948e51b6d5c67bea30c42 ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.def" 1382914355 92307 15c0a40ae6782678277a8f312dce1bb9 ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty" 1385507566 3387 3f6713ee9e8af9dc4cfde171f065c3da ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex2.sty" 1385332815 313191 61458f8dd82eeb591194c18eae735f20 ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-compat.def" 1342308459 4086 42d5b47084f1ee2956074d4dd65fa2b0 ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-dm.def" 1382914355 27316 2338ec9c111df021da3d9cd58e1e54dc ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/cbx/numeric.cbx" 1373585787 4386 6a7ab103e336f0719186c2df3484a1ad ""
"/usr/share/texlive/texmf-dist/tex/latex/biblatex/lbx/english.lbx" 1373585787 31302 6e1f681c7036f23773f9abcb5b31075b ""
"/usr/share/texlive/texmf-dist/tex/latex/booktabs/booktabs.sty" 1211777752 6375 989ecfb545a13610facc71ae7e40ced1 ""
"/usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty" 1368312746 65148 c61accbd2b9a5316d9be0887ec48d722 ""
"/usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty" 1368312746 62748 b02c0dc118f5f35146d37cec569e83b1 ""
"/usr/share/texlive/texmf-dist/tex/latex/caption/subcaption.sty" 1360019375 4351 ee16013c18d101f9ecb20e53efde17b4 ""
"/usr/share/texlive/texmf-dist/tex/latex/collectbox/collectbox.sty" 1337644648 9116 495d44b5a3e7be0c46c5d1f053f457f0 ""
"/usr/share/texlive/texmf-dist/tex/latex/enumitem/enumitem.sty" 1317339792 42666 6fa770e3485520a6a5f2ea7d259c8f8d ""
"/usr/share/texlive/texmf-dist/tex/latex/eso-pic/eso-pic.sty" 1381444076 11590 2a66b78f3da61ad137452c2777f21b6b ""
"/usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty" 1214928088 15274 9f6a2469ac8ebe6168e12b8f32cbe599 ""
"/usr/share/texlive/texmf-dist/tex/latex/etoolbox/etoolbox.sty" 1294098555 41188 02561c41bb08b479074b6e76f0b7d639 ""
"/usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty" 1338588508 22449 7ec15c16d0d66790f28e90343c5434a3 ""
"/usr/share/texlive/texmf-dist/tex/latex/graphics/dvipsnam.def" 1156702488 4874 4251d89f9985d46c9ec7bed85727beb1 ""
"/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty" 1254151804 14183 42a8fc761b806986eef292369afc2988 ""
"/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty" 1156702488 7882 3bd78469d444e8d494e27cfd7ca92719 ""
"/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty" 1156702488 2266 7054435e4584a41cf53b0a7ca624d0cb ""
"/usr/share/texlive/texmf-dist/tex/latex/graphics/lscape.sty" 1156702488 1475 c890537707f4b8611b7e92b8eb7f49aa ""
"/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty" 1156702488 3153 c50e6bd54d2dd3933fc52bcf369bec4a ""
"/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def" 1352416072 51837 247bd8424b3835ef78c236dc1e0b4aef ""
"/usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty" 1352416072 231792 5fc9dc7dd667e773a766ecc63bba7f4b ""
"/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty" 1351899753 12847 25b617d63258c4f72870c883493a3cf8 ""
"/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def" 1352416072 14005 155ac8fad2e5dd7c2cdd130fabd96633 ""
"/usr/share/texlive/texmf-dist/tex/latex/ifoddpage/ifoddpage.sty" 1316197439 1363 ad3d0d4483ff3ebcb79acd04d371b213 ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/scrartcl.cls" 1388099916 127355 a7fdf27ceac23f5cd35029e19ee5ae8e ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/scrbase.sty" 1388099916 55703 8d34659e3bbcb46e729fb4d093891dde ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/scrkbase.sty" 1388099916 12379 3e204271e403e344e17ea6f271e1cb9e ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/scrlfile.sty" 1388099916 15847 761a87489e4c6c4c729b168a58a59b20 ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/scrsize11pt.clo" 1388099916 6266 ec5a927b5ca7467339876cecc7be43ce ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/tocbasic.sty" 1388099916 24027 7b4ce5935b179707cac172da66829e7a ""
"/usr/share/texlive/texmf-dist/tex/latex/koma-script/typearea.sty" 1388099916 41596 d65c9f746399b09ef87b07ec8a6b458e ""
"/usr/share/texlive/texmf-dist/tex/latex/lastpage/lastpage.sty" 1359502492 10081 7caa8a4742ed47ad6e4429dd16632450 ""
"/usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg" 1254097189 802 7b8c8d72c24d795ed7720e4dfd29bff3 ""
"/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg" 1279039959 678 4792914a8f45be57bb98413425e4c7af ""
"/usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg" 1278958963 3563 d35e897cae3b8c6848f6677b73370b54 ""
"/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg" 1254097189 235 6031e5765137be07eed51a510b2b8fb7 ""
"/usr/share/texlive/texmf-dist/tex/latex/listings/listings.cfg" 1394061314 1828 1429ae58d32ff215bffb2acf697ae41a ""
"/usr/share/texlive/texmf-dist/tex/latex/listings/listings.sty" 1394061314 80361 048fe35275a1096660ea67eecd2213f4 ""
"/usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty" 1394061314 93168 df9863fadbf023e458067a158925eff9 ""
"/usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty" 1394061314 89980 e97cebbc4f0eae4011a8bea389a05d0a ""
"/usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty" 1394061314 86841 4fa558f6bbd8f3d49e175c0dd27ff41a ""
"/usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty" 1394061314 77029 dfe676ac1c76cfa220c8107472a1da27 ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/lmodern.sty" 1257296302 1606 c17281c7cff2bbd7ff0173e1433487ec ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/omllmm.fd" 1257296302 888 44447a3a3af84a22454ef89500942d93 ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/omslmsy.fd" 1257296302 805 af340a8260c447aa315cfc740ff0152f ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/omxlmex.fd" 1257296302 566 a94661f7b66063f191960bb7935b6ba2 ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/ot1lmr.fd" 1257296302 1880 bae7b659316f7344a86218ad38b01d91 ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/t1lmr.fd" 1257296302 1865 afbfccbe7fda9c2dc5078ad7c486bbed ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/t1lmtt.fd" 1257296302 2681 354015af3b61e7be30009f084986375a ""
"/usr/share/texlive/texmf-dist/tex/latex/lm/ts1lmr.fd" 1257296302 1912 6435298ac30b512714b02d4c8c9e923c ""
"/usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.def" 1284153563 1620 fb1c32b818f2058eca187e5c41dfae77 ""
"/usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.sty" 1284153563 6187 b27afc771af565d3a9ff1ca7d16d0d46 ""
"/usr/share/texlive/texmf-dist/tex/latex/microtype/microtype-pdftex.def" 1369617620 48788 102de9fe36ddc0fb46fd6734b1f3e8fb ""
"/usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.cfg" 1369617620 23086 f25ab3218b2c6f172ac44dbf381961e1 ""
"/usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.sty" 1369617620 68045 fe140a1fc105016163d67aadd9efe194 ""
"/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-cmr.cfg" 1369617620 22870 325932b16ad70b85d54e89a202d41e4e ""
"/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msa.cfg" 1369617620 5894 a699e762642ac16b337d6067aaf54745 ""
"/usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msb.cfg" 1369617620 5559 1c6d4ff49366e01a7e25eb35b4526685 ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty" 1303254447 3834 707ef09f31d7d2ea47ba89974755dfe0 ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty" 1303254447 12029 04d7fdf76e0464c23b5aa3a727952d7c ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty" 1335995445 7075 bd0c34fbf1ae8fd1debd2a554e41b2d5 ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty" 1335995445 22417 c74ff4af6a1aa2b65d1924020edbbe11 ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/listingsutf8.sty" 1335995445 5016 b1ea28ea48b1f963f9f39bec14c11fa2 ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/pdflscape.sty" 1335995445 6534 e0e842a7712d799f3e6bbcbedd28e578 ""
"/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty" 1303254447 9581 1158efc648bc09d5064db5703c882159 ""
"/usr/share/texlive/texmf-dist/tex/latex/pdfpages/pdfpages.sty" 1377467854 51227 e7dc1f34ba805af6251ecb7986bb034f ""
"/usr/share/texlive/texmf-dist/tex/latex/pdfpages/pppdftex.def" 1377467854 5975 e550dcf6f005a7223bb41a05edf0e99d ""
"/usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def" 1306616590 55368 3c8a0d99822330f2dfabc0dfb09ce897 ""
"/usr/share/texlive/texmf-dist/tex/latex/placeins/placeins.sty" 1137110565 4087 636308456f60d2b31cbf97867db5708d ""
"/usr/share/texlive/texmf-dist/tex/latex/prettyref/prettyref.sty" 1225934314 1242 616af7f53731043b7fdf82cf56e3d04b ""
"/usr/share/texlive/texmf-dist/tex/latex/spverbatim/spverbatim.sty" 1250616370 1246 642688183f0e6cf4fbcfea8bf7197632 ""
"/usr/share/texlive/texmf-dist/tex/latex/stmaryrd/Ustmry.fd" 1137110872 1766 216b0f832c406513647608b5bb9bb8ff ""
"/usr/share/texlive/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty" 1302307949 11080 aa7f81da60ce104f0dbb8b827dd14383 ""
"/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty" 1254151720 13146 3e38b06d6e7ca62ce1bdb63b0d6148a5 ""
"/usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty" 1254151720 10075 18f0ccff816231e9905cd2b3a482a622 ""
"/usr/share/texlive/texmf-dist/tex/latex/tools/tabularx.sty" 1254151720 6076 90ca6002d5df607cc27699a4af5ff84e ""
"/usr/share/texlive/texmf-dist/tex/latex/tools/xspace.sty" 1312409015 4405 b7f0681f78908bf1aa3cd73228e9fd38 ""
"/usr/share/texlive/texmf-dist/tex/latex/url/url.sty" 1388531844 12796 8edb7d69a20b857904dd0ea757c14ec9 ""
"/usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty" 1238697683 10894 d359a13923460b2a73d4312d613554c8 ""
"/usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty" 1169481954 55224 a43bab84e0ac5e6efcaf9a98bde73a94 ""
"/usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty" 1350473462 4934 09bb8eb3760faa4ffb6107a36e5b3d76 ""
"/usr/share/texlive/texmf-dist/web2c/texmf.cnf" 1455657841 31706 2be2b4306fae7fc20493e3b90c2ad04d ""
"/usr/share/texlive/texmf-var/web2c/pdftex/pdflatex.fmt" 1457104667 3492982 6abaa3262ef9227a797168d32888676c ""
"inputs/introduction.tex" 1466184626 76 eaf0f76fa74815989416f6f6d1c36f8b ""
"inputs/kernels.tex" 1466184646 75 4edfbf753fb138c9886dd119053949bf ""
"inputs/roofline.tex" 1466322509 1792 a3845b1693aec867d3f46858c07ec013 ""
"report.aux" 1466322515 2788 4892a9d7c60d167f3d3537cd14c92771 ""
"report.bbl" 1466322060 3223 ce3ddc157f94d892fa1b99fec0178ae6 "biber report"
"report.out" 1466322515 215 21009a5097f574513247fac8a4dbea2b ""
"report.run.xml" 1466322515 2317 80d7743117fafc51b1e42b536d793f68 ""
"report.tex" 1466315411 4696 6843a253389bab427c21453a2d59d4f2 ""
"report.toc" 1466322515 597 55965c7d19a220597fef3106741dc405 ""
(generated)
"report.bcf"
"report.aux"
"report.log"
"report-blx.bib"
"report.pdf"
"report.run.xml"
"report.toc"
"report.out"

392
roofline/report/report.fls Normal file
View file

@ -0,0 +1,392 @@
PWD /home/armin/dev/hpc/roofline/report
INPUT /usr/share/texlive/texmf-dist/web2c/texmf.cnf
INPUT /usr/share/texlive/texmf-var/web2c/pdftex/pdflatex.fmt
INPUT report.tex
OUTPUT report.log
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrartcl.cls
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrartcl.cls
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrkbase.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrkbase.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrbase.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrbase.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrlfile.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrlfile.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/tocbasic.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/tocbasic.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrsize11pt.clo
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/scrsize11pt.clo
INPUT /usr/share/texlive/texmf-dist/fonts/map/fontname/texfonts.map
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/cm/cmr10.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/typearea.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/koma-script/typearea.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
INPUT /usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
INPUT /usr/share/texlive/texmf-dist/tex/generic/babel/babel.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/utf8.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/xcolor/xcolor.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/color.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/pdftex-def/pdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/dvipsnam.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/dvipsnam.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsmath.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amstext.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsgen.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsbsy.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsmath/amsopn.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amssymb.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/amsfonts.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/stmaryrd/stmaryrd.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/graphics.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/pdflscape.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/pdflscape.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/lscape.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/graphics/lscape.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/listingsutf8.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/listingsutf8.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/listings.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/listings.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/listings.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/listings.cfg
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/stringenc.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/stringenc.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdfescape.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdfescape.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/spverbatim/spverbatim.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/spverbatim/spverbatim.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/placeins/placeins.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/placeins/placeins.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/lmodern.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/lmodern.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/booktabs/booktabs.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/booktabs/booktabs.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/jknappen/ec/ecrm1095.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype-pdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype-pdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/microtype.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/framed/framed.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hyperref.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/url/url.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/url/url.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/prettyref/prettyref.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/prettyref/prettyref.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/lastpage/lastpage.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/lastpage/lastpage.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/caption/subcaption.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/caption/subcaption.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/caption/caption.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/caption/caption3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/tabularx.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/tabularx.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/array.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/adjustbox.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/adjustbox.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/xkeyval/xkeyval.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/xkeyval/xkeyval.tex
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/adjcalc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/adjcalc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/trimclip.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/trimclip.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/collectbox/collectbox.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/collectbox/collectbox.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/tc-pdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/adjustbox/tc-pdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/ifoddpage/ifoddpage.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/ifoddpage/ifoddpage.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/ifoddpage/ifoddpage.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/varwidth/varwidth.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/pdfpages/pdfpages.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/pdfpages/pdfpages.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/eso-pic/eso-pic.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/eso-pic/eso-pic.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/pdfpages/pppdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/pdfpages/pppdftex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/xspace.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/tools/xspace.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/enumitem/enumitem.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/enumitem/enumitem.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/etoolbox/etoolbox.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/etoolbox/etoolbox.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/etex-pkg/etex.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/logreq/logreq.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-dm.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-dm.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-compat.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/blx-compat.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/numeric.bbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/standard.bbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/bbx/standard.bbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/cbx/numeric.cbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/cbx/numeric.cbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/biblatex.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/textcomp.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.def
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1enc.dfu
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang1.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang2.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstlang3.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/lbx/english.lbx
INPUT /usr/share/texlive/texmf-dist/tex/latex/biblatex/lbx/english.lbx
INPUT report.aux
INPUT report.aux
OUTPUT report.aux
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/base/ts1cmr.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/t1lmr.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/t1lmr.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr10.tfm
INPUT /usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii
INPUT /usr/share/texlive/texmf-dist/tex/context/base/supp-pdf.mkii
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/mt-cmr.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/mt-cmr.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
INPUT /usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
INPUT /usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty
INPUT report.out
INPUT report.out
INPUT report.out
INPUT report.out
OUTPUT report.pdf
INPUT ./report.out
INPUT ./report.out
OUTPUT report.out
OUTPUT report.bcf
INPUT report.bbl
INPUT report.bbl
INPUT report.bbl
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmbx10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmbx12.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmbx12.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmbx12.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr12.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/ot1lmr.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/ot1lmr.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr12.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr7.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/omllmm.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/omllmm.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi12.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi7.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/omslmsy.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/omslmsy.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy7.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/omxlmex.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/omxlmex.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmex10.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsa.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msa.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msa.cfg
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/amsfonts/umsb.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msb.cfg
INPUT /usr/share/texlive/texmf-dist/tex/latex/microtype/mt-msb.cfg
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/stmaryrd/Ustmry.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/stmaryrd/Ustmry.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary7.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmri10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr8.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr6.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi8.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi6.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy8.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy6.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam7.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm7.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary8.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary6.tfm
INPUT report.toc
INPUT report.toc
OUTPUT report.toc
INPUT /usr/share/texlive/texmf-dist/fonts/map/pdftex/updmap/pdftex.map
INPUT inputs/introduction.tex
INPUT inputs/introduction.tex
INPUT inputs/roofline.tex
INPUT inputs/roofline.tex
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/ts1lmr.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/ts1lmr.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ts1-lmr10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr8.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr9.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr9.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/rm-lmr5.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi9.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmmi5.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy9.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/lmsy5.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msam5.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/amsfonts/symbols/msbm5.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary9.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/stmaryrd/stmary5.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmr6.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ts1-lmri10.tfm
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmcsc10.tfm
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/t1lmtt.fd
INPUT /usr/share/texlive/texmf-dist/tex/latex/lm/t1lmtt.fd
INPUT /usr/share/texlive/texmf-dist/fonts/tfm/public/lm/ec-lmtt10.tfm
INPUT inputs/kernels.tex
INPUT inputs/kernels.tex
INPUT report.aux
INPUT ./report.out
INPUT ./report.out
INPUT report.run.xml
OUTPUT report.run.xml
INPUT /usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-ec.enc
INPUT /usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-ts1.enc
INPUT /usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-mathit.enc
INPUT /usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-mathsy.enc
INPUT /usr/share/texlive/texmf-dist/fonts/enc/dvips/lm/lm-rm.enc
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmbx10.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmbx12.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmcsc10.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmmi10.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr10.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr12.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr6.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr8.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmr9.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmri10.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmsy10.pfb
INPUT /usr/share/texlive/texmf-dist/fonts/type1/public/lm/lmtt10.pfb

1503
roofline/report/report.log Normal file

File diff suppressed because it is too large Load diff

BIN
roofline/report/report.pdf Normal file

Binary file not shown.

View file

@ -0,0 +1,85 @@
<?xml version="1.0" standalone="yes"?>
<!-- logreq request file -->
<!-- logreq version 1.0 / dtd version 1.0 -->
<!-- Do not edit this file! -->
<!DOCTYPE requests [
<!ELEMENT requests (internal | external)*>
<!ELEMENT internal (generic, (provides | requires)*)>
<!ELEMENT external (generic, cmdline?, input?, output?, (provides | requires)*)>
<!ELEMENT cmdline (binary, (option | infile | outfile)*)>
<!ELEMENT input (file)+>
<!ELEMENT output (file)+>
<!ELEMENT provides (file)+>
<!ELEMENT requires (file)+>
<!ELEMENT generic (#PCDATA)>
<!ELEMENT binary (#PCDATA)>
<!ELEMENT option (#PCDATA)>
<!ELEMENT infile (#PCDATA)>
<!ELEMENT outfile (#PCDATA)>
<!ELEMENT file (#PCDATA)>
<!ATTLIST requests
version CDATA #REQUIRED
>
<!ATTLIST internal
package CDATA #REQUIRED
priority (9) #REQUIRED
active (0 | 1) #REQUIRED
>
<!ATTLIST external
package CDATA #REQUIRED
priority (1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) #REQUIRED
active (0 | 1) #REQUIRED
>
<!ATTLIST provides
type (static | dynamic | editable) #REQUIRED
>
<!ATTLIST requires
type (static | dynamic | editable) #REQUIRED
>
<!ATTLIST file
type CDATA #IMPLIED
>
]>
<requests version="1.0">
<internal package="biblatex" priority="9" active="0">
<generic>latex</generic>
<provides type="dynamic">
<file>report.bcf</file>
</provides>
<requires type="dynamic">
<file>report.bbl</file>
</requires>
<requires type="static">
<file>blx-dm.def</file>
<file>blx-compat.def</file>
<file>biblatex.def</file>
<file>numeric.bbx</file>
<file>standard.bbx</file>
<file>numeric.cbx</file>
<file>biblatex.cfg</file>
<file>english.lbx</file>
</requires>
</internal>
<external package="biblatex" priority="5" active="0">
<generic>biber</generic>
<cmdline>
<binary>biber</binary>
<infile>report</infile>
</cmdline>
<input>
<file>report.bcf</file>
</input>
<output>
<file>report.bbl</file>
</output>
<provides type="dynamic">
<file>report.bbl</file>
</provides>
<requires type="dynamic">
<file>report.bcf</file>
</requires>
<requires type="editable">
<file>roofline.bib</file>
</requires>
</external>
</requests>

123
roofline/report/report.tex Normal file
View file

@ -0,0 +1,123 @@
\documentclass[a4paper, DIV=12]{scrartcl}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[dvipsnames]{xcolor}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{stmaryrd}
\usepackage{graphicx}
\usepackage{pdflscape}
\usepackage{listingsutf8}
\usepackage{spverbatim}
\usepackage{placeins}
\usepackage{lmodern}
%\usepackage{helvet}
\usepackage{booktabs}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\usepackage{framed}
\usepackage[colorlinks=true,
linkcolor=blue,
urlcolor=blue,
breaklinks=true,
citecolor=blue]{hyperref}
\usepackage{prettyref}
\usepackage{lastpage}
\usepackage{subcaption}
\usepackage{tabularx}
\usepackage{adjustbox}
\usepackage{pdfpages}
\usepackage{xspace}
\usepackage[inline]{enumitem}
\usepackage[abbreviate=false,maxbibnames=99,backend=biber]{biblatex}
\usepackage{textcomp}
\bibliography{roofline}
\setkomafont{disposition}{\normalfont\bfseries}
\setlist[itemize]{itemsep=0.1em}
\setlist[enumerate]{itemsep=0.1em}
\newrefformat{tbl}{\hyperref[#1]{Table~\ref*{#1}}}
\newrefformat{fig}{\hyperref[#1]{Figure~\ref*{#1}}}
\newrefformat{lst}{\hyperref[#1]{Listing~\ref*{#1}}}
\newrefformat{equ}{\hyperref[#1]{Equation~\ref*{#1}}}
\newrefformat{sec}{\hyperref[#1]{Section~\ref*{#1}}}
\renewcommand{\arraystretch}{1.2}
\newcommand\bigforall{\mbox{\Large $\mathsurround0pt\forall$}}
\everymath{\displaystyle}
\lstset{ %
backgroundcolor=\color{white}, % choose the background color; you must add \usepackage{color} or
basicstyle=\ttfamily, % the size of the fonts that are used for the code
breakatwhitespace=true, % sets if automatic breaks should only happen at whitespace
breaklines=true, % sets automatic line breaking
captionpos=b, % sets the caption-position to bottom
escapeinside={(*}{*)}, % if you want to add LaTeX within your code
extendedchars=true, % lets you use non-ASCII characters; for 8-bits encodings only, does not work with UTF-8
frame=single, % adds a frame around the code
keepspaces=true, % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible)
language=TeX, % the language of the code
numbers=left, % where to put the line-numbers; possible values are (none, left, right)
numbersep=5pt, % how far the line-numbers are from the code
numberstyle=\tiny\color{gray}, % the style that is used for the line-numbers
rulecolor=\color{black}, % if not set, the frame-color may be changed on line-breaks within not-black text (e.g. comments (green here))
showspaces=false, % show spaces everywhere adding particular underscores; it overrides 'showstringspaces'
showstringspaces=false, % underline spaces within strings only
showtabs=false, % show tabs within strings adding particular underscores
stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered
tabsize=2, % sets default tabsize to 2 spaces
title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title
emph=[3]{int:,array,set,of,int,if,then,else,constraint,var,union,endif,function,where,in,div,predicate,let,opt,full,format,def,for,True,False,return,or},
emphstyle=[3]\color{ForestGreen},
emph=[2]{length,max,forall,startEmptyBuffer,fix,startEmptyBufferShow,exactly,cumulative,occurs,deopt,sum,,all},
emphstyle=[2]\color{blue},
commentstyle=\color{BrickRed},
stringstyle =\color{red},
}
\begin{document}
\subject{High Performance Computing}
\title{Roofline}
\subtitle{Project 3}
\author{Johannes Winklehner\\1226104 \and Armin Friedl\\1053597}
\date{\today}
\maketitle
\begin{abstract}
A \emph{roofline model} for a multicore-processor is obtained by calcuating the theoretical peak performance of the processor and benchmarking the peak memory bandwith. Two artificial computational kernels with arithmetic intensities of $\frac{1}{16}$ GFLOPs/Byte and $8$ GFLOPs/Byte are devised. The performance of the two kernels is then compared to the theoretical calculations in the roofline model.
\end{abstract}
\tableofcontents
\newpage
\section{Introduction}
\label{sec:introduction}
\input{inputs/introduction.tex}
\FloatBarrier
\section{Roofline Model}
\label{sec:roofline}
\input{inputs/roofline.tex}
\FloatBarrier
\section{Kernels}
\label{sec:kernels}
\input{inputs/kernels.tex}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:

View file

@ -0,0 +1,11 @@
\boolfalse {citerequest}\boolfalse {citetracker}\boolfalse {pagetracker}\boolfalse {backtracker}\relax
\defcounter {refsection}{0}\relax
\select@language {english}
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {1}Introduction}{2}{section.1}
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {2}Roofline Model}{2}{section.2}
\defcounter {refsection}{0}\relax
\contentsline {subsection}{\numberline {2.1}Theoretical Peak Performance}{2}{subsection.2.1}
\defcounter {refsection}{0}\relax
\contentsline {section}{\numberline {3}Kernels}{2}{section.3}

View file

@ -0,0 +1,52 @@
% This file was created with JabRef 2.10.
% Encoding: UTF-8
@Electronic{intel2016,
Title = {Intel® 64 and IA-32 Architectures Software Developers Manual},
Author = {Intel},
Url = {https://www-ssl.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf},
Year = {2016},
Month = {April},
Organization = {Intel},
Subtitle = {Combined Volumes: 1, 2A, 2B, 2C, 3A, 3B, 3C and 3D},
Owner = {armin},
Timestamp = {2016.06.19}
}
@Online{ark4210,
Title = {Intel® Core™ i5-4210U Processor Specifications},
Author = {{Intel Ark}},
Url = {http://ark.intel.com/products/81016/},
Urldate = {2016-06-19},
Owner = {armin},
Timestamp = {2016.06.19}
}
@Online{shimpi2012,
Title = {Haswell's Wide Execution Engine},
Author = {Anand Lal Shimpi},
Date = {2012-10-05},
Url = {http://www.anandtech.com/show/6355/intels-haswell-architecture/8},
Urldate = {2016-06-19},
Owner = {armin},
Timestamp = {2016.06.19}
}
@Article{williams2009,
Title = {Roofline: an insightful visual performance model for multicore architectures},
Author = {Williams, Samuel and Waterman, Andrew and Patterson, David},
Year = {2009},
Number = {4},
Pages = {65--76},
Volume = {52},
Journal = {Communications of the ACM},
Owner = {armin},
Publisher = {ACM},
Timestamp = {2016.06.17}
}

15
roofline/src/Makefile Normal file
View file

@ -0,0 +1,15 @@
all: roofline aikern.a
roofline: roofline.c aikern.a
gcc -Wall -Wextra -O3 -std=c99 -fopenmp $^ -o $@
aikern.a: aikern.c aikern.h
gcc -O3 -c -o aikern.o aikern.c
ar rcs aikern.a aikern.o
clean:
rm -f roofline
rm -f *.o
rm -f *.a
rm -f *.so

62
roofline/src/aikern.c Normal file
View file

@ -0,0 +1,62 @@
# include <stdlib.h>
void kernel_1_16_simple(double* a, double* b, double* c, size_t size)
{
// volatile to prevent compiler from optimizing this away
// register to advise compiler to put this in register
volatile double tmp = 0.1;
#pragma omp parallel for
for(size_t i=0; i<size; i++){
/* COMM: 2 reads = 16 bytes, COMP: 1 FLOP -> AI = 1/16 */
tmp = a[i] * b[i];
}
}
void kernel_1_16_fuseaware(double* a, double* b, double* c, size_t size)
{
#pragma omp parallel for
for(size_t i=0; i<size; i++){
/* COMM: 3 reads, 1 write = 32 bytes, COMP: 2 FLOP -> AI = 2/32 = 1/16 */
a[i] = a[i] * b[i] + c[i];
}
}
void kernel_8_1_simple(double* a, double* b, double* c, size_t size)
{
// volatile to prevent compiler from optimizing this away
// register to advise compiler to put this in register
volatile register double tmp = 0.1;
#pragma omp parallel for
for(size_t i=0; i<size; i++){
/* COMM: 1 read, COMP: 8 FLOP -> AI = 8 */
tmp = a[i] * a[i] * a[i] * a[i] *
a[i] * a[i] * a[i] * a[i];
}
}
void kernel_8_1_fuseaware(double* a, double* b, double* c, size_t size)
{
// volatile to prevent compiler from optimizing this away
// register to advise compiler to put this in register
register volatile double tmp = 0.1;
#pragma omp parallel for
for(size_t i=0; i<size; i++){
/* COMM: 1 read, COMP: 8 FLOP -> AI = 8 */
tmp = a[i];
tmp = tmp * tmp + tmp;
tmp = tmp * tmp + tmp;
tmp = tmp * tmp + tmp;
tmp = tmp * tmp + tmp;
}
}
void kernel_1_8_vo(double* a, double* b, double* c, size_t size)
{
volatile double tmp=0.0;
for(size_t i=0; i<size; i++) {
tmp = a[i] * a[i];
}
}

5
roofline/src/aikern.h Normal file
View file

@ -0,0 +1,5 @@
void kernel_1_16_simple(double* a, double* b, double* c, size_t size);
void kernel_1_16_fuseaware(double* a, double* b, double* c, size_t size);
void kernel_8_1_simple(double* a, double* b, double* c, size_t size);
void kernel_8_1_fuseaware(double* a, double* b, double* c, size_t size);
void kernel_1_8_vo(double* a, double* b, double* c, size_t size);

BIN
roofline/src/roofline Executable file

Binary file not shown.

259
roofline/src/roofline.c Normal file
View file

@ -0,0 +1,259 @@
# include <stdlib.h>
# include <stdio.h>
# include <unistd.h>
# include <ctype.h>
# include <sys/time.h>
# include <errno.h>
# include <string.h>
# include <stdint.h>
# include <getopt.h>
# include <stdarg.h>
# include <limits.h>
# include "aikern.h"
/* === Macros === */
#ifdef ENDEBUG
#define DEBUG(...) do { fprintf(stderr, __VA_ARGS__); fprintf(stderr, "\n"); } while(0)
#else
#define DEBUG(...)
#endif
/* === Constants === */
/* === Global Variables === */
char* prog_name;
/* === Prototypes === */
/**
* @brief print usage message
*/
static void usage(void);
/**
* @brief terminate program on program error
* @param msg additional message to print
* @param ret exit value
*/
static void bail_out(char* fmt, ...);
/**
* @brief converts the argument to size_t if possible.
* bails out on error.
* @param oparg the argument to convert
*/
static size_t get_size(char* oparg);
/**
* @brief converts the argument to int if possible.
* bails out on error.
* @param oparg the argument to convert
*/
static int get_int(char* oparg);
/**
* @brief microseconds since epoch
*/
static double mysecond(void);
/**
* @brief a simple test kernel with ai of 1/16
*/
static void testkern(double* a, double* b, double* c, size_t size);
int main(int argc, char* argv[]) {
prog_name = argv[0];
int opt;
char *size_arg = NULL;
char *runs_arg = NULL;
while((opt = getopt(argc, argv, "s:r:")) != -1)
{
switch(opt)
{
case 's':
size_arg = optarg;
break;
case 'r':
runs_arg = optarg;
break;
case '?':
usage();
default:
usage();
}
}
if(optind < argc)
{
for (int index = optind; index < argc; index++)
bail_out ("Non-option argument %s\n", argv[index]);
usage();
}
if(size_arg == NULL || runs_arg == NULL)
usage();
size_t size = get_size(size_arg);
int runs = get_int(runs_arg);
printf("Will run with array sizes of %zu\n", size);
printf("Will calculate min, max, avg for %d runs\n", runs);
/* Make this volatile so that nothing is optimized away here */
double* a = malloc(sizeof(double)*(size));
double* b = malloc(sizeof(double)*(size));
double* c = malloc(sizeof(double)*(size));
if(a==NULL || b==NULL || c == NULL)
bail_out("One of the mallocs failed\n. a = %p, b=%p, c=%p", a, b, c);
printf("Allocated 3 arrays\n");
printf("Filling arrays with dummy values\n");
#pragma omp parallel for
for (size_t j=0; j<size; j++)
{
a[j] = 1.0;
b[j] = 2.0;
c[j] = 3.0;
}
printf("Warming up cache\n");
double t = mysecond();
testkern(a,b,c, size);
t = mysecond() - t;
printf("Cache warming took %.4f microseconds = %.4f seconds (with test AI of 1/16 FLOPs/Byte)\n", (t*1.0E6), t);
/*
TESTS!!
*/
printf("1/16 simple\n");
t = mysecond();
kernel_1_16_simple(a,b,c, size);
t = mysecond() - t;
printf("Cache warming took %.4f microseconds = %.4f seconds (with test AI of 1/16 FLOPs/Byte)\n", (t*1.0E6), t);
printf("1/16 fuseaware\n");
t = mysecond();
kernel_1_16_fuseaware(a,b,c, size);
t = mysecond() - t;
printf("Cache warming took %.4f microseconds = %.4f seconds (with test AI of 1/16 FLOPs/Byte)\n", (t*1.0E6), t);
printf("8 simple\n");
t = mysecond();
kernel_8_1_simple(a,b,c, size);
t = mysecond() - t;
printf("Cache warming took %.4f microseconds = %.4f seconds (with test AI of 1/16 FLOPs/Byte)\n", (t*1.0E6), t);
printf("8 fuseaware\n");
t = mysecond();
kernel_8_1_fuseaware(a,b,c, size);
t = mysecond() - t;
printf("Cache warming took %.4f microseconds = %.4f seconds (with test AI of 1/16 FLOPs/Byte)\n", (t*1.0E6), t);
printf("1/8 vo\n");
t = mysecond();
kernel_1_8_vo(a,b,c, size);
t = mysecond() - t;
printf("Cache warming took %.4f microseconds = %.4f seconds (with test AI of 1/16 FLOPs/Byte)\n", (t*1.0E6), t);
exit(EXIT_SUCCESS);
}
static void testkern(double* a, double* b, double* c, size_t size)
{
#pragma omp parallel for
for (size_t j = 0; j < size; j++)
{
/* 3*8 Bytes read + 3*8 Bytes write, 3 FLOPs -> AI = 3/(2*3*8) = 1/16 */
a[j] = 2.0E0 * a[j];
b[j] = 2.0E0 * b[j];
c[j] = 2.0E0 * c[j];
}
}
/* === Helper Functions === */
static double mysecond(void)
{
struct timeval tp;
int i;
i = gettimeofday(&tp,NULL);
if(i != 0)
bail_out("Time measurement impossible. gettimeofday error");
return ( (double) tp.tv_sec + (double) tp.tv_usec * 1.e-6 );
}
static size_t get_size(char *oparg)
{
long long int llsize = strtoll(oparg, NULL, 10);
if(llsize <= 0)
usage();
unsigned long long int u_llsize = (unsigned long long int) llsize;
if(u_llsize > SIZE_MAX)
bail_out("Only size between 1 to %zu allowed.", SIZE_MAX);
return (size_t) llsize;
}
static int get_int(char *oparg)
{
long long int llsize = strtoll(oparg, NULL, 10);
if(llsize <= 0)
usage();
unsigned long long int u_llsize = (unsigned long long int) llsize;
if(u_llsize > INT_MAX)
bail_out("Only size between 1 to %d allowed.", INT_MAX);
return (int) llsize;
}
static void usage()
{
fprintf(stderr, "USAGE: ./roofline -s <size> -s <runs> \n");
bail_out(NULL);
}
static void bail_out(char* fmt, ...)
{
if(fmt != NULL)
{
char msgbuf[150];
va_list vl;
va_start(vl, fmt);
if(vsnprintf(msgbuf, sizeof(msgbuf), fmt, vl) < 0)
msgbuf[0] = '\0';
va_end( vl);
if(strlen(msgbuf) > 0)
(void)fprintf(stderr, "%s: %s \n", prog_name, msgbuf);
}
if(errno != 0)
(void)fprintf(stderr, "%s: %s\n", prog_name, strerror(errno));
exit(EXIT_FAILURE);
}