Using Docker with GPUs Sandra Gesing sandra.gesing@nd.edu - - PowerPoint PPT Presentation

using docker with gpus
SMART_READER_LITE
LIVE PREVIEW

Using Docker with GPUs Sandra Gesing sandra.gesing@nd.edu - - PowerPoint PPT Presentation

CCL Workshop on Scalable ScienCfic CompuCng 2016 Using Docker with GPUs Sandra Gesing sandra.gesing@nd.edu 20 October 2016 State of the Art


slide-1
SLIDE 1

¡

Sandra ¡Gesing ¡

sandra.gesing@nd.edu ¡ ¡ ¡20 ¡October ¡2016 ¡

Using ¡Docker ¡with ¡GPUs ¡

CCL ¡Workshop ¡ ¡

  • n ¡Scalable ¡ScienCfic ¡CompuCng ¡2016 ¡
slide-2
SLIDE 2

State ¡of ¡the ¡Art ¡

  • ¡Large ¡speed-­‑up ¡of ¡tools ¡on ¡accelerated ¡approaches ¡

¡compared ¡to ¡their ¡CPU-­‑counter ¡parts ¡ ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡2 ¡

slide-3
SLIDE 3

State ¡of ¡the ¡Art ¡

  • ¡Accelerated ¡resources ¡widely ¡available ¡(local, ¡campus-­‑

¡wide, ¡naConal ¡infrastructures ¡like ¡XSEDE) ¡ ¡but... ¡ ¡ ¡Uptake ¡and ¡uClizaCon ¡is ¡not ¡following ¡the ¡same ¡pace ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡3 ¡

slide-4
SLIDE 4

State ¡of ¡the ¡Art ¡

  • ¡Accelerated ¡resources ¡widely ¡available ¡(local, ¡campus-­‑

¡wide, ¡naConal ¡infrastructures ¡like ¡XSEDE) ¡ ¡but... ¡ ¡ ¡Uptake ¡and ¡uClizaCon ¡is ¡not ¡following ¡the ¡same ¡pace ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡4 ¡

slide-5
SLIDE 5

State ¡of ¡the ¡Art ¡

  • ¡Accelerated ¡resources ¡widely ¡available ¡(local, ¡campus-­‑

¡wide, ¡naConal ¡infrastructures ¡like ¡XSEDE) ¡ ¡but... ¡ ¡ ¡Uptake ¡and ¡uClizaCon ¡is ¡not ¡following ¡the ¡same ¡pace ¡ ¡ ¡ è ¡Reasons ¡for ¡the ¡underuClizaCon ¡lay ¡partly ¡on ¡the ¡ soTware ¡side ¡with ¡proprietary ¡and ¡complex ¡interfaces ¡ for ¡development ¡and ¡usage ¡ ¡ ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡5 ¡

slide-6
SLIDE 6

Concept ¡ ¡

  • ¡Two ¡groups ¡of ¡developers: ¡
  • ¡Advanced ¡developers ¡opCmizing ¡code ¡for ¡different ¡

hardware ¡

  • ¡Mainstream ¡developers ¡searching ¡for ¡soluCons ¡for ¡

automaCc ¡opCmizaCon ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡6 ¡

slide-7
SLIDE 7

Why ¡Docker? ¡ ¡

  • ¡Virtual ¡images ¡containing ¡only ¡the ¡necessary ¡

dependencies ¡and ¡system ¡tools ¡for ¡running ¡applicaCons ¡

  • ¡Containers ¡share ¡the ¡kernel ¡of ¡the ¡host ¡operaCng ¡

system ¡resulCng ¡in ¡an ¡efficient ¡use ¡of ¡space ¡and ¡ computaConal ¡resources ¡

  • ¡The ¡layered ¡filesystem ¡on ¡which ¡Docker ¡images ¡are ¡

built ¡allows ¡for ¡mulCple ¡images ¡to ¡share ¡any ¡common ¡ libraries, ¡thus ¡minimizing ¡disk ¡usage. ¡It ¡also ¡facilitates ¡ updates ¡to ¡containers ¡as ¡added ¡only ¡the ¡added ¡images ¡ need ¡to ¡be ¡installed. ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡7 ¡

slide-8
SLIDE 8

Architecture ¡

  • ¡Docker ¡eliminates ¡the ¡need ¡for ¡a ¡hypervisor ¡

Docker ¡ Virtual ¡Machines ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡8 ¡

slide-9
SLIDE 9

Proof-­‑of-­‑concept ¡

  • ¡SAMPO ¡(Scalable ¡Agent-­‑based ¡Mosquito ¡POint ¡model) ¡
  • ¡Models ¡the ¡life ¡cycle ¡of ¡malaria-­‑vectors ¡uClizing ¡the ¡

OpenCL ¡API ¡to ¡perform ¡computaCons ¡on ¡available ¡ accelerators ¡(GPU, ¡MICs). ¡ ¡

  • ¡GPU-­‑BLAST ¡
  • ¡Basic ¡Local ¡Alignment ¡Search ¡Tool ¡developed ¡with ¡

CUDA ¡

  • ¡SGEMM ¡
  • ¡A ¡common ¡matrix ¡mulCplicaCon ¡algorithm ¡used ¡as ¡

a ¡performance ¡benchmark. ¡ ¡

  • … ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡9 ¡

slide-10
SLIDE 10

Performance ¡tests ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡10 ¡

slide-11
SLIDE 11

LimitaCons ¡

  • ¡Images ¡can ¡become ¡relaCvely ¡large ¡depending ¡on ¡the ¡

¡necessary ¡binaries, ¡libraries, ¡and ¡the ¡size ¡of ¡the ¡ ¡applicaCon. ¡

  • ¡This ¡causes ¡problems ¡when ¡images ¡are ¡pulled ¡from ¡

¡Docker ¡Hub; ¡the ¡transfer ¡Cme ¡can ¡become ¡ ¡unreasonably ¡long. ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡11 ¡

slide-12
SLIDE 12

Minimize ¡Transfer ¡Time ¡

  • ¡Minimize ¡the ¡images ¡
  • ¡Use ¡small ¡base ¡images ¡
  • ¡Ensure ¡any ¡unnecessary ¡libraries ¡are ¡not ¡being ¡
  • installed. ¡
  • ¡Dockerfiles-­‑Set ¡of ¡instrucCons ¡used ¡to ¡build ¡the ¡image ¡

¡from ¡a ¡base ¡image. ¡

  • ¡Save ¡and ¡export ¡commands ¡built ¡in ¡to ¡the ¡docker ¡

¡plagorm. ¡ ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡12 ¡

slide-13
SLIDE 13

Future ¡Work ¡

  • ¡Hopefully ¡funded ¡project ¡on ¡the ¡concept ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡13 ¡

slide-14
SLIDE 14

Acknowledgements ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡14 ¡

Co-­‑authors ¡(paper ¡and ¡proposal) ¡

  • Nicholas ¡Haydel ¡
  • Ian ¡Taylor ¡
  • Abdul ¡Dakkak ¡ ¡
  • Simon ¡Garcia ¡de ¡Gonzalo ¡
  • Wen-­‑mei ¡Hwu ¡ ¡
  • Nick ¡Sahinidis ¡
  • Nikoloas ¡Ploskas ¡
  • Gerhard ¡Klimeck ¡
  • Gregory ¡Madey ¡
  • Christopher ¡Sweet ¡ ¡
  • James ¡Sweet ¡
slide-15
SLIDE 15

sandra.gesing@nd.edu ¡

Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡15 ¡