Presentation is loading. Please wait.

Presentation is loading. Please wait.

GPU分散式演算法設計與單機系統模擬(第二季)

Similar presentations


Presentation on theme: "GPU分散式演算法設計與單機系統模擬(第二季)"— Presentation transcript:

1 GPU分散式演算法設計與單機系統模擬(第二季)
高雄大學 吳志宏

2 Outline OpenMP CUDA vs. OpenMP GPU Experiment Nvidia Tesla
OpenMP with Tesla Conclusion 2/1/2010 ICAL

3 OpenMP Open Multi-Processing,OpenMP(only for Intel)
OpenMP is an API to supports multi-platform shared memory multiprocessing programming in C/C++ and Fortran on all architectures. 2/1/2010 11/17/09 ICAL

4 OpenMP vs. CUDA OpenMP使用多核心CPU來運算 優點: 缺點:
可以平行化的程式比較多(允許較複雜程式) ,可 依照task目標來平行。 在CPU之中執行程式, 在memory的溝通上較快, 且無額外成本。 缺點: 在大量簡單資料處理上較慢, 因為核心數少。 只有Intel的產品支援。 2/1/2010 ICAL

5 OpenMP vs. CUDA(續) CUDA使用大量核心的GPU運算
優點:在處理資料量龐大而簡單的運算時,加 速非常明顯,可為CPU的數十倍甚至數 百倍。 缺點: 只能處理較簡單的運算。 資料精度受到限制,用double效能會大大降低。 在memory的溝通上較慢,有較多額外的I/O成本。 只有Nvidia Geforce 8系列以上的GPU支援。 2/1/2010 ICAL

6 GPU Experiment 預先使用SVD演算法將一張1024×1024的影 像分解成9個1024×1024的距陣。
設計演算法將前述的9個距陣透過乘法還原 原始影像,分別使用單一核心CPU、4核心 CPU、96核心GPU進行模擬。 2/1/2010 ICAL

7 Experiment Environment
GPU Device NVIDA Geforce GSO Cores 96 Processor Clock 1375 MHz Standard Memory 384 MB Memory Bandwidth 38.4 GB/sec CPU Device Intel Core2 Quad Q9300 Cores 4 Processor Clock 2.5 GHz FSB speed 1333 MHz L2 Cache 6 MB 11/17/09

8 Experiment Results 2/1/2010 ICAL

9 Speedup VS. Single-Core
Experiment Results Single-Core Multi-Core CUDA Speedup VS. Single-Core Speedup VS. Multi-Core Red 43.36 sec. sec. 0.766 sec. 56.606 29.291 Green sec. sec. 0.562 sec. 78.374 45.039 Blue sec. 26.64 sec. 78.681 47.402 Total (sec.) sec. sec. 1.89 sec. 71.220 40.577 2/1/2010 ICAL

10 Nvidia Tesla The Tesla GPU is a General Purpose GPU.
The primary function of Tesla products are to aid in simulations, large scale calculations ,and image generation for professional and scientific fields,with the use of CUDA. 2/1/2010 ICAL

11 OpenMP with Tesla 一台單機系統可使用PCI-E x16插槽接PCI-E 橋接卡,透過橋接卡外接一台Tesla專用機 櫃,一個機櫃最多可插4張Tesla加速卡。 2/1/2010 ICAL

12 OpenMP with Tesla(續) 可使用多核心CPU搭配數張Tesla加速卡做 協同運算,但資料無法在不同的Tesla加速 卡之間做交換,因此必須在程式中預先指 定哪些資料要分給哪一張卡做處理。 當程式執行時用"用多核心程式來安排"每一 個CPU核心執行不同的任務(task),再由各 自核心去控制指定的GPU來進行資料(data) 加速。 例:4 cores CPU+4 Tesla,1 core控制1 Tesla 2/1/2010 ICAL

13 OpenMP with Tesla(續) 2/1/2010 ICAL

14 Conclusion 儘管使用多核心CPU可以增加資料處理的速度 ,但使用大量核心的GPU加速效果更為明顯, 可能為多核心CPU 的數十甚至數百倍。 使用GPU及多核心CPU可降低雲端運算主機在 大量資料處理上的負擔,擴充多核心CPU 及 GPU 單價較新購主機低廉許多,可有效降低成 本。 單機系統可用外接的方式使用多張Tesla加速卡 ,並使用多核心CPU搭配Tesla加速卡做協同運 算,由各別的CPU核心來控制Tesla加速卡,但 需要在事先做好資料分配規劃。 2/1/2010 ICAL


Download ppt "GPU分散式演算法設計與單機系統模擬(第二季)"

Similar presentations


Ads by Google