comparison slide/slide.html @ 49:71e1425687f3

update tex
author Ken Miyahira <e175733@ie.u-ryukyu.ac.jp>
date Fri, 12 Feb 2021 23:49:40 +0900
parents 47a9b8bf069b
children d0b469710cb2
comparison
equal deleted inserted replaced
48:47a9b8bf069b 49:71e1425687f3
67 <h1>研究目的</h1> 67 <h1>研究目的</h1>
68 <ul> 68 <ul>
69 <li>情報通信技術の普及に伴い学ぶことが増えている</li> 69 <li>情報通信技術の普及に伴い学ぶことが増えている</li>
70 <li>その学習環境として、Virtual MachineやContainerがある 70 <li>その学習環境として、Virtual MachineやContainerがある
71 <ul> 71 <ul>
72 <li>高性能なPC</li> 72 <li>実行には高性能なPCが必要な場合がある</li>
73 <li>クラウドサービス 73 <li>クラウドサービスもあるが、無料だと制限がある</li>
74 <ul> 74 </ul>
75 <li>無料だと制限がある</li> 75 </li>
76 </ul> 76 <li>学生の学習環境として、コストを支払う必要のない環境を提供したい</li>
77 </li> 77 <li>今年度はシステム更新があり、新しくSSDとGPUが搭載される
78 <ul>
79 <li>リソースを最大限利用できる教育情報システムが必要となる</li>
78 </ul> 80 </ul>
79 </li> 81 </li>
80 </ul> 82 </ul>
81 </section> 83 </section>
82 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="3" data-paginate="true" data-class="slide" data-theme="default" data-style="section { 84 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="3" data-paginate="true" data-class="slide" data-theme="default" data-style="section {
203 position: absolute; 205 position: absolute;
204 left: 50px; top: 35px; 206 left: 50px; top: 35px;
205 } 207 }
206 " class="slide" data-marpit-pagination="6" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default; 208 " class="slide" data-marpit-pagination="6" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default;
207 ;"> 209 ;">
208 <h1>オンプレミス環境</h1> 210 <h1>教育情報システムの要件</h1>
209 <ul> 211 <ul>
210 <li>汎用サーバ x 4</li> 212 <li>マルチユーザに対応
211 <li>ディスクサーバ x 2</li> 213 <ul>
212 </ul> 214 <li>本コースの学生、教員に対応する必要がある</li>
213 <table> 215 </ul>
214 <thead> 216 </li>
215 <tr> 217 <li>学生がサーバのリソースを利用できる環境</li>
216 <th style="text-align:center"></th> 218 <li>手間が少なく利用できる環境</li>
217 <th style="text-align:center"></th> 219 <li>信頼性の高いファイルシステム</li>
218 </tr> 220 </ul>
219 </thead>
220 <tbody>
221 <tr>
222 <td style="text-align:center">CPU</td>
223 <td style="text-align:center">Intel Xeon Gold 6238 (2.10GHz/22Core)</td>
224 </tr>
225 <tr>
226 <td style="text-align:center">GPU</td>
227 <td style="text-align:center">Nvidia Tesla V100S</td>
228 </tr>
229 <tr>
230 <td style="text-align:center">メモリ</td>
231 <td style="text-align:center">512GB</td>
232 </tr>
233 <tr>
234 <td style="text-align:center">SAS SSD</td>
235 <td style="text-align:center">5TB</td>
236 </tr>
237 <tr>
238 <td style="text-align:center">NVMe SSD</td>
239 <td style="text-align:center">1.5TB</td>
240 </tr>
241 </tbody>
242 </table>
243 </section> 221 </section>
244 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="7" data-paginate="true" data-class="slide" data-theme="default" data-style="section { 222 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="7" data-paginate="true" data-class="slide" data-theme="default" data-style="section {
245 background-color: #FFFFFF; 223 background-color: #FFFFFF;
246 font-size: 28px; 224 font-size: 28px;
247 color: #4b4b4b; 225 color: #4b4b4b;
302 } 280 }
303 " class="slide" data-marpit-pagination="8" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default; 281 " class="slide" data-marpit-pagination="8" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default;
304 ;"> 282 ;">
305 <h1>コンテナ環境の導入</h1> 283 <h1>コンテナ環境の導入</h1>
306 <ul> 284 <ul>
307 <li>要件としてマルチユーザであり、GPUが利用できるなどがある</li> 285 <li>マルチユーザで利用できるPodman、Singularityを導入する</li>
308 <li>そこで、Podman、Singularityを導入する</li>
309 <li>Podman 286 <li>Podman
310 <ul> 287 <ul>
311 <li>rootlessで利用できる</li> 288 <li>rootlessで利用できる</li>
312 <li>nvidia-dockerの設定を行えばGPUを利用できる</li> 289 <li>nvidia-dockerの設定を行えばGPUを利用できる</li>
313 </ul> 290 </ul>
348 <h1>コンテナエンジンの補い</h1> 325 <h1>コンテナエンジンの補い</h1>
349 <ul> 326 <ul>
350 <li> 327 <li>
351 <p>Podman</p> 328 <p>Podman</p>
352 <ul> 329 <ul>
353 <li>イメージの作成やコンテナの作成が遅い 330 <li>イメージの作成やコンテナの作成が遅い</li>
354 <ul>
355 <li>Podmanがまだ開発段階</li>
356 </ul>
357 </li>
358 <li>rootlessでは実行できない機能がある 331 <li>rootlessでは実行できない機能がある
359 <ul> 332 <ul>
360 <li>IPアドレスの割り当て</li> 333 <li>IPアドレスの割り当て</li>
361 </ul> 334 </ul>
362 </li> 335 </li>
1067 <p>実験概要</p> 1040 <p>実験概要</p>
1068 <ul> 1041 <ul>
1069 <li>イメージのBuild速度を比較する</li> 1042 <li>イメージのBuild速度を比較する</li>
1070 </ul> 1043 </ul>
1071 </li> 1044 </li>
1072 <li> 1045 </ul>
1073 <p>Build速度の比較</p> 1046 <pre><code class="language-Dockerfile"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap><span class="hljs-keyword">FROM</span> ubuntu:<span class="hljs-number">20.04</span>
1047 <span class="hljs-keyword">RUN</span><span class="bash"> apt-get update &amp;&amp; \
1048 apt-get upgrade -y</span>
1049 </span></span></foreignObject></svg></code></pre>
1050 <ul>
1051 <li>Build速度の比較
1074 <ul> 1052 <ul>
1075 <li>Docker</li> 1053 <li>Docker</li>
1076 <li>Podman (rootless)</li> 1054 <li>Podman (rootless)</li>
1077 <li>ie-podman</li> 1055 <li>ie-podman</li>
1078 </ul> 1056 </ul>
1079 </li> 1057 </li>
1080 </ul> 1058 </ul>
1081 </section> 1059 </section>
1082 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="28" data-paginate="true" data-class="slide" data-theme="default" data-style="section { 1060 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section data-paginate="true" data-class="slide" data-theme="default" data-style="section {
1083 background-color: #FFFFFF; 1061 background-color: #FFFFFF;
1084 font-size: 28px; 1062 font-size: 28px;
1085 color: #4b4b4b; 1063 color: #4b4b4b;
1086 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;; 1064 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;;
1087 } 1065 }
1097 section.slide h1 { 1075 section.slide h1 {
1098 position: absolute; 1076 position: absolute;
1099 left: 50px; top: 35px; 1077 left: 50px; top: 35px;
1100 } 1078 }
1101 " class="slide" data-marpit-pagination="28" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default; 1079 " class="slide" data-marpit-pagination="28" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default;
1102 ;"> 1080 ;" data-marpit-advanced-background="background"><div data-marpit-advanced-background-container="true" data-marpit-advanced-background-direction="horizontal"><figure style="background-image:url(&quot;images/container2.png&quot;);background-size:70%;"></figure></div></section></foreignObject><foreignObject width="1280" height="720"><section id="28" data-paginate="true" data-class="slide" data-theme="default" data-style="section {
1081 background-color: #FFFFFF;
1082 font-size: 28px;
1083 color: #4b4b4b;
1084 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;;
1085 }
1086
1087 section.title {
1088 font-size: 40px;
1089 padding: 40px;
1090 }
1091 section.title h1 {
1092 text-align: center;
1093 }
1094
1095 section.slide h1 {
1096 position: absolute;
1097 left: 50px; top: 35px;
1098 }
1099 " class="slide" data-marpit-pagination="28" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default;
1100 ;" data-marpit-advanced-background="content">
1103 <h1>ie-podmanの評価 2/3</h1> 1101 <h1>ie-podmanの評価 2/3</h1>
1104 <pre><code class="language-Dockerfile"><svg data-marp-fitting="svg" data-marp-fitting-code><foreignObject><span data-marp-fitting-svg-content><span data-marp-fitting-svg-content-wrap><span class="hljs-keyword">FROM</span> ubuntu:<span class="hljs-number">18.04</span> 1102 </section>
1105 <span class="hljs-keyword">RUN</span><span class="bash"> apt-get update &amp;&amp; \ 1103 </foreignObject><foreignObject width="1280" height="720" data-marpit-advanced-background="pseudo"><section class="slide" style="" data-marpit-advanced-background="pseudo" data-marpit-pagination="28" data-marpit-pagination-total="32"></section></foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="29" data-paginate="true" data-class="slide" data-theme="default" data-style="section {
1106 apt-get upgrade -y &amp;&amp; \
1107 DEBIAN_FRONTEND=noninteractive \
1108 apt-get install -y \
1109 qemu-utils qemu-efi-aarch64 \
1110 qemu-system-arm qemu-system-x86 \
1111 build-essential uuid-dev \
1112 git python iasl wget vim nasm &amp;&amp; \
1113 DEBIAN_FRONTEND=noninteractive \
1114 apt-get install -y \
1115 crossbuild-essential-armhf</span>
1116
1117 <span class="hljs-keyword">WORKDIR</span><span class="bash"> /workdir</span>
1118 <span class="hljs-keyword">RUN</span><span class="bash"> git <span class="hljs-built_in">clone</span> --recursive https://github.com/tianocore/edk2 &amp;&amp; \
1119 wget https://sourceforge.net/projects/gnu-efi/files/gnu-efi-3.0.12.tar.bz2/download &amp;&amp; \
1120 tar xf download</span>
1121 </span></span></foreignObject></svg></code></pre>
1122 </section>
1123 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section data-paginate="true" data-class="slide" data-theme="default" data-style="section {
1124 background-color: #FFFFFF; 1104 background-color: #FFFFFF;
1125 font-size: 28px; 1105 font-size: 28px;
1126 color: #4b4b4b; 1106 color: #4b4b4b;
1127 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;; 1107 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;;
1128 } 1108 }
1138 section.slide h1 { 1118 section.slide h1 {
1139 position: absolute; 1119 position: absolute;
1140 left: 50px; top: 35px; 1120 left: 50px; top: 35px;
1141 } 1121 }
1142 " class="slide" data-marpit-pagination="29" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default; 1122 " class="slide" data-marpit-pagination="29" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default;
1143 ;" data-marpit-advanced-background="background"><div data-marpit-advanced-background-container="true" data-marpit-advanced-background-direction="horizontal"><figure style="background-image:url(&quot;images/container.png&quot;);background-size:70%;"></figure></div></section></foreignObject><foreignObject width="1280" height="720"><section id="29" data-paginate="true" data-class="slide" data-theme="default" data-style="section { 1123 ;">
1144 background-color: #FFFFFF;
1145 font-size: 28px;
1146 color: #4b4b4b;
1147 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;;
1148 }
1149
1150 section.title {
1151 font-size: 40px;
1152 padding: 40px;
1153 }
1154 section.title h1 {
1155 text-align: center;
1156 }
1157
1158 section.slide h1 {
1159 position: absolute;
1160 left: 50px; top: 35px;
1161 }
1162 " class="slide" data-marpit-pagination="29" data-marpit-pagination-total="32" style="--paginate:true;--class:slide;--theme:default;
1163 ;" data-marpit-advanced-background="content">
1164 <h1>ie-podmanの評価 3/3</h1> 1124 <h1>ie-podmanの評価 3/3</h1>
1165 </section> 1125 <ul>
1166 </foreignObject><foreignObject width="1280" height="720" data-marpit-advanced-background="pseudo"><section class="slide" style="" data-marpit-advanced-background="pseudo" data-marpit-pagination="29" data-marpit-pagination-total="32"></section></foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="30" data-paginate="true" data-class="slide" data-theme="default" data-style="section { 1126 <li>Rootlessは<code>syscall</code>が複数呼ばれている
1127 <ul>
1128 <li>そのため、イメージの作成が遅いのではないか</li>
1129 </ul>
1130 </li>
1131 <li>左がrootless、右がrootfull</li>
1132 </ul>
1133 <p><img src="images/syscall.png" alt="height:325" style="height:325px;" /></p>
1134 </section>
1135 </foreignObject></svg><svg data-marpit-svg="" viewBox="0 0 1280 720"><foreignObject width="1280" height="720"><section id="30" data-paginate="true" data-class="slide" data-theme="default" data-style="section {
1167 background-color: #FFFFFF; 1136 background-color: #FFFFFF;
1168 font-size: 28px; 1137 font-size: 28px;
1169 color: #4b4b4b; 1138 color: #4b4b4b;
1170 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;; 1139 font-family: &quot;Arial&quot;, &quot;Hiragino Maru Gothic ProN&quot;;
1171 } 1140 }
1265 </ul> 1234 </ul>
1266 </li> 1235 </li>
1267 </ul> 1236 </ul>
1268 </section> 1237 </section>
1269 <script>!function(){"use strict";const t="marpitSVGPolyfill:setZoomFactor,",e=Symbol();let r,o;function n(n){const i="object"==typeof n&&n.target||document,a="object"==typeof n?n.zoom:n;window[e]||(Object.defineProperty(window,e,{configurable:!0,value:!0}),window.addEventListener("message",(({data:e,origin:r})=>{if(r===window.origin)try{if(e&&"string"==typeof e&&e.startsWith(t)){const[,t]=e.split(","),r=Number.parseFloat(t);Number.isNaN(r)||(o=r)}}catch(t){console.error(t)}})));let l=!1;Array.from(i.querySelectorAll("svg[data-marpit-svg]"),(t=>{var e,n,i,s;t.style.transform||(t.style.transform="translateZ(0)");const c=a||o||t.currentScale||1;r!==c&&(r=c,l=c);const d=t.getBoundingClientRect(),{length:u}=t.children;for(let r=0;r<u;r+=1){const o=t.children[r],a=o.getScreenCTM();if(a){const t=null!==(n=null===(e=o.x)||void 0===e?void 0:e.baseVal.value)&&void 0!==n?n:0,r=null!==(s=null===(i=o.y)||void 0===i?void 0:i.baseVal.value)&&void 0!==s?s:0,l=o.firstChild,{style:u}=l;u.transformOrigin||(u.transformOrigin=`${-t}px ${-r}px`),u.transform=`scale(${c}) matrix(${a.a}, ${a.b}, ${a.c}, ${a.d}, ${a.e-d.left}, ${a.f-d.top}) translateZ(0.0001px)`}}})),!1!==l&&Array.from(i.querySelectorAll("iframe"),(({contentWindow:e})=>{null==e||e.postMessage(`${t}${l}`,"null"===window.origin?"*":window.origin)}))}r=1,o=void 0;const i=(t,e,r)=>{if(t.getAttribute(e)!==r)return t.setAttribute(e,r),!0};function a({once:t=!1,target:e=document}={}){const r="Apple Computer, Inc."===navigator.vendor?[n]:[];let o=!t;const a=()=>{for(const t of r)t({target:e});!function(t=document){Array.from(t.querySelectorAll('svg[data-marp-fitting="svg"]'),(t=>{var e;const r=t.firstChild,o=r.firstChild,{scrollWidth:n,scrollHeight:a}=o;let l,s=1;if(t.hasAttribute("data-marp-fitting-code")&&(l=null===(e=t.parentElement)||void 0===e?void 0:e.parentElement),t.hasAttribute("data-marp-fitting-math")&&(l=t.parentElement),l){const t=getComputedStyle(l),e=Math.ceil(l.clientWidth-parseFloat(t.paddingLeft||"0")-parseFloat(t.paddingRight||"0"));e&&(s=e)}const c=Math.max(n,s),d=Math.max(a,1),u=`0 0 ${c} ${d}`;i(r,"width",`${c}`),i(r,"height",`${d}`),i(t,"preserveAspectRatio",getComputedStyle(t).getPropertyValue("--preserve-aspect-ratio")||"xMinYMin meet"),i(t,"viewBox",u)&&t.classList.toggle("__reflow__")}))}(e),o&&window.requestAnimationFrame(a)};return a(),()=>{o=!1}}const l=Symbol(),s=document.currentScript;((t=document)=>{if("undefined"==typeof window)throw new Error("Marp Core's browser script is valid only in browser context.");if(t[l])return t[l];const e=a({target:t}),r=()=>{e(),delete t[l]};Object.defineProperty(t,l,{configurable:!0,value:r})})(s?s.getRootNode():document)}(); 1238 <script>!function(){"use strict";const t="marpitSVGPolyfill:setZoomFactor,",e=Symbol();let r,o;function n(n){const i="object"==typeof n&&n.target||document,a="object"==typeof n?n.zoom:n;window[e]||(Object.defineProperty(window,e,{configurable:!0,value:!0}),window.addEventListener("message",(({data:e,origin:r})=>{if(r===window.origin)try{if(e&&"string"==typeof e&&e.startsWith(t)){const[,t]=e.split(","),r=Number.parseFloat(t);Number.isNaN(r)||(o=r)}}catch(t){console.error(t)}})));let l=!1;Array.from(i.querySelectorAll("svg[data-marpit-svg]"),(t=>{var e,n,i,s;t.style.transform||(t.style.transform="translateZ(0)");const c=a||o||t.currentScale||1;r!==c&&(r=c,l=c);const d=t.getBoundingClientRect(),{length:u}=t.children;for(let r=0;r<u;r+=1){const o=t.children[r],a=o.getScreenCTM();if(a){const t=null!==(n=null===(e=o.x)||void 0===e?void 0:e.baseVal.value)&&void 0!==n?n:0,r=null!==(s=null===(i=o.y)||void 0===i?void 0:i.baseVal.value)&&void 0!==s?s:0,l=o.firstChild,{style:u}=l;u.transformOrigin||(u.transformOrigin=`${-t}px ${-r}px`),u.transform=`scale(${c}) matrix(${a.a}, ${a.b}, ${a.c}, ${a.d}, ${a.e-d.left}, ${a.f-d.top}) translateZ(0.0001px)`}}})),!1!==l&&Array.from(i.querySelectorAll("iframe"),(({contentWindow:e})=>{null==e||e.postMessage(`${t}${l}`,"null"===window.origin?"*":window.origin)}))}r=1,o=void 0;const i=(t,e,r)=>{if(t.getAttribute(e)!==r)return t.setAttribute(e,r),!0};function a({once:t=!1,target:e=document}={}){const r="Apple Computer, Inc."===navigator.vendor?[n]:[];let o=!t;const a=()=>{for(const t of r)t({target:e});!function(t=document){Array.from(t.querySelectorAll('svg[data-marp-fitting="svg"]'),(t=>{var e;const r=t.firstChild,o=r.firstChild,{scrollWidth:n,scrollHeight:a}=o;let l,s=1;if(t.hasAttribute("data-marp-fitting-code")&&(l=null===(e=t.parentElement)||void 0===e?void 0:e.parentElement),t.hasAttribute("data-marp-fitting-math")&&(l=t.parentElement),l){const t=getComputedStyle(l),e=Math.ceil(l.clientWidth-parseFloat(t.paddingLeft||"0")-parseFloat(t.paddingRight||"0"));e&&(s=e)}const c=Math.max(n,s),d=Math.max(a,1),u=`0 0 ${c} ${d}`;i(r,"width",`${c}`),i(r,"height",`${d}`),i(t,"preserveAspectRatio",getComputedStyle(t).getPropertyValue("--preserve-aspect-ratio")||"xMinYMin meet"),i(t,"viewBox",u)&&t.classList.toggle("__reflow__")}))}(e),o&&window.requestAnimationFrame(a)};return a(),()=>{o=!1}}const l=Symbol(),s=document.currentScript;((t=document)=>{if("undefined"==typeof window)throw new Error("Marp Core's browser script is valid only in browser context.");if(t[l])return t[l];const e=a({target:t}),r=()=>{e(),delete t[l]};Object.defineProperty(t,l,{configurable:!0,value:r})})(s?s.getRootNode():document)}();
1270 </script></foreignObject></svg></div><script>!function(){"use strict";var e=function(e,t){var n,r=1===(e.parent||e).nodeType?e.parent||e:document.querySelector(e.parent||e),s=[].filter.call("string"==typeof e.slides?r.querySelectorAll(e.slides):e.slides||r.children,(function(e){return"SCRIPT"!==e.nodeName})),a={},i=function(e,t){return(t=t||{}).index=s.indexOf(e),t.slide=e,t},o=function(e,t){a[e]=(a[e]||[]).filter((function(e){return e!==t}))},l=function(e,t){return(a[e]||[]).reduce((function(e,n){return e&&!1!==n(t)}),!0)},c=function(e,t){s[e]&&(n&&l("deactivate",i(n,t)),n=s[e],l("activate",i(n,t)))},d=function(e,t){var r=s.indexOf(n)+e;l(e>0?"next":"prev",i(n,t))&&c(r,t)},u={off:o,on:function(e,t){return(a[e]||(a[e]=[])).push(t),o.bind(null,e,t)},fire:l,slide:function(e,t){if(!arguments.length)return s.indexOf(n);l("slide",i(s[e],t))&&c(e,t)},next:d.bind(null,1),prev:d.bind(null,-1),parent:r,slides:s,destroy:function(e){l("destroy",i(n,e)),a={}}};return(t||[]).forEach((function(e){e(u)})),n||c(0),u};function t(e){e.parent.classList.add("bespoke-marp-parent"),e.slides.forEach((e=>e.classList.add("bespoke-marp-slide"))),e.on("activate",(t=>{const n=t.slide,r=!n.classList.contains("bespoke-marp-active");e.slides.forEach((e=>{e.classList.remove("bespoke-marp-active"),e.setAttribute("aria-hidden","true")})),n.classList.add("bespoke-marp-active"),n.removeAttribute("aria-hidden"),r&&(n.classList.add("bespoke-marp-active-ready"),document.body.clientHeight,n.classList.remove("bespoke-marp-active-ready"))}))}function n(e){let t=0,n=0;Object.defineProperty(e,"fragments",{enumerable:!0,value:e.slides.map((e=>[null,...e.querySelectorAll("[data-marpit-fragment]")]))});const r=r=>void 0!==e.fragments[t][n+r],s=(r,s)=>{t=r,n=s,e.fragments.forEach(((e,t)=>{e.forEach(((e,n)=>{if(null==e)return;const a=t<r||t===r&&n<=s;e.setAttribute("data-bespoke-marp-fragment",a?"active":"inactive"),t===r&&n===s?e.setAttribute("data-bespoke-marp-current-fragment","current"):e.removeAttribute("data-bespoke-marp-current-fragment")}))})),e.fragmentIndex=s;const a={slide:e.slides[r],index:r,fragments:e.fragments[r],fragmentIndex:s};e.fire("fragment",a)};e.on("next",(({fragment:a=!0})=>{if(a){if(r(1))return s(t,n+1),!1;const a=t+1;e.fragments[a]&&s(a,0)}else{const r=e.fragments[t].length;if(n+1<r)return s(t,r-1),!1;const a=e.fragments[t+1];a&&s(t+1,a.length-1)}})),e.on("prev",(({fragment:a=!0})=>{if(r(-1)&&a)return s(t,n-1),!1;const i=t-1;e.fragments[i]&&s(i,e.fragments[i].length-1)})),e.on("slide",(({index:t,fragment:n})=>{let r=0;if(void 0!==n){const s=e.fragments[t];if(s){const{length:e}=s;r=-1===n?e-1:Math.min(Math.max(n,0),e-1)}}s(t,r)})),s(0,0)} 1239 </script></foreignObject></svg></div><div class="bespoke-marp-note" data-index="5" tabindex="0"><p>---
1240 # オンプレミス環境
1241
1242 - 汎用サーバ x 4
1243 - ディスクサーバ x 2
1244
1245 | | |
1246 | :---: | :---: |
1247 | CPU | Intel Xeon Gold 6238 (2.10GHz/22Core) |
1248 | GPU | Nvidia Tesla V100S |
1249 | メモリ | 512GB |
1250 | SAS SSD | 5TB |
1251 | NVMe SSD | 1.5TB |</p></div><script>!function(){"use strict";var e=function(e,t){var n,r=1===(e.parent||e).nodeType?e.parent||e:document.querySelector(e.parent||e),s=[].filter.call("string"==typeof e.slides?r.querySelectorAll(e.slides):e.slides||r.children,(function(e){return"SCRIPT"!==e.nodeName})),a={},i=function(e,t){return(t=t||{}).index=s.indexOf(e),t.slide=e,t},o=function(e,t){a[e]=(a[e]||[]).filter((function(e){return e!==t}))},l=function(e,t){return(a[e]||[]).reduce((function(e,n){return e&&!1!==n(t)}),!0)},c=function(e,t){s[e]&&(n&&l("deactivate",i(n,t)),n=s[e],l("activate",i(n,t)))},d=function(e,t){var r=s.indexOf(n)+e;l(e>0?"next":"prev",i(n,t))&&c(r,t)},u={off:o,on:function(e,t){return(a[e]||(a[e]=[])).push(t),o.bind(null,e,t)},fire:l,slide:function(e,t){if(!arguments.length)return s.indexOf(n);l("slide",i(s[e],t))&&c(e,t)},next:d.bind(null,1),prev:d.bind(null,-1),parent:r,slides:s,destroy:function(e){l("destroy",i(n,e)),a={}}};return(t||[]).forEach((function(e){e(u)})),n||c(0),u};function t(e){e.parent.classList.add("bespoke-marp-parent"),e.slides.forEach((e=>e.classList.add("bespoke-marp-slide"))),e.on("activate",(t=>{const n=t.slide,r=!n.classList.contains("bespoke-marp-active");e.slides.forEach((e=>{e.classList.remove("bespoke-marp-active"),e.setAttribute("aria-hidden","true")})),n.classList.add("bespoke-marp-active"),n.removeAttribute("aria-hidden"),r&&(n.classList.add("bespoke-marp-active-ready"),document.body.clientHeight,n.classList.remove("bespoke-marp-active-ready"))}))}function n(e){let t=0,n=0;Object.defineProperty(e,"fragments",{enumerable:!0,value:e.slides.map((e=>[null,...e.querySelectorAll("[data-marpit-fragment]")]))});const r=r=>void 0!==e.fragments[t][n+r],s=(r,s)=>{t=r,n=s,e.fragments.forEach(((e,t)=>{e.forEach(((e,n)=>{if(null==e)return;const a=t<r||t===r&&n<=s;e.setAttribute("data-bespoke-marp-fragment",a?"active":"inactive"),t===r&&n===s?e.setAttribute("data-bespoke-marp-current-fragment","current"):e.removeAttribute("data-bespoke-marp-current-fragment")}))})),e.fragmentIndex=s;const a={slide:e.slides[r],index:r,fragments:e.fragments[r],fragmentIndex:s};e.fire("fragment",a)};e.on("next",(({fragment:a=!0})=>{if(a){if(r(1))return s(t,n+1),!1;const a=t+1;e.fragments[a]&&s(a,0)}else{const r=e.fragments[t].length;if(n+1<r)return s(t,r-1),!1;const a=e.fragments[t+1];a&&s(t+1,a.length-1)}})),e.on("prev",(({fragment:a=!0})=>{if(r(-1)&&a)return s(t,n-1),!1;const i=t-1;e.fragments[i]&&s(i,e.fragments[i].length-1)})),e.on("slide",(({index:t,fragment:n})=>{let r=0;if(void 0!==n){const s=e.fragments[t];if(s){const{length:e}=s;r=-1===n?e-1:Math.min(Math.max(n,0),e-1)}}s(t,r)})),s(0,0)}
1271 /*! 1252 /*!
1272 * screenfull 1253 * screenfull
1273 * v5.0.2 - 2020-02-13 1254 * v5.0.2 - 2020-02-13
1274 * (c) Sindre Sorhus; MIT License 1255 * (c) Sindre Sorhus; MIT License
1275 */ 1256 */