[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
03/03: talks: Add ORAP slides.
From: |
Ludovic Courtès |
Subject: |
03/03: talks: Add ORAP slides. |
Date: |
Fri, 15 Mar 2024 10:06:43 -0400 (EDT) |
civodul pushed a commit to branch master
in repository maintenance.
commit 7f7e0e351933aa78354fc635d8718e34f3659f0f
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Fri Mar 15 15:03:07 2024 +0100
talks: Add ORAP slides.
* talks/orap-2024: New directory.
---
talks/orap-2024/images/Git-Logo-2Color.pdf | 1 +
talks/orap-2024/images/Guix-horizontal-print.pdf | 1 +
.../orap-2024/images/acm-artifacts-functional.jpg | 1 +
talks/orap-2024/images/arrow-right.pdf | 1 +
talks/orap-2024/images/big-picture.pdf | Bin 0 -> 400810 bytes
talks/orap-2024/images/big-picture.svg | 392 +++++++++++++++
.../images/gamblin-binary-portability.png | 1 +
.../orap-2024/images/guixhpc-logo-transparent.pdf | 1 +
talks/orap-2024/images/inria-white-2019.pdf | 1 +
talks/orap-2024/images/rocm-logo.png | Bin 0 -> 14723 bytes
talks/orap-2024/images/supercomputer-us-doe.jpg | 1 +
talks/orap-2024/images/tandem-jules-beau-1896.jpg | 1 +
.../orap-2024/images/workshop-group-photo-2023.jpg | Bin 0 -> 335123 bytes
talks/orap-2024/images/xkcd-compiling.png | 1 +
talks/orap-2024/talk.tex | 546 +++++++++++++++++++++
15 files changed, 948 insertions(+)
diff --git a/talks/orap-2024/images/Git-Logo-2Color.pdf
b/talks/orap-2024/images/Git-Logo-2Color.pdf
new file mode 120000
index 0000000..d672c84
--- /dev/null
+++ b/talks/orap-2024/images/Git-Logo-2Color.pdf
@@ -0,0 +1 @@
+../../ust4hpc-2021/images/Git-Logo-2Color.pdf
\ No newline at end of file
diff --git a/talks/orap-2024/images/Guix-horizontal-print.pdf
b/talks/orap-2024/images/Guix-horizontal-print.pdf
new file mode 120000
index 0000000..6c7bd10
--- /dev/null
+++ b/talks/orap-2024/images/Guix-horizontal-print.pdf
@@ -0,0 +1 @@
+../../ust4hpc-2021/images/Guix-horizontal-print.pdf
\ No newline at end of file
diff --git a/talks/orap-2024/images/acm-artifacts-functional.jpg
b/talks/orap-2024/images/acm-artifacts-functional.jpg
new file mode 120000
index 0000000..c9fd040
--- /dev/null
+++ b/talks/orap-2024/images/acm-artifacts-functional.jpg
@@ -0,0 +1 @@
+../../aramis-2019/images/acm-artifacts-functional.jpg
\ No newline at end of file
diff --git a/talks/orap-2024/images/arrow-right.pdf
b/talks/orap-2024/images/arrow-right.pdf
new file mode 120000
index 0000000..6e263c7
--- /dev/null
+++ b/talks/orap-2024/images/arrow-right.pdf
@@ -0,0 +1 @@
+../../ust4hpc-2021/images/arrow-right.pdf
\ No newline at end of file
diff --git a/talks/orap-2024/images/big-picture.pdf
b/talks/orap-2024/images/big-picture.pdf
new file mode 100644
index 0000000..1c0a6cd
Binary files /dev/null and b/talks/orap-2024/images/big-picture.pdf differ
diff --git a/talks/orap-2024/images/big-picture.svg
b/talks/orap-2024/images/big-picture.svg
new file mode 100644
index 0000000..4a59a16
--- /dev/null
+++ b/talks/orap-2024/images/big-picture.svg
@@ -0,0 +1,392 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ width="297mm"
+ height="210mm"
+ viewBox="0 0 297 210"
+ version="1.1"
+ id="svg8"
+ inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
+ sodipodi:docname="big-picture.svg"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <defs
+ id="defs2">
+ <linearGradient
+ x1="142.96875"
+ y1="63.65625"
+ x2="176.60477"
+ y2="70.667412"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.599312,0,0,-0.599312,-8.258654,91.962509)"
+ spreadMethod="pad"
+ id="linearGradient7158">
+ <stop
+ style="stop-opacity:1;stop-color:#e34646"
+ offset="0"
+ id="stop7154" />
+ <stop
+ style="stop-opacity:1;stop-color:#ffbf2d"
+ offset="1"
+ id="stop7156" />
+ </linearGradient>
+ <clipPath
+ clipPathUnits="userSpaceOnUse"
+ id="clipPath7170">
+ <path
+ d="m 3.41,63.497 c 1.078,-1.977 2.176,-3.586 3.293,-4.852 1.082,-1.23
2.274,-2.214 3.578,-2.96 1.27,-0.708 2.707,-1.219 4.309,-1.516 1.566,-0.262
3.363,-0.395 5.414,-0.395 1.512,0 2.867,0.078 4.062,0.227 0.004,0 0.012,0
0.02,0 0.148,0.012 0.461,0.062 0.785,0.113 0.34,0.051 0.688,0.102 1.238,0.203
10.047,1.86 13.379,-5.117 14.102,-7.039 0.113,-0.301 0.168,-0.488 0.168,-0.488
L 52.59,12.743 58.883,0.005 H 45.117 c -6.144,13.683 -12.055,42.258
-18.371,44.781 -1.371,-0.191 -3.07,-0. [...]
+ id="path7168"
+ inkscape:connector-curvature="0" />
+ </clipPath>
+ <linearGradient
+ x1="113.5146"
+ y1="1004.8033"
+ x2="78.000107"
+ y2="922.07178"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(0.599312,0,0,-0.599312,-8.278026,602.79412)"
+ spreadMethod="pad"
+ id="linearGradient7178">
+ <stop
+ style="stop-opacity:1;stop-color:#e34646"
+ offset="0"
+ id="stop7174" />
+ <stop
+ style="stop-opacity:1;stop-color:#ffbf2d"
+ offset="1"
+ id="stop7176" />
+ </linearGradient>
+ <clipPath
+ clipPathUnits="userSpaceOnUse"
+ id="clipPath7188">
+ <path
+ d="M 52.586,12.747 45.125,0.005 h 14.957"
+ id="path7186"
+ inkscape:connector-curvature="0" />
+ </clipPath>
+ <linearGradient
+ x1="108.08774"
+ y1="1025.709"
+ x2="80.655251"
+ y2="1043.709"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.335594,0,0,-0.335594,86.28744,351.26907)"
+ spreadMethod="pad"
+ id="linearGradient7196">
+ <stop
+ style="stop-opacity:1;stop-color:#ffb638"
+ offset="0"
+ id="stop7192" />
+ <stop
+ style="stop-opacity:1;stop-color:#f0ae26"
+ offset="1"
+ id="stop7194" />
+ </linearGradient>
+ <clipPath
+ clipPathUnits="userSpaceOnUse"
+ id="clipPath7206">
+ <path
+ d="M 3.41,63.493 0,62.224 c 0.398,-0.981 0.801,-1.914 1.211,-2.805
0.082,-0.18 0.164,-0.356 0.246,-0.531 0.082,-0.172 0.168,-0.344 0.25,-0.516
0.027,-0.055 0.055,-0.109 0.086,-0.168 0.137,-0.281 0.273,-0.562 0.414,-0.84
0.004,0 0.004,0 0.004,0 C 2.297,57.204 2.379,57.04 2.465,56.88 2.805,56.235
3.148,55.622 3.5,55.032 3.586,54.888 3.672,54.743 3.762,54.602 3.797,54.544
3.828,54.489 3.863,54.435 3.918,54.349 3.973,54.259 4.027,54.173 4.113,54.036
4.199,53.895 4.285,53.759 4.426,5 [...]
+ id="path7204"
+ inkscape:connector-curvature="0" />
+ </clipPath>
+ <linearGradient
+ x1="142.96875"
+ y1="63.65625"
+ x2="177.04297"
+ y2="69.791016"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-0.599312,0,0,-0.599312,113.45784,91.962734)"
+ spreadMethod="pad"
+ id="linearGradient7214">
+ <stop
+ style="stop-opacity:1;stop-color:#e34646"
+ offset="0"
+ id="stop7210" />
+ <stop
+ style="stop-opacity:1;stop-color:#ffbf2d"
+ offset="1"
+ id="stop7212" />
+ </linearGradient>
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="1.1211672"
+ inkscape:cx="470.93777"
+ inkscape:cy="464.24831"
+ inkscape:document-units="mm"
+ inkscape:current-layer="layer3"
+ showgrid="false"
+ inkscape:window-width="2560"
+ inkscape:window-height="1382"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="0"
+ inkscape:showpageshadow="2"
+ inkscape:pagecheckerboard="0"
+ inkscape:deskcolor="#d1d1d1" />
+ <metadata
+ id="metadata5">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Tavolo 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(0,-87)"
+ style="display:inline">
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8439" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8441" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8443" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8445" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8447" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8449" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8451" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8453" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8455" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8457" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8459" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8461" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8463" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8465" />
+ <g
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,147.52746,181.31142)"
+ id="g8467" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9645" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9647" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9649" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9651" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9653" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9655" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9657" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9659" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9661" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9663" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9665" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9667" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9669" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9671" />
+ <g
+ transform="matrix(0.15875,0,0,0.15875,152.49906,186.95493)"
+ id="g9673" />
+ </g>
+ <g
+ inkscape:groupmode="layer"
+ id="layer2"
+ inkscape:label="Tavolo 2"
+ style="display:inline" />
+ <g
+ inkscape:groupmode="layer"
+ id="layer3"
+ inkscape:label="Tavolo 3">
+ <g
+ id="g608"
+ transform="matrix(1.2,0,0,1.2,-0.18708848,-3.6179316)">
+ <image
+ transform="translate(0,-87.000001)"
+ style="display:inline"
+ width="137.16"
+ height="34.924999"
+ preserveAspectRatio="none"
+
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAogAAAClCAIAAABQhpssAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA
B3RJTUUH4gIEAAk7AjOGcwAAIABJREFUeNrsnXd8VUXax5+ZOeW2hFBDC72T0BJ6BxFUEBURFRVh
VWxrx5dVVxBdWXvZFcHCKl1ARGxI7zUJhCpIryEJabeeNvP+ccLxcJPc3CAE2J3vhz9yL+eefs5v
fs888wxijAGHw+FwOJxrA8xPAYfD4XA4XJg5HA6Hw+FwYeZwOBwOhwszh8PhcDgcLswcDofD4XBh
5nA4HA6Hw4WZw+FwOBwuzBwOh8PhcLgwczgcDofDhZnD4XA4HA4XZg6Hw+FwuDBzOBwOh8Phwszh
cDgcDud/UZgZpfzCczgcDufaBPFpHzkcDofD4Y75aqIf+53pOr/2HA6Hw+HCfFVh [...]
+ id="image10331"
+ x="6.963388"
+ y="105.62849" />
+ <g
+ style="display:inline"
+ transform="matrix(0.35277777,0,0,-0.35277777,71.68147,145.30383)"
+ id="g7140">
+ <path
+ d="m 101.789,63.497 c -1.078,-1.977 -2.176,-3.586 -3.297,-4.852
-1.078,-1.23 -2.269,-2.214 -3.574,-2.96 -1.27,-0.708 -2.707,-1.219
-4.309,-1.516 -1.566,-0.262 -3.363,-0.395 -5.414,-0.395 -1.511,0 -2.871,0.078
-4.062,0.227 -0.004,0 -0.016,0 -0.02,0 -0.152,0.008 -0.465,0.062 -0.785,0.113
-0.34,0.051 -0.687,0.102 -1.238,0.203 C 69.043,56.177 65.707,49.2 64.988,47.278
64.875,46.974 64.82,46.79 64.82,46.79 L 52.609,12.739 45.117,0.005 h 14.965 c
6.145,13.683 12.055,42.258 18.371,44 [...]
+ style="fill:#ffbf2d;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path7142"
+ inkscape:connector-curvature="0" />
+ <g
+ id="g7144">
+ <g
+ id="g7146">
+ <g
+ id="g7152">
+ <path
+ d="m 101.789,63.493 c -1.082,-1.973 -2.176,-3.582
-3.297,-4.848 -1.078,-1.23 -2.273,-2.214 -3.578,-2.96 -0.312,-0.176
-0.637,-0.336 -0.969,-0.485 -0.004,0 -0.007,-0.008 -0.011,-0.008 -0.418,-0.297
-0.961,-0.55 -1.696,-0.726 C 83.77,52.45 78,44.899 77.457,44.173 c 0.246,0.199
0.492,0.363 0.742,0.492 0.035,0.02 0.071,0.035 0.11,0.055 0.003,0 0.011,0.007
0.015,0.007 0.043,0.02 0.09,0.04 0.133,0.059 1.367,-0.195 3.066,-0.285
5.109,-0.285 2.684,0 5.086,0.324 7.211,0.996 2.125 [...]
+ style="fill:url(#linearGradient7158);stroke:none"
+ id="path7160"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ <path
+ d="m 3.41,63.497 c 1.078,-1.977 2.176,-3.586 3.297,-4.852
1.078,-1.23 2.27,-2.214 3.574,-2.96 1.27,-0.708 2.707,-1.219 4.309,-1.516
1.566,-0.262 3.363,-0.395 5.414,-0.395 1.512,0 2.871,0.078 4.062,0.227 0.004,0
0.016,0 0.02,0 0.152,0.008 0.465,0.062 0.785,0.113 0.34,0.051 0.688,0.102
1.238,0.203 10.047,1.86 13.383,-5.117 14.102,-7.039 0.113,-0.304 0.168,-0.488
0.168,-0.488 L 52.59,12.739 60.082,0.005 H 45.117 C 38.973,13.688 33.062,42.263
26.746,44.786 25.375,44.595 23.68,44.5 [...]
+ style="fill:#ffbf2d;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path7162"
+ inkscape:connector-curvature="0" />
+ <g
+ id="g7164">
+ <g
+ id="g7166"
+ clip-path="url(#clipPath7170)">
+ <g
+ id="g7172">
+ <path
+ d="m 3.41,63.497 c 1.078,-1.977 2.176,-3.586 3.293,-4.852
1.082,-1.23 2.274,-2.214 3.578,-2.96 1.27,-0.708 2.707,-1.219 4.309,-1.516
1.566,-0.262 3.363,-0.395 5.414,-0.395 1.512,0 2.867,0.078 4.062,0.227 0.004,0
0.012,0 0.02,0 0.148,0.012 0.461,0.062 0.785,0.113 0.34,0.051 0.688,0.102
1.238,0.203 10.047,1.86 13.379,-5.117 14.102,-7.039 0.113,-0.301 0.168,-0.488
0.168,-0.488 L 52.59,12.743 58.883,0.005 H 45.117 c -6.144,13.683
-12.055,42.258 -18.371,44.781 -1.371,-0.191 - [...]
+ style="fill:url(#linearGradient7178);stroke:none"
+ id="path7180"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g7182">
+ <g
+ id="g7184"
+ clip-path="url(#clipPath7188)">
+ <g
+ id="g7190">
+ <path
+ d="M 52.586,12.747 45.125,0.005 h 14.957"
+ style="fill:url(#linearGradient7196);stroke:none"
+ id="path7198"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ <g
+ id="g7200">
+ <g
+ id="g7202"
+ clip-path="url(#clipPath7206)">
+ <g
+ id="g7208">
+ <path
+ d="M 3.41,63.493 0,62.224 c 0.398,-0.981 0.801,-1.914
1.211,-2.805 0.082,-0.18 0.164,-0.356 0.246,-0.531 0.082,-0.172 0.168,-0.344
0.25,-0.516 0.027,-0.055 0.055,-0.109 0.086,-0.168 0.137,-0.281 0.273,-0.562
0.414,-0.84 0.004,0 0.004,0 0.004,0 C 2.297,57.204 2.379,57.04 2.465,56.88
2.805,56.235 3.148,55.622 3.5,55.032 3.586,54.888 3.672,54.743 3.762,54.602
3.797,54.544 3.828,54.489 3.863,54.435 3.918,54.349 3.973,54.259 4.027,54.173
4.113,54.036 4.199,53.895 4.285,53.759 [...]
+ style="fill:url(#linearGradient7214);stroke:none"
+ id="path7216"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ <path
+ d="M 111.191,3.087 C 109.074,2.06 106.879,1.286 104.602,0.77
102.32,0.259 99.969,0.001 97.547,0.001 c -5.485,0 -9.828,1.527 -13.031,4.586
-3.204,3.07 -4.805,7.23 -4.805,12.476 0,5.309 1.629,9.481 4.894,12.524
3.262,3.043 7.731,4.562 13.403,4.562 2.191,0 4.285,-0.203 6.285,-0.617
2.012,-0.41 3.91,-1.019 5.687,-1.828 v -6.812 c -1.839,1.043 -3.668,1.82
-5.492,2.335 -1.804,0.516 -3.621,0.774 -5.445,0.774 -3.379,0 -5.988,-0.949
-7.824,-2.844 -1.824,-1.883 -2.735,-4.582 -2.735,-8.0 [...]
+ style="fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path7218"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 114.891,10.251 v 15.082 h 7.937 v -2.469 c 0,-1.34
-0.008,-3.023 -0.023,-5.051 -0.012,-2.011 -0.02,-3.359 -0.02,-4.035 0,-1.984
0.051,-3.418 0.153,-4.297 0.105,-0.867 0.281,-1.5 0.531,-1.898 0.32,-0.512
0.742,-0.91 1.254,-1.188 0.531,-0.281 1.132,-0.421 1.808,-0.421 1.649,0
2.942,0.632 3.883,1.898 0.938,1.262 1.41,3.02 1.41,5.27 v 12.191 h 7.891 V
0.638 h -7.891 v 3.574 c -1.191,-1.442 -2.457,-2.508 -3.793,-3.199
-1.324,-0.676 -2.785,-1.012 -4.386,-1.012 -2.852,0 -5.028,0 [...]
+ style="fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path7220"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 144.207,25.333 h 7.895 V 0.638 h -7.895 v 24.695 m 0,9.609 h
7.895 v -6.437 h -7.895 v 6.437"
+ style="fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path7222"
+ inkscape:connector-curvature="0" />
+ <path
+ d="m 165.969,13.27 -8.907,12.063 h 8.356 l 5.047,-7.32 5.117,7.32 h
8.356 l -8.907,-12.016 9.348,-12.679 h -8.356 l -5.558,7.804 -5.488,-7.804 h
-8.356 l 9.348,12.632"
+ style="fill:#333333;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path7224"
+ inkscape:connector-curvature="0" />
+ </g>
+ <g
+ style="display:inline"
+
transform="matrix(-0.14605429,0.06220696,-0.06220696,-0.14605429,111.96722,97.318999)"
+ id="g8437">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 204.651,58.521 c -4.284,-21.42 -15.3,-39.78 -28.764,-56.305
-3.061,-3.672 -9.181,-2.447 -11.629,1.225 -11.016,19.584 -20.196,41.004
-22.644,63.647 -0.612,6.732 9.792,7.345 11.016,1.225 4.284,-16.524
10.404,-32.437 18.36,-47.736 3.06,4.284 6.121,9.18 8.569,14.076 -4.284,-4.284
-14.077,-2.448 -14.077,5.508 -0.612,99.756 -23.256,202.571 -5.508,301.104
1.224,7.956 14.688,6.12 14.076,-1.836 -7.956,-100.368 7.345,-198.899
7.957,-299.268 0,-0.612 0,-1.224 0,-1.224 3.672,7.344 6. [...]
+ id="path8435" />
+ </g>
+ <g
+ style="display:inline"
+ transform="matrix(0.15875,0,0,0.15875,158.13353,106.48979)"
+ id="g9643">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 348.232,100.282 c -13.464,-32.436 -35.496,-60.588 -45.9,-94.86
-1.836,-5.508 -11.016,-7.956 -13.464,-1.836 -14.688,34.272 -36.72,65.484
-47.124,101.592 -1.836,6.732 7.344,13.464 12.24,7.344 7.344,-9.18
15.912,-16.524 24.479,-25.092 -1.224,52.632 0,105.264 -9.18,157.284
-4.896,28.152 -11.628,59.977 -31.824,81.396 -24.479,25.704 -55.08,2.448
-68.544,-21.42 -11.628,-20.809 -31.823,-110.772 -72.215,-79.561 -23.868,18.36
-29.988,43.452 -37.332,70.992 -1.836,7.956 -4.896,15.3 - [...]
+ id="path9641" />
+ </g>
+ <image
+ width="64.60067"
+ height="64.262001"
+ preserveAspectRatio="none"
+
xlink:href="data:image/jpeg;base64,/9j/4S8VRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAA
agEoAAMAAAABAAIAAAExAAIAAAAgAAAAcgEyAAIAAAAUAAAAkodpAAQAAAABAAAAqAAAANQALcbA
AAAnEAAtxsAAACcQQWRvYmUgUGhvdG9zaG9wIENTNS4xIE1hY2ludG9zaAAyMDE2OjA5OjE0IDEy
OjM2OjQ1AAAAAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAvugAwAEAAAAAQAAAvcAAAAAAAAABgED
AAMAAAABAAYAAAEaAAUAAAABAAABIgEbAAUAAAABAAABKgEoAAMAAAABAAIAAAIBAAQAAAABAAAB
MgICAAQAAAABAAAt2wAAAAAAAABIAAAAAQAAAEgAAAAB/9j/7QAMQWRvYmVfQ00 [...]
+ id="image383"
+ x="176.24776"
+ y="37.172825" />
+ </g>
+ </g>
+</svg>
diff --git a/talks/orap-2024/images/gamblin-binary-portability.png
b/talks/orap-2024/images/gamblin-binary-portability.png
new file mode 120000
index 0000000..0cef645
--- /dev/null
+++ b/talks/orap-2024/images/gamblin-binary-portability.png
@@ -0,0 +1 @@
+../../jcad-2021/images/gamblin-binary-portability.png
\ No newline at end of file
diff --git a/talks/orap-2024/images/guixhpc-logo-transparent.pdf
b/talks/orap-2024/images/guixhpc-logo-transparent.pdf
new file mode 120000
index 0000000..a6135c4
--- /dev/null
+++ b/talks/orap-2024/images/guixhpc-logo-transparent.pdf
@@ -0,0 +1 @@
+../../jcad-2021/images/guixhpc-logo-transparent.pdf
\ No newline at end of file
diff --git a/talks/orap-2024/images/inria-white-2019.pdf
b/talks/orap-2024/images/inria-white-2019.pdf
new file mode 120000
index 0000000..2e94f2d
--- /dev/null
+++ b/talks/orap-2024/images/inria-white-2019.pdf
@@ -0,0 +1 @@
+../../fosdem-2020/guix-jupyter/images/inria-white-2019.pdf
\ No newline at end of file
diff --git a/talks/orap-2024/images/rocm-logo.png
b/talks/orap-2024/images/rocm-logo.png
new file mode 100644
index 0000000..ee36835
Binary files /dev/null and b/talks/orap-2024/images/rocm-logo.png differ
diff --git a/talks/orap-2024/images/supercomputer-us-doe.jpg
b/talks/orap-2024/images/supercomputer-us-doe.jpg
new file mode 120000
index 0000000..b35656e
--- /dev/null
+++ b/talks/orap-2024/images/supercomputer-us-doe.jpg
@@ -0,0 +1 @@
+../../jcad-2021/images/supercomputer-us-doe.jpg
\ No newline at end of file
diff --git a/talks/orap-2024/images/tandem-jules-beau-1896.jpg
b/talks/orap-2024/images/tandem-jules-beau-1896.jpg
new file mode 120000
index 0000000..c3e1336
--- /dev/null
+++ b/talks/orap-2024/images/tandem-jules-beau-1896.jpg
@@ -0,0 +1 @@
+../../jcad-2021/images/tandem-jules-beau-1896.jpg
\ No newline at end of file
diff --git a/talks/orap-2024/images/workshop-group-photo-2023.jpg
b/talks/orap-2024/images/workshop-group-photo-2023.jpg
new file mode 100644
index 0000000..622e59e
Binary files /dev/null and
b/talks/orap-2024/images/workshop-group-photo-2023.jpg differ
diff --git a/talks/orap-2024/images/xkcd-compiling.png
b/talks/orap-2024/images/xkcd-compiling.png
new file mode 120000
index 0000000..69eff99
--- /dev/null
+++ b/talks/orap-2024/images/xkcd-compiling.png
@@ -0,0 +1 @@
+../../jcad-2021/images/xkcd-compiling.png
\ No newline at end of file
diff --git a/talks/orap-2024/talk.tex b/talks/orap-2024/talk.tex
new file mode 100644
index 0000000..3de5c6d
--- /dev/null
+++ b/talks/orap-2024/talk.tex
@@ -0,0 +1,546 @@
+% The comment below tells Rubber to compile the .dot files.
+%
+% rubber: module graphics
+% rubber: rules rules.ini
+
+% Make sure URLs are broken on hyphens.
+% See <https://tex.stackexchange.com/questions/3033/forcing-linebreaks-in-url>.
+\RequirePackage[hyphens]{url}
+
+\documentclass[aspectratio=169]{beamer}
+
+\usetheme{default}
+
+\usefonttheme{structurebold}
+
+% Nice sans-serif font.
+\usepackage[sfdefault,lining]{FiraSans} %% option 'sfdefault' activates Fira
Sans as the default text font
+\renewcommand*\oldstylenums[1]{{\firaoldstyle #1}}
+
+% Nice monospace font.
+\usepackage{inconsolata}
+
+\usepackage[utf8]{inputenc}
+\PassOptionsToPackage{hyphens}{url}\usepackage{hyperref,xspace,multicol}
+
+\usepackage[absolute,overlay]{textpos}
+\usepackage{tikz}
+\usetikzlibrary{arrows,shapes,trees,shadows,positioning,backgrounds}
+\usepackage{fancyvrb} % for '\Verb'
+\usepackage{xifthen} % for '\isempty'
+
+% Remember the position of every picture.
+\tikzstyle{every picture}+=[remember picture]
+
+\tikzset{onslide/.code args={<#1>#2}{%
+ \only<#1>{\pgfkeysalso{#2}} % \pgfkeysalso doesn't change the path
+}}
+
+% Colors.
+\definecolor{guixred1}{RGB}{226,0,38} % red P
+\definecolor{guixorange1}{RGB}{243,154,38} % guixorange P
+\definecolor{guixyellow}{RGB}{254,205,27} % guixyellow P
+\definecolor{guixred2}{RGB}{230,68,57} % red S
+\definecolor{guixred3}{RGB}{115,34,27} % dark red
+\definecolor{guixorange2}{RGB}{236,117,40} % guixorange S
+\definecolor{guixtaupe}{RGB}{134,113,127} % guixtaupe S
+\definecolor{guixgrey}{RGB}{91,94,111} % guixgrey S
+\definecolor{guixdarkgrey}{RGB}{46,47,55} % guixdarkgrey S
+\definecolor{guixblue1}{RGB}{38,109,131} % guixblue S
+\definecolor{guixblue2}{RGB}{10,50,80} % guixblue S
+\definecolor{guixgreen1}{RGB}{133,146,66} % guixgreen S
+\definecolor{guixgreen2}{RGB}{157,193,7} % guixgreen S
+
+\setbeamerfont{title}{size=\huge}
+\setbeamerfont{frametitle}{size=\huge}
+\setbeamerfont{normal text}{size=\Large}
+
+% White-on-black color theme.
+\setbeamercolor{structure}{fg=guixorange1,bg=black}
+\setbeamercolor{title}{fg=white,bg=black}
+\setbeamercolor{date}{fg=guixorange1,bg=black}
+\setbeamercolor{frametitle}{fg=white,bg=black}
+\setbeamercolor{titlelike}{fg=white,bg=black}
+\setbeamercolor{normal text}{fg=white,bg=black}
+\setbeamercolor{alerted text}{fg=guixyellow,bg=black}
+\setbeamercolor{section in toc}{fg=white,bg=black}
+\setbeamercolor{section in toc shaded}{fg=white,bg=black}
+\setbeamercolor{subsection in toc}{fg=guixorange1,bg=black}
+\setbeamercolor{subsection in toc shaded}{fg=white,bg=black}
+\setbeamercolor{subsubsection in toc}{fg=guixorange1,bg=black}
+\setbeamercolor{subsubsection in toc shaded}{fg=white,bg=black}
+\setbeamercolor{frametitle in toc}{fg=white,bg=black}
+\setbeamercolor{local structure}{fg=guixorange1,bg=black}
+
+\newcommand{\highlight}[1]{\alert{\textbf{#1}}}
+
+\title{Reproducibility and performance: why choose?}
+
+\author{Ludovic Courtès}
+\date{\small{Forum ORAP, 15 March 2023}}
+
+\setbeamertemplate{navigation symbols}{} % remove the navigation bar
+
+
+\newcommand{\screenshot}[2][width=\paperwidth]{
+ \begin{frame}[plain]
+ \begin{tikzpicture}[remember picture, overlay]
+ \node [at=(current page.center), inner sep=0pt]
+ {\includegraphics[{#1}]{#2}};
+ \end{tikzpicture}
+ \end{frame}
+}
+
+
+\begin{document}
+
+\begin{frame}[plain, fragile]
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.center)] {
+ % https://images.bnf.fr/#/detail/1535157/9
+ \includegraphics[width=1.5\textwidth]{images/tandem-jules-beau-1896}
+ };
+ \node [at=(current page.center), fill=guixorange2, opacity=.4,
+ text width=1.3\textwidth, text height=\textheight] {
+ };
+ \node [at=(current page.south east), anchor=south east, inner sep=5mm] {
+ {\includegraphics[width=0.2\paperwidth]{images/inria-white-2019}}
+ };
+ \end{tikzpicture}
+
+ \vspace{20mm}
+ \Huge{\textbf{Reproducibility \& performance:\\
+ Why choose?}}
+ \\[15mm]
+ \large{Ludovic Courtès}
+ \\[2mm]
+ \alert{\textbf{Forum ORAP}}
+ \\[1.5mm]
+ \oldstylenums{15 March 2024}
+ \vfill{}
+
+\end{frame}
+
+\setbeamercolor{normal text}{bg=black}
+\begin{frame}[plain, fragile]
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.center), inner sep=0mm] {
+ \includegraphics[width=1.05\paperwidth, trim=0 0 0
30mm]{images/workshop-group-photo-2023}
+ };
+ \node [at=(current page.center), fill=black, opacity=.3,
+ text width=1.3\textwidth, text height=\textheight] {
+ };
+
+ \node [at=(current page.south), anchor=south, text=white, inner sep=15pt]
+ {\Large{\url{https://hpc.guix.info}}};
+ \end{tikzpicture}
+
+ \Large{
+ \begin{itemize}
+ \item Guix started in \textbf{2012}
+ \item tools for \textbf{reproducible software deployment}
+ \item runs standalone (Guix System) or atop a \textbf{GNU/Linux} distro
+ \item \highlight{50,000+ packages}
+ \item \highlight{100+ monthly contributors}
+ \item<2-> \highlight{Guix-HPC effort (Inria, MDC, UBC, UTHCS) started in
2017}
+ \end{itemize}
+ }
+\end{frame}
+
+\setbeamercolor{normal text}{bg=guixgrey}
+\begin{frame}
+ \Large{
+ \begin{itemize}
+ % http://zvfak.blogspot.ch/2015/07/gnu-guix-for-easily-managing.html
+ \item \highlight{PlaFRIM} (FR): Inria Bordeaux (3,000+ cores)
+ \item \highlight{GriCAD} (FR): Grenoble (1,000+ cores)
+ \item \highlight{GLICID} (FR): Nantes (4,000+ cores)
+ \item \highlight{Grid'5000} (FR): 8 sites (12,000+ cores)
+ \item \highlight{Max Delbrück Center} (DE): 250-node cluster +
+ workstations
+ % https://ubc.uu.nl/infrastructure/
+ % https://wiki.bioinformatics.umcutrecht.nl/pub/HPC/WebHome/HPC_Flyer.png
+ \item \highlight{UMC Utrecht} (NL): 68-node cluster (1,000+ cores)
+ %
https://www.qriscloud.org.au/support/qriscloud-documentation/75-euramoo-datasheet
+ %
https://www.qriscloud.org.au/support/qriscloud-documentation/76-flashlite-datasheet
+ \item ...
+ \end{itemize}
+ }
+\end{frame}
+
+\setbeamercolor{normal text}{bg=white}
+\begin{frame}[plain]
+ \begin{tikzpicture}[remember picture, overlay]
+ \node [at=(current page.center), inner sep=0pt]{
+ \includegraphics[height=.8\textheight]{images/acm-artifacts-functional}
+ };
+ \node [at=(current page.south), anchor=south,
+ text=guixdarkgrey, fill=white, text opacity=1]{
+
\small{\url{https://www.acm.org/publications/policies/artifact-review-badging}}
+ };
+ \end{tikzpicture}
+\end{frame}
+
+\begin{frame}[plain]
+ \includegraphics[width=\textwidth]{images/big-picture}
+\end{frame}
+
+\setbeamercolor{normal text}{bg=guixgrey}
+\begin{frame}[fragile]
+ \begin{semiverbatim}
+ \LARGE{
+guix \alert{shell}\only<4>{ \alert<4>{--container} \\
+ } \only<1-2>{python
python-numpy}\only<3->{\alert<3>{--manifest}=my-packages.scm} \uncover<2>{\\
+ -- python3 -c 'import numpy'
+}
+\uncover<3->{
+ (\alert{specifications->manifest}
+ '("gcc-toolchain" "openmpi"
+ "scotch" "mumps"))
+}
+}
+ \end{semiverbatim}
+\end{frame}
+
+\begin{frame}[fragile]
+ \LARGE\textbf{Reproducible environments: 2 files, 2 commands}
+ \\[2cm]
+ \LARGE{
+ \begin{enumerate}
+ \item \texttt{guix describe -f channels > \highlight{channels.scm}}
+ \item{ \begin{semiverbatim}
+guix time-machine -C \highlight{channels.scm} -- \\
+ shell -m \highlight{manifest.scm}
+ \end{semiverbatim}}
+ \end{enumerate}
+ }
+\end{frame}
+
+\setbeamercolor{normal text}{fg=black,bg=guixtaupe}
+\begin{frame}[plain, fragile]
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.center)] {
+ \includegraphics[width=\paperwidth]{images/supercomputer-us-doe}
+ };
+ \end{tikzpicture}
+
+ \vfill{}
+ \Huge{\textbf{Two obsessions: MPI and AVX.}}
+\end{frame}
+
+\setbeamercolor{normal text}{fg=black,bg=guixblue1}
+\begin{frame}[plain, fragile]
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.center), inner sep=0pt, rotate=5,
+ drop shadow={opacity=0.7, fill=black}, draw, color=black, line width=1pt]
+
{\includegraphics[width=0.9\paperwidth]{images/gamblin-binary-portability}};
+
+ \node(ref) [at=(current page.south), anchor=south, color=guixdarkgrey,
rounded corners,
+ fill=white, opacity=.7, text opacity=1, inner sep=3mm]
+
{\url{https://trex-coe.eu/events/trex-build-system-hackathon-8-12-nov-2021}};
+ \node [at=(ref.north east), anchor=south east, color=guixdarkgrey, inner
sep=3mm, outer sep=3mm] {
+ Todd Gamblin (Spack)
+ };
+
+ \end{tikzpicture}
+\end{frame}
+
+\setbeamercolor{normal text}{fg=black,bg=white}
+\begin{frame}[plain]
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.center)] {
+ \includegraphics[height=\textheight]{images/openmpi-graph}
+ };
+ \node<2-> [at=(current page.center), fill=guixblue2, opacity=.6,
+ text width=1.3\textwidth, text height=\textheight] {
+ };
+ \node<2-> [at=(current page.south), anchor=south, inner sep=3mm,
+ text=white] {
+
\url{https://hpc.guix.info/blog/2019/12/optimized-and-portable-open-mpi-packaging/}
+ };
+ \end{tikzpicture}
+
+ \Large{
+ \begin{itemize}
+ \item<2-> InfiniBand (UCX, rdma-core)
+ \item<2-> InfiniPath/TrueScale (PSM)
+ \item<2-> Omni-Path (PSM2)
+ \item<2-> Ethernet
+ \item<2-> ...
+ \end{itemize}
+ }
+\end{frame}
+
+\setbeamercolor{normal text}{fg=black,bg=guixtaupe}
+
+\begin{frame}[plain, fragile]
+ \begin{tikzpicture}[
+ box/.style = { fill=guixblue2, inner sep=3mm, rounded corners,
font=\Large }
+ ]
+ \matrix[row sep=12mm, column sep=17mm] {
+ \node(bonnel) [box] {bonnel}; & \node(haswell) [box] {haswell};
& \node(broadwell) [box] {broadwell}; \\
+ \node(silvermont) [box] {silvermont}; & \node(ivybridge) [box]
{ivybridge}; & \node(skylake) [box] {skylake}; \\
+ \node(core2) [box] {core2}; & \node(sandybridge) [box]
{sandybridge}; & \node(skylake-avx512) [box] {skylake-avx512}; \\
+ \node(nehalem) [box] {nehalem}; & \node(westmere) [box]
{westmere}; & \node(etc) [box] {\textit{etc}...}; \\
+ };
+
+ \path[very thick, draw=guixorange1, ->] (bonnel) edge (silvermont);
+ \path[very thick, draw=guixorange1, ->] (silvermont) edge (core2);
+ \path[very thick, draw=guixorange1, ->] (core2) edge (nehalem);
+ \path[very thick, draw=guixorange1, ->] (nehalem) edge (westmere);
+ \path[very thick, draw=guixorange1, ->] (westmere) edge (sandybridge);
+ \path[very thick, draw=guixorange1, ->] (sandybridge) edge (ivybridge);
+ \path[very thick, draw=guixorange1, ->] (ivybridge) edge (haswell);
+ \path[very thick, draw=guixorange1, ->] (haswell) edge (broadwell);
+ \path[very thick, draw=guixorange1, ->] (broadwell) edge (skylake);
+ \path[very thick, draw=guixorange1, ->] (skylake) edge (skylake-avx512);
+ \path[very thick, draw=guixorange1, ->] (skylake-avx512) edge (etc);
+ \end{tikzpicture}
+\end{frame}
+
+\begin{frame}[plain, fragile]
+ \begin{semiverbatim}
+$ \alert{spack} spec netcdf-c
+Concretized
+--------------------------------
+netcdf-c@4.8.1\textsf{...} arch=linux-ubuntu18.04-\alert{skylake_avx512}
+ ^hdf5@1.10.7\textsf{...} arch=linux-ubuntu18.04-\alert<2->{skylake_avx512}
+ ^cmake@3.21.4\textsf{...}
arch=linux-ubuntu18.04-\alert<3->{skylake_avx512}
+ ^ncurses@6.2\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^pkgconf@1.8.0\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^openssl@1.1.1l\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^perl@5.34.0\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^berkeley-db@18.1.40\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^bzip2@1.0.8\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^diffutils@3.8\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^libiconv@1.16\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^gdbm@1.19\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^readline@8.1\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ ^zlib@1.2.11\textsf{...}
arch=linux-ubuntu18.04-\alert<4->{skylake_avx512}
+ \end{semiverbatim}
+
+ \begin{tikzpicture}[overlay]
+ \node<4> [at=(current page.south), anchor=south, inner sep=3mm,
+ outer sep=3mm,
+ text=white, fill=black, rounded corners, opacity=.4, text opacity=1] {
+ \url{https://spack.readthedocs.io/en/latest/getting_started.html}
+ };
+
+ \node<5> [at=(current page.center)] {
+ \includegraphics[height=.9\textheight]{images/xkcd-compiling}
+ };
+ \node<5> [at=(current page.west), anchor=north, inner sep=3mm,
+ outer sep=3mm, rotate=90,
+ text=white, fill=black, rounded corners, opacity=.4, text opacity=1] {
+ \url{https://xkcd.com/303/}
+ };
+ \end{tikzpicture}
+\end{frame}
+
+\setbeamercolor{normal text}{fg=black,bg=guixtaupe}
+
+\begin{frame}[plain, fragile]
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.south), anchor=south, rounded corners, inner
sep=3mm, fill=guixdarkgrey, text opacity=1, opacity=.6, text=white, outer
sep=3mm] {
+
\small{\url{https://hpc.guix.info/blog/2018/01/pre-built-binaries-vs-performance/}}
+ };
+ \end{tikzpicture}
+
+ \begin{tikzpicture}[
+ box/.style = { inner sep=3mm, rounded corners, font=\Large },
+ crypto/.style = { box, fill=guixblue2 },
+ linalg/.style = { box, fill=guixblue1 },
+ multip/.style = { box, fill=guixdarkgrey },
+ lang/.style = { box, fill=guixred2 },
+ ]
+ \matrix[row sep=12mm, column sep=20mm] {
+ \node[box]{GNU libc}; & \node[crypto]{Libgcrypt}; &
\node[crypto]{Nettle}; \\
+ \node[linalg]{OpenBLAS}; & \node[linalg]{BLIS}; & \node[linalg]{FFTW}; \\
+ \node[multip]{GMP}; & \node[lang]{Julia}; & \node[lang]{Rust}; \\
+ };
+ \end{tikzpicture}
+
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.east), anchor=south east, rotate=-15, inner
sep=4mm,
+ rounded corners, fill=guixorange1, text=black, outer sep=10mm,
+ text width=35mm, opacity=.7, text opacity=1]
+ { \large{\textbf{Function\\ multi-versioning}} };
+ \end{tikzpicture}
+\end{frame}
+
+
+\begin{frame}[plain, fragile]
+ \begin{semiverbatim}
+ \Large{
+\$ guix \alert{shell} eigen-benchmarks -- \\
+ benchBlasGemm 240 240 240
+240 x 240 x 240
+cblas: 0.20367 (16.289 GFlops/s)
+eigen : 0.285149 (11.635 GFlops/s)
+
+\uncover<2->{\$ guix \alert{shell} \alert{--tune} eigen-benchmarks -- \\
+ benchBlasGemm 240 240 240
+guix shell: tuning for CPU micro-architecture \alert{skylake}
+240 x 240 x 240
+cblas: 0.203131 (16.333 GFlops/s)
+eigen : 0.0929638 (\alert{35.688} GFlops/s)}
+ }
+ \end{semiverbatim}
+
+ \begin{tikzpicture}[overlay]
+ \node<2-> [at=(current page.east), anchor=south east, rotate=-15, inner
sep=4mm,
+ rounded corners, fill=guixorange1, text=black, outer sep=10mm,
+ text width=35mm]
+ { \large{\textbf{Package\\ multi-versioning}} };
+ \node<2-> [at=(current page.south), anchor=south, rounded corners, inner
sep=3mm, fill=guixdarkgrey, text opacity=1, opacity=.6, text=white, outer
sep=3mm] {
+
\url{https://hpc.guix.info/blog/2022/01/tuning-packages-for-a-cpu-micro-architecture/}
+ };
+ \end{tikzpicture}
+\end{frame}
+
+\setbeamercolor{normal text}{fg=black,bg=white}
+\screenshot[width=0.8\textwidth]{images/rocm-logo}
+
+\setbeamercolor{normal text}{fg=black,bg=guixgrey}
+\begin{frame}[fragile]
+ \begin{semiverbatim}
+\LARGE{
+laptop$ \alert{guix pack} -RR hpcg -S /bin=bin
+
+
+\pause
+
+adastra$ \alert{tar} xf pack.tar.gz
+adastra$ \alert{./bin/mpirun} -n 8 ... \\
+ \alert{./bin/rochpcg} 280 280 280 180
+}
+ \end{semiverbatim}
+
+ \begin{tikzpicture}[overlay]
+ \node<2-> [at=(current page.center), shape=isosceles triangle,
+ rotate=-90, fill=guixorange1, inner sep=3mm, anchor=east] {};
+ \node<2-> [at=(current page.south), anchor=south, rounded corners, inner
sep=3mm, fill=guixdarkgrey, text opacity=1, opacity=.6, text=white, outer
sep=3mm] {
+ \url{https://hpc.guix.info/blog/2024/01/hip-and-rocm-come-to-guix/}
+ };
+ \end{tikzpicture}
+\end{frame}
+
+\setbeamercolor{normal text}{bg=guixblue2}
+\begin{frame}[plain]
+ \LARGE{
+ \begin{itemize}
+ \item P. Swartvagher,
+ \href{https://theses.hal.science/tel-03989856}{\textit{On the
+ Interactions between HPC Task-based Runtime Systems and
+ Communication Libraries}}, PhD thesis, Dec. 2022
+ \item M. Felšöci,
+ \href{https://theses.hal.science/tel-04077474}\textit{Fast Solvers
+ for High-Frequency Aeroacoustics}, PhD thesis, Feb. 2023
+ \item N. Vallet \textit{et al.},
+ \href{https://doi.org/10.1038/s41597-022-01720-9}{\textit{Toward
+ practical transparent verifiable and long-term reproducible
+ research using Guix}}, Nature Scientific Data, Oct. 2022
+ \end{itemize}
+ }
+\end{frame}
+
+\setbeamercolor{normal text}{bg=guixorange1}
+\begin{frame}[fragile]
+ \Huge{
+ \textbf{Reproducible deployment} \\
+ can be achieved \\
+ \textbf{without sacrificing performance}. \\
+ }
+\end{frame}
+
+
+% conclusion:
+\setbeamercolor{normal text}{bg=white}
+\begin{frame}[fragile]
+ \vspace{-2cm}
+ \begin{tikzpicture}
+ \matrix[row sep=10mm, column sep=1cm]{
+ % https://git-scm.com/downloads/logos
+ \node {\includegraphics[width=0.2\textwidth]{images/Git-Logo-2Color}}; &
+ \node {\includegraphics[width=0.15\textwidth]{images/arrow-right}}; &
+ \node
{\includegraphics[width=0.24\textwidth]{images/Guix-horizontal-print}};
+ \\
+ };
+ \end{tikzpicture}
+
+ \begin{tikzpicture}[overlay]
+ \node [at=(current page.center), anchor=north,
+ text=black, text width=.9\textwidth]{
+ \Huge{Let's add\\ \textbf{reproducible deployment}\\
+ to our best practices book. \par
+ }};
+ \end{tikzpicture}
+\end{frame}
+
+%% \setbeamercolor{normal text}{bg=guixorange1}
+%% \begin{frame}[fragile]
+%% \center{NumPEx} \\
+%% \center{+} \\
+%% \center{Jules-Verne} \\
+%% \end{frame}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\setbeamercolor{normal text}{bg=black}
+\begin{frame}[plain]
+
+\vfill{
+ \vspace{3cm}
+
\center{\includegraphics[width=0.5\textwidth]{images/guixhpc-logo-transparent}}\\[1.0cm]
+ \center{\alert{\url{https://hpc.guix.info}}} \\[0.2cm]
+ \texttt{ludovic.courtes@inria.fr |} @civodul@toot.aquilenet.fr
+ \\[1.2cm]
+}
+\end{frame}
+
+\begin{frame}{}
+ \begin{textblock}{12}(2, 6)
+ \tiny{
+ Copyright \copyright{} 2012--2024 Ludovic Courtès
\texttt{ludo@gnu.org}.\\[3.0mm]
+ GNU Guix logo by Luis Felipe, CC-BY-SA 4.0,
\url{https://guix.gnu.org/graphics}.
+ \\[1.5mm]
+
+ Tandem picture by Jules Beau, public domain,
\url{https://images.bnf.fr/\#/detail/1535157/9}
+ \\[1.5mm]
+ LLNL supercomputer picture by US DoE, public domain,
+
\url{https://commons.wikimedia.org/wiki/File:U.S._Department_of_Energy_-_Science_-_477_018_010_(9563440651).jpg}
+ \\[1.5mm]
+ Copyright of other images included in this document is held by
+ their respective owners.
+ \\[3.0mm]
+ This work is licensed under the \alert{Creative Commons
+ Attribution-Share Alike 4.0} License. To view a copy of this
+ license, visit
+ \url{https://creativecommons.org/licenses/by-sa/4.0/} or send a
+ letter to Creative Commons, 171 Second Street, Suite 300, San
+ Francisco, California, 94105, USA.
+ \\[2.0mm]
+ At your option, you may instead copy, distribute and/or modify
+ this document under the terms of the \alert{GNU Free Documentation
+ License, Version 1.3 or any later version} published by the Free
+ Software Foundation; with no Invariant Sections, no Front-Cover
+ Texts, and no Back-Cover Texts. A copy of the license is
+ available at \url{https://www.gnu.org/licenses/gfdl.html}.
+ \\[2.0mm]
+ % Give a link to the 'Transparent Copy', as per Section 3 of the GFDL.
+ The source of this document is available from
+ \url{https://git.sv.gnu.org/cgit/guix/maintenance.git}.
+ }
+ \end{textblock}
+\end{frame}
+
+\end{document}
+
+% Local Variables:
+% coding: utf-8
+% comment-start: "%"
+% comment-end: ""
+% ispell-local-dictionary: "american"
+% compile-command: "guix shell -m ../beamer-manifest.scm -- rubber --pdf
talk.tex"
+% End:
+
+%% LocalWords: Reproducibility