using docker with gpus
play

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


  1. CCL ¡Workshop ¡ ¡ on ¡Scalable ¡ScienCfic ¡CompuCng ¡2016 ¡ Using ¡Docker ¡with ¡GPUs ¡ ¡ Sandra ¡Gesing ¡ sandra.gesing@nd.edu ¡ ¡ ¡20 ¡October ¡2016 ¡

  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 ¡

  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 ¡

  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 ¡

  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 ¡

  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 ¡

  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 ¡

  8. Architecture ¡ • ¡Docker ¡eliminates ¡the ¡need ¡for ¡a ¡hypervisor ¡ Virtual ¡Machines ¡ Docker ¡ Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡8 ¡

  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 ¡

  10. Performance ¡tests ¡ Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡10 ¡

  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 ¡

  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 ¡

  13. Future ¡Work ¡ • ¡Hopefully ¡funded ¡project ¡on ¡the ¡concept ¡ Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡13 ¡

  14. Acknowledgements ¡ 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 ¡ Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡14 ¡

  15. sandra.gesing@nd.edu ¡ Sandra ¡Gesing ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡Docker ¡for ¡Accelerated ¡Approaches ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡15 ¡

Recommend


More recommend