Chương 1: Tính toán hiệu năng cao với các bộ xử lý dỗ họa Chương 2: Kiến trúc Tesla va Méi traéng lap trinh song song CUDA Chương 3: Bải toán mô phống N-Body Chương 4: Mô phống N-Body với đơn GPU Chương 5: Xây dựng giải thuật mô phỏng N-Pody với da GPU Chương 6: Kết luận và hướng phát triển Để hoàn thành đổ án tốt nghiệp “Vghiên cứu công nghệ Tính toán thông dụng trên các bộ xử lý đề họa và ứng dụng trong bài toứn mô phông N-Body", tôi xin chân thành cảm ơn tới Tiến sỹ Nguyễn Hữu Đức — Thầy đã là người trực tiếp hướng dẫn và giúp đỡ tôi. Tôi cũng xin gửi lời cảm ơn tới các thầy cô, các anh chị quản lý tại Trung tâm Tính toán hiệu năng cao, trưởng Đại học Bách MUC LUC LOI MO DAU. TINII TOAN IIIEU NANG CAO VOI GPU. Tỉnh toán hiệu năng cao và vai trò ứng đụng trong thực tiễn.
Thách thức tỉnh toán hiệu năng cao trong khoa học vả công nghề. Một số tiếp cân trong tính toán hiệu năng cao - - 12 1. Cáo hệ thống máy tính đa vi xử lý với mô hình Vip tinh song song chia sé bộ nhớ chung. Cum máy tỉnh với mô hình lập trình song song truyền thông, diệp 14 1.
Cáo bộ xử lý đồ họa với mô hình lập trình song song đỡ liệu 15 CITƯƠNG II. GIỚI TIIfU KIÊN TRÚC TESIL.A VÀ MÔ IIÌNH LẬP TRINH SONG SONG CUDA. Giới thiệu kiến trúc phần cứng Tesla cla Nvidia (Vesta Architecture). Kiến trúc tính toán trên GPU Tosla và mô hình lập trình song song CƯDA.
Kiến trúc tính toán trên GPU Tesla. Mô hình lập trình song song CUDA " - 26 2. Những mặt hạn chế của CUD/ " _ wn BS 2. Thiết lập môi trường tỉnh toán CUDA se 36 2.
Môi trường phân cứng. Bộ công cụ phát triển phần mễm. Quy trình cải đặt. BAI TOAN MO PIIONG N-BODY.
Giới thiệu bài toán 3. Ứng dụng của bài toán N-Body 40 3. Các giải tiuật với bài toán mô phông N-Body. Giải thuat tuong tac hat-hat (he Particle-Particle (PP) method) 4 LỜI MỞ ĐÀU Trong vải năm gần đây, khái niệm tính toán thông dụng trên các bộ xử lý đồ họa (GPGPU — (ieneral-Purpose Computing on Graphies Processing Units) thu hút được nhiều sự quan tâm từ các nhà nghiên cửu phương pháp tính toán khoa học.
Những lý do căn bản cho mối quan tim nay 1a s_ lIiệu năng tính toán của các bộ xử lý đồ hoa (GPU) ngay cảng vượt trội so với oáo bộ xử lý trung tâm truyền thông e Các hãng sản xuất hộ xử lý đỗ họa như nVidia, AMI liên tục đưa ra những hệ thông phần mềm trung gian (midđleware) và môi trường phát triển ứng dụng (trình dịch, trình gỡ rối,.) cho phép người phát triển dễ đàng xây dựng các ứng dụng phi đồ họa trên các bộ xử lý đồ họa nảy. «_ Giá thành cũng như các chỉ phí năng lượng cho hoạt dông của các bộ xử lý 46 hoa thập hơn nhiều so với các hệ thống máy tính cùng chỉ số hiệu năng lý thuyết. Cac GPU có khả năng Tỉnh toán thông dụng như vậy có mặt ử khắp nơi, từ máy tính cơ quan cho tới trường học, đến máy tính nhà riêng của mọi người. Sự phat Iriển rộng rãi về mặt số lượng của các GPU nay dan đến một yêu cầu hết.
sức cấp bách và đầy thách thức đối với công dỗng phát triển phần mềm (đặc biệt là các phan mềm tính toán khoa hgc), dé 14 1am thế nào tận dụng được sức mạnh song song của các GPU đối với những phần mềm ứng dụng dang và sẽ dược phát triển trong một vài năm nữa Trong bối cảnh đó, tôi đã lựa chọn dễ tài: *Nphiên cứu công nghệ Tính taán thông dụng trên các bộ xử lý đồ họa và ứng dụng trong bài taản mô phông N- kỳ Abstract N-body algorithms are applicable to a number of common problems in computational physics including gravitation, electrostatics, and fluid dynamics. Fast algorithms (those with better than O(N?) performance) exist, but have not ‘been su sÍully implomentod on GPU hardware for practical problems. In the present work, we introduce not only best-in-class performance for a all-pairs method, but a series of improvements thal supporl implementation of this solver on highly-data-parallel graphics processing units (GPUs). ‘Ihe greatly reduced computation times suggest that this problem is ideally suited for the current and next generations of single and cluster CPU-GPU architcctures.
We believe that this is an ideal method for practical computation of large-scale turbulent flows on future supercompuling hardware using parallel vortex particle methods Tóm tắt Tải toán N-Rody là một bài toán kinh điển, ứng dụng trong nhiều lĩnh vực của khoa học như vật ly, y sinh, thiên văn học,. Trong bài toán mô phỏng này, khi số lượng Body mô phỏng trong bài toán là một số rất lớn, việc tính toán tương tác trên tắt că các cặp N-Body mất rất nhiều thời gian (đồ phức tạp trong trường hợp tôi nhất O(N?)). Vì vậy chúng ta cần nghiên cửu một phương pháp mới nhằm tăng tốc độ tính Loán cia bai toán mô phỏng N-Body, đó là lận dụng sức mạnh tính toán của các bộ xử lý đỗ họa. Dé tai nay nhém tìm hiểu mồi trường tính toán hiệu năng cao trên bộ xử lý đồ họa sử dụng công nghệ CUDA của hãng nVidia, và bước đầu thử nghiệm thanh công bải toán mô phỏng N-Body trên dơn GPU, cũng như dưa ra một số để xuất giải thuật trén GPU cluster.
Bo” để làm đồ án tốt nghiệp cao học của mình. Bài toán N-Body là một bài toán kinh điển, ứng dụng trong nhiều lĩnh vực của khoa học như vật lý, y sinh, thiên văn học,. Trong bải toán mô phỏng này, khi số lượng Body mô phỏng trong bài toán là một số rất lớn, việc tính toán tương tác trên tất cả các cặn N- Body mất rất nhiều thời gian (O(N?). Vi vây chúng ta cần nghiên củu một phương nháp mới nhằm tăng tốc độ tính Loán oủa bài toán mô phỏng N-Body, đó là tân đụng sức mạnh tỉnh toán của các bộ xử lý đỗ họa.
Qua đề tài này, tôi đã tìm hiểu được môi trường tính toán hiệu năng cao trên bộ xử lý đồ họa sử dụng công nghệ CUDA của hing nVidia, và bước đầu thử nghiệm thánh công bài loán mỗ phỏng N-Đody Nội dung luận văn bau gầm cú 6 chương chính: Chương 1: Tính toán hiệu năng cao với các bộ xử lý dỗ họa Chương 2: Kiến trúc Tesla va Méi traéng lap trinh song song CUDA Chương 3: Bải toán mô phống N-Body Chương 4: Mô phống N-Body với đơn GPU Chương 5: Xây dựng giải thuật mô phỏng N-Pody với da GPU Chương 6: Kết luận và hướng phát triển Để hoàn thành đổ án tốt nghiệp “Vghiên cứu công nghệ Tính toán thông dụng trên các bộ xử lý đề họa và ứng dụng trong bài toứn mô phông N-Body", tôi xin chân thành cảm ơn tới Tiến sỹ Nguyễn Hữu Đức — Thầy đã là người trực tiếp hướng dẫn và giúp đỡ tôi. Tôi cũng xin gửi lời cảm ơn tới các thầy cô, các anh chị quản lý tại Trung tâm Tính toán hiệu năng cao, trưởng Đại học Bách MUC LUC LOI MO DAU. TINII TOAN IIIEU NANG CAO VOI GPU. Tỉnh toán hiệu năng cao và vai trò ứng đụng trong thực tiễn.
Thách thức tỉnh toán hiệu năng cao trong khoa học vả công nghề. Một số tiếp cân trong tính toán hiệu năng cao - - 12 1. Cáo hệ thống máy tính đa vi xử lý với mô hình Vip tinh song song chia sé bộ nhớ chung. Cum máy tỉnh với mô hình lập trình song song truyền thông, diệp 14 1.
Cáo bộ xử lý đồ họa với mô hình lập trình song song đỡ liệu 15 CITƯƠNG II. GIỚI TIIfU KIÊN TRÚC TESIL.A VÀ MÔ IIÌNH LẬP TRINH SONG SONG CUDA. Giới thiệu kiến trúc phần cứng Tesla cla Nvidia (Vesta Architecture). Kiến trúc tính toán trên GPU Tosla và mô hình lập trình song song CƯDA.
Kiến trúc tính toán trên GPU Tesla. Mô hình lập trình song song CUDA " - 26 2. Những mặt hạn chế của CUD/ " _ wn BS 2. Thiết lập môi trường tỉnh toán CUDA se 36 2.
Môi trường phân cứng. Bộ công cụ phát triển phần mễm. Quy trình cải đặt. BAI TOAN MO PIIONG N-BODY.
Giới thiệu bài toán 3. Ứng dụng của bài toán N-Body 40 3. Các giải tiuật với bài toán mô phông N-Body. Giải thuat tuong tac hat-hat (he Particle-Particle (PP) method) 4 MUC LUC LOI MO DAU.
TINII TOAN IIIEU NANG CAO VOI GPU. Tỉnh toán hiệu năng cao và vai trò ứng đụng trong thực tiễn. Thách thức tỉnh toán hiệu năng cao trong khoa học vả công nghề. Một số tiếp cân trong tính toán hiệu năng cao - - 12 1.
Cáo hệ thống máy tính đa vi xử lý với mô hình Vip tinh song song chia sé bộ nhớ chung. Cum máy tỉnh với mô hình lập trình song song truyền thông, diệp 14 1. Cáo bộ xử lý đồ họa với mô hình lập trình song song đỡ liệu 15 CITƯƠNG II. GIỚI TIIfU KIÊN TRÚC TESIL.A VÀ MÔ IIÌNH LẬP TRINH SONG SONG CUDA.
Giới thiệu kiến trúc phần cứng Tesla cla Nvidia (Vesta Architecture). Kiến trúc tính toán trên GPU Tosla và mô hình lập trình song song CƯDA. Kiến trúc tính toán trên GPU Tesla. Mô hình lập trình song song CUDA " - 26 2.
Những mặt hạn chế của CUD/ " _ wn BS 2. Thiết lập môi trường tỉnh toán CUDA se 36 2. Môi trường phân cứng. Bộ công cụ phát triển phần mễm.
Quy trình cải đặt. BAI TOAN MO PIIONG N-BODY. Giới thiệu bài toán 3. Ứng dụng của bài toán N-Body 40 3.
Các giải tiuật với bài toán mô phông N-Body. Giải thuat tuong tac hat-hat (he Particle-Particle (PP) method) 4 3. Giải thuật Barnes-ITut (The Barnes-Iut Algorithm). Phuong phap da cye nhanh (The Fast Multipole Method “FMM.
Giải thuật cây đa cực song song enilel Mullipole Tree Algorithm — PMTA). Tổng kết các giải thuật. CHƯƠNG IV. MÔ PHONG N-BODY Vìvớt DON GPU.
Mục dích mô phỏng N-Body trên GPU 4. Tỉnh toán lực tương táo các oặp N-Body 4. Sự thực thi CUDA của giải thuật tất câ các cặp N-Body. Tỉnh toán lực body - body 4.
Tính toán tile. 433 Xếp nhóm các tilc vào trong các Thrcad Bloek 4. Định nghĩa một Grid của các Thread Dloek. Môi trường thứ nghiêm bãi toán 4.
Cách thử nghiệm bài toán N-Dody trên hệthống 4. Các kết quả thực hiện 4L7. Gia tăng hiệu năng với lặp không cuộn (loop waroling). Hiệu năng từng khi kích thước Block thay đối 4.
Cải thiện hiệu năng khi N nhỏ. Phân tích kết quả thực hiện. Các phương pháp trước đây sử dụng GPU mô phỏng N-Body. Các phương pháp N-Body phân cấp 4.
XÂY DỰNG GIẢI THUẬT MÔ PHÔNG N-BODY VỚI ĐA GPU. Tỉnh chất cúa các hệthống tính toán da GPU. Kiến trúc hệ thống GPU cluster.