--- tags: Session TWO --- # Distributed AI(應凱軒) ## GPUDirect RDMA  - 他是一個 IB core 和對等記憶體客戶端的api他提供訪問 HCA 以讀取/寫入對等記憶體緩衝區所以只要是通過rdma 的應用程序就可以利用rdma互連使用對等設備的計算能力而無須將數據複製到cpu記憶體,這裡主要講說利用這個設備就不用像平常一樣,在計算前還要先將data複製到cpu複製來複製去的就會消耗掉很多的時間。 ## CUDA  - 後面有舉例一些gpu direct code 的example他是利用cude寫出來的code,不過他也沒有給完整的code 所以我稍微講一下甚麼是cuda - 那甚麼是cuda 呢? :::info 以GeForce 8800 GTX為例,其核心擁有128個內處理器。利用CUDA技術,就可以將那些內處理器串通起來,成為執行緒處理器去解決資料密集的計算。而各個內處理器能夠交換、同步和共享資料。 利用NVIDIA的C-編譯器,通過驅動程式,就能利用這些功能。亦能成為流處理器,讓應用程式利用進行運算。 我個人的感覺cuda就像是利用GPU作為c的編譯器的開發環境 ::: ## GPUDirect Async/PeerDirect Async 1. 能夠分批處理多個gpu 跟通信工作 2. 減少延遲 3. 減少cpu 的使用率 4. 減輕cpu的重量 5. 更少的能源 ## MPI的兩種的protocol - EAGER - sender 傳給receiver tag+data - 在call send() 會馬上完成 - receiver會儲存數據直到match 因此可能會儲存到receiver沒有match 的資料 - 但可能會有記憶體存取不足的問題 - 經常使用小-中的message :::spoiler 它的優點是可以 1.減少同步延遲 2.簡化程式 缺點 1.需要大量緩衝 ::: - Rendezvous - sender 傳給receiver tag而已 - send()是不完全 - 當tag match 的時候receiver 才會從sender要求存取數據 :::spoiler 優點: 1. 較堅固且安全(不會占用buffer給不必要的資料嗎?) 2. 可以減少copy 但他的code會比較複雜 而且可能會造成同步延遲 ::: ## UCX - UCX是一个建立在RDMA等技术之上的用于數據處理和高性能计算的通信。框架更簡單來說它的功用是用來加速網路行能的
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up