Công nghệ tính toán hiệu năng cao sử dụng card đồ họa trong diễn họa1

68 228 0
Công nghệ tính toán hiệu năng cao sử dụng card đồ họa trong diễn họa1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

NGUYỄN QUỐC HUY BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI - Nguyễn Quốc Huy CÔNG NGHỆ THÔNG TIN CÔNG NGHỆ TÍNH TOÁN HIỆU NĂNG CAO SỬ DỤNG CARD ĐỒ HỌA TRONG DIỄN HỌA LUẬN VĂN THẠC SĨ KỸ THUẬT CÔNG NGHỆ THÔNG TIN KHÓA 2010 Hà Nội – 2012 LỜI CAM ĐOAN Tôi - Nguyễn Quốc Huy - cam kết luận văn tốt nghiệp thạc sĩ kỹ thuật công trình nghiên cứu thân hướng dẫn TS Phạm Đăng Hải Các kết nêu luận văn trung thực, chép toàn văn công trình khác Hà Nội, ngày 12 tháng năm 2012 Tác giả Nguyễn Quốc Huy LỜI CẢM ƠN Trước tiên, em xin gửi lời cảm ơn sâu sắc tới TS Phạm Đăng Hải, Viện Công nghệ thông tin Truyền thông, Trường Đại Học Bách Khoa Hà Nội, Thầy người trực tiếp tận tình hướng dẫn em suốt thời gian làm luận văn tốt nghiệp Em xin bày tỏ lòng biết ơn chân thành GS.TS Nguyễn Thanh Thuỷ, Phó hiệu trưởng trường Đại học Công nghệ - Đại học Quốc Gia Hà Nội, Thầy cho em lời khuyên quý báu để hoàn thành luận văn Em xin trân thành cảm ơn Thầy, Cô, cán thuộc Viện Công nghệ thông tin Truyền thông, Viện đào tạo sau đại học Trường Đại học Bách Khoa Hà Nội tạo điều kiện thuận lợi cho em trình học tập hoàn thành luận văn thạc sĩ Mình xin gửi lời cảm ơn tới bạn học viên cao học khóa 2010B – Trường đại học Bách Khoa Hà Nội, sát cánh giúp đỡ vượt qua khó khăn trình học tập, hoàn thành luận văn tốt nghiệp Cuối cùng, xin cảm ơn bạn bè gia đình luôn động viên chỗ dựa vững tinh thần cho sống Hà Nội, ngày 12 tháng năm 2012 Tác giả Nguyễn Quốc Huy MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN TÓM TẮT LUẬN VĂN DANH MỤC HÌNH VẼ DANH MỤC CÁC TỪ VIẾT TẮT VÀ CÁC THUẬT NGỮ 11 CHƯƠNG 1: TỔNG QUAN VỀ TÍNH TOÁN HIỆU NĂNG CAO 12 1.1 Tổng quan tính toán hiệu cao 12 1.1.1 Nhu cầu tính toán hiệu cao 12 1.1.2 Giải pháp 12 1.2 Các hướng tiếp cận tính toán hiệu cao tiêu biểu 13 1.2.1 Các siêu máy tính (Super Computers) 13 1.2.2 Tính toán song song phân cụm (Cluster Computing) 15 1.2.3 Công nghệ tính toán lưới – Grid Computing 19 1.2.4 Các xử lý multi-cores many-cores 21 1.2.5 Tính toán song song hệ thống card đồ họa đa dụng 22 CHƯƠNG 2: CÔNG NGHỆ TÍNH TOÁN HIỆU NĂNG SỬ DỤNG CARD ĐỒ HỌA GPGPU 23 2.1 Giới thiệu Bộ xử lý đồ họa GPU 23 2.2 Bộ vi xử lý đồ họa đa dụng GPGPU 24 2.3 Kiến trúc Tesla NVIDIA 27 CHƯƠNG 3: MÔI TRƯỜNG LẬP TRÌNH SONG SONG CUDA TRÊN HỆ THỐNG GPGPU 31 3.1 Giới thiệu chung CUDA 31 3.1.1 CUDA : Kiến trúc tính toán song song đa dụng 31 3.1.2 Mô hình lập trình tự động mở rộng quy mô thực thi 32 3.2 Mô hình lập trình CUDA 34 3.2.1 CUDA Kernels 34 3.2.2 Mô hình phân cấp luồng 35 3.2.3 Mô hình phân cấp nhớ 39 3.2.4 Phân cấp thực thi chương trình CPU GPU 40 3.2.5 Khả tính toán Device - Compute Capability 42 3.3 Lập trình ứng dụng với CUDA 42 3.3.1 Thiết lập môi trường CUDA 42 A Kiểm tra GPU có hỗ trợ CUDA 42 B Download gói phần mềm cài đặt CUDA 43 C Cài đặt CUDA 43 D Kiểm tra trình cài đặt 44 E Biên dịch chương trình với NVCC 44 3.3.2 Bộ nhớ GPU - Device Memory 45 3.3.3 Thực thi đồng thời Host Device 47 3.4 Sự mở rộng CUDA-C so với ngôn ngữ C 48 3.4.1 Định kiểu hàm - Function Type Qualifiers 48 3.4.1.1 device 48 3.4.1.2 global 48 3.4.1.3 host 48 3.4.2 Các từ khóa khai báo kiểu biến - Variable Type Qualifiers 49 3.4.2.1 device 50 3.4.2.2 constant 50 3.4.2.3 shared 50 3.4.3 Các kiểu liệu vector xây dựng sẵn - Built-in Vector Types 51 3.4.4 Các biến định nghĩa sẵn - Built-in Variables 51 3.4.4.1 gridDim 51 3.4.4.2 blockIdx 51 3.4.4.3 blockDim 51 3.4.4.4 threadIdx 52 3.4.4.5 warpSize 52 3.4.5 Các Function đồng hóa 52 CHƯƠNG 4: XÂY DỰNG ỨNG DỤNG DIỄN HỌA TRÊN HỆ THỐNG NVIDIA GPU 54 4.1 Giới thiệu toán N-Body simulation 54 4.2 Cơ sở tính toán lý thuyết 55 4.3 Cài đặt toán N-Body simulation sử dụng CUDA 57 4.3.1 Tính toán lực tương tác cặp thực thể Body-Body 58 4.3.2 Tính toán Tile 59 4.3.3 Phân chia Tiles vào Thread Blocks 59 4.3.4 Định nghĩa Grid Thread Blocks 61 4.4 Các kết thu 62 CHƯƠNG : KẾT LUẬN 66 TÀI LIỆU THAM KHẢO 67 TÓM TẮT LUẬN VĂN Đề tài : Công nghệ tính toán hiệu cao sử dụng card đồ họa diễn họa Tác giả luận văn: Nguyễn Quốc Huy Khóa: 2010B Người hướng dẫn: TS Phạm Đăng Hải Nội dung tóm tắt: A, Lý chọn đề tài Với tiến nhanh công nghệ chế tạo phần cứng máy tính, GPU (Gaphics Processing Units – Bộ xử lý đồ họa) phát triển với kiến trúc song song hóa mức cao, xử lý đa luồng với kiến trúc manycore processor đem lại khả tính toán với băng thông nhớ lớn Từ xuất kỹ thuật dùng tính toán GPU làm công việc trước CPU để tăng cường hiệu tính toán, lý tác giả chọn đề tài luận văn ‘Công nghệ tính toán hiệu cao sử dụng card đồ họa diễn họa’ B, Mục đích nghiên cứu luận văn, đối tượng, phạm vi nghiên cứu - Tìm hiểu công nghệ kiến trúc hệ thống tính toán hiệu cao sử dụng card đồ họa NVIDIA - Tìm hiểu Môi trường phát triển ứng dụng CUDA hệ thống GPGPU NVIDIA - Sử dụng hệ thống tính toán hiệu cao card đồ họa NVIDIA ứng dụng diễn họa C, Tóm tắt nội dung luận văn Luận văn bao gồm chương : Chương 1: Tổng quan tính toán hiệu cao : Trình bày cần thiết điểm bật công nghệ tính toán hiệu cao giới Chương 2: Công nghệ tính toán hiệu cao sử dụng card đồ họa GPGPU : Nghiên cứu công nghệ tính toán hiệu cao sử dụng sức mạnh tính toán song song xử lý đồ họa đa dụng Chương 3: Môi trường lập trình song song CUDA hệ thống GPGPU : Tìm hiểu làm chủ môi trường lập trình song song để viết phần mềm thực thi hệ thống card đồ họa đa dụng GPGPU Chương 4: Xây dựng ứng dụng diễn họa hệ thống NVIDIA GPU : Chương áp dụng kiến thức nghiên cứu vào việc xây dựng ứng dụng tính toán song song hệ thống NVIDIA GPU, cụ thể giải toán “N-Body Simulation” Chương 5: Kết luận : Tóm tắt kết đạt phương hướng phát triển DANH MỤC HÌNH VẼ Hình 1: Siêu máy tính Jaguar 15 Hình 2: Mô hình Cluster 16 Hình 3: Hệ thống tính toán song song phân cụm theo mô hình Beowulf Cluster 17 Hình 4: Kiến trúc tổng quan phần cứng phần mềm cluster 18 Hình 5: Mô hình tính toán lưới 20 Hình 6: CPU đa nhân Intel 21 Hình 7: So sánh hiệu tinh toán CPU GPU [2] 25 Hình 8: So sánh băng thông nhớ CPU GPU [2] 26 Hình 9: So sánh kiến trúc CPU GPU 26 Hình 10: C870 với chuẩn PCI Express đầu Video 29 Hình 11: Tesla D870 có chứa hai Card C870 29 Hình 12: Tesla S870 với 04 Card C870 30 Hình 13: Tiến trình thực chương trình CUDA [7] 31 Hình 14: Mô hình thực thi CUDA 32 Hình 15: Mô hình tự động mở rộng quy mô thực thi với CUDA 34 Hình 16: Grid thread blocks 37 Hình 17: Mô hình phân cấp nhớ CUDA 39 Hình 18: N-body simulation: Mô tương tác hành tinh thiên văn học 54 Hình 19: Bài toán N-Body : Cơ chế tính toán Tile 58 Hình 20: Mô hình thực thi thread block 60 int syncthreads_or(int predicate); Hàm giống syncthreads() với tính thêm tính giá trị predicate cho tất thread block trả giá trị khác không predicate có giá trị khác thread block 53 CHƯƠNG 4: XÂY DỰNG ỨNG DỤNG DIỄN HỌA TRÊN HỆ THỐNG NVIDIA GPU 4.1 Giới thiệu toán N-Body simulation Bài toán ‘N-body simulation’ mô tiến hóa hệ thống thực thể, thực thể liên tục tương tác với thực thể khác hệ thống Một ví dụ quen thuộc ‘N-body simulation’ mô thiên văn học tực thể đại diện cho ngân hà, nhóm sao; thực thể tương tác với thông qua lực hấp dẫn Hình 18: N-body simulation: Mô tương tác hành tinh thiên văn học 54 Bài toán ‘N-body simulation’ xuất nhiều vấn đề tính toán khoa học khác Ví dụ sinh học, ‘N-body simulation’được sử dụng để tính toán lực tĩnh điện lực van der Waals nghiên cứu protein Mô dòng chảy hỗn loạn tính toán chiếu sáng đồ họa máy tính ví dụ vấn đề sử dụng ‘N-body simulation’ Tiếp cận all-pairs (tất cặp đôi) cho vấn đề ‘N-body simulation’ kỹ thuật tính toán tất các tương tác N thực thể Cách tiếp cận đơn giản thường không sử dụng mô hệ thống có số lượng thực thể lớn có độ phức tạp tính toán O(N 2) Tuy nhiên, tiếp cận all-pairs thường sử dụng Kernel để xác định lực tương tác phạm vi gần Phương pháp all-pairs kết hợp với phương pháp nhanh dựa xấp xỉ hóa lực tương tác xa, xấp xỉ phần hệ thống phân vùng tốt Các giải thuật Fast N-body thuộc dạng bao gồm phương pháp Barnes-Hut (BH) (Barnes and Hut 1986), phương pháp fast multipole (FMM) (Greengard 1987), phương pháp particle-mesh (Hockney and Eastwood 1981, Darden et al 1993) Trong thuật toán trên, phận tính toán all-pairs chiếm tỷ trọng thời gian lớn thực thi phận cần tăng tốc Cải thiện hiệu tính toán phận all-pairs nhân tố để cải thiện tốc độ tính toán toán mô Trong chương tập trung vào kernel tính toán all-pairs cách thức cài đặt dụng mô hình lập trình NVIDIA CUDA 4.2 Cơ sở tính toán lý thuyết Trong tính toán sau, quy ước sử dụng font chữ đậm để vector (thường chiều) 55 Cho trước N thực thể với vị trí ban đầu xi vận tốc vi với ≤ i ≤ N, vector lực hấp dẫn fij tác dụng lên thực thể i thực thể j tính theo công thức sau : Trong mi mj khối lượng tương ứng thực thể i j ; r ij = x j x i vector từ thực thể i đến thực thể j; G số hấp dẫn Phía trái công thức, độ lớn lực tính tích hai khối lượng chia cho bình phương khoảng cách thực thể i j Phía phải công thức vector đơn vị có hướng từ thực thể i tới thực thể j xác định hướng lực (bởi lực hấp dẫn lực hút) Lực tổng hợp Fi tác dụng lên thực thể i dựa tương tác với N - thực thể lại tính tổng N-1 lực hấp dẫn: Vì thực thể có xu hướng tiến lại gần nhau, lực hấp dẫn chúng tăng lên không giới hạn, trường hợp không mong muốn tích hợp số hóa Trong mô vật lý thiên văn, va chạm thực thể thường ngăn ngừa , điều hợp lý thực thể mô ngân hà – chúng di chuyển xuyên qua Bởi vậy, hệ số mềm e > thêm vào mẫu số công thức viết lại sau : 56 Điều kiện j ≠ i không cần thiết phép tính tổng f ii = e > Hệ số mềm giới hạn độ lớn lực hấp dẫn thực thể, điều cần thiết việc mô số hóa trạng thái hệ thống Tiếp theo cần tính toán gia tốc a i = F i /mi để cập nhật vị trí vận tốc thực thể i theo thời gian, ta có công thức : 4.3 Cài đặt toán N-Body simulation sử dụng CUDA Thuật toán all-pairs tính toán lực f ij NxN grid (lưới) tất lực cặp thực thể hệ thống Lực tổng hợp Fi (hay gia tốc ) thực thể i thu từ tổng tất phần tử dòng i Mỗi mục NxN grid tính toán hoàn toàn độc lập nên triển khai O(N 2) phép tính song song Tuy nhiên tiếp cận đòi hỏi O(N 2) nhớ bị giới hạn băng thông nhớ Thay vào hóa số phép tính toán để tận dụng liệu giảm băng thông nhớ cần thiết Từ đó, đưa vào ký hiệu tile, vùng hình vuông gồm p dòng p cột NxN grid lực hấp dẫn Chỉ phần liệu mô tả 2p thực thể cần để tính toán tất p tương tác tile Các liệu lưu vùng nhớ chia sẻ ghi sử dụng lại Để tối ưu hóa việc tận dụng lại liệu, đặt việc tính toán tile tương tác hàng tính tuần tự, sau cập nhật vector gia tốc, hàng khác tính toán song song với Trong hình sau, hình phía trái mô tả chiến lược tính toán song song tuần tự, hình bên phải mô tả input output tính toán tile 57 Hình 19: Bài toán N-Body : Cơ chế tính toán Tile 4.3.1 Tính toán lực tương tác cặp thực thể Body-Body Sự tương tác cặp thực thể hệ thống cài đặt hoàn toàn Đoạn mã nguồn sau thực tính lực hấp dẫn tác dụng lên thực thể i gây thực thể j cập nhật gia tôc a i Có 20 FLOP (floating-point operations) đoạn mã này, bao gồm phép cộng, nhân, chia bình phương sqrtf() device float3 bodyBodyInteraction(float4 bi, float4 bj, float3 ai) { float3 r; // tính vector r_ij [3 FLOPS] r.x = bj.x - bi.x; r.y = bj.y - bi.y; r.z = bj.z - bi.z; // distSqr = dot(r_ij, r_ij) + EPS^2 [6 FLOPS] 10 float distSqr = r.x * r.x + r.y * r.y + r.z * r.z + EPS2; 11 // invDistCube =1/distSqr^(3/2) [4 FLOPS (2 mul, sqrt, inv)] 12 float distSixth = distSqr * distSqr * distSqr; 13 float invDistCube = 1.0f/sqrtf(distSixth); 14 // s = m_j * invDistCube [1 FLOP] 15 float s = bj.w * invDistCube; 16 // cập nhật vector gia tốc a_i = a_i + s * r_ij [6 FLOPS] 17 ai.x += r.x * s; 18 ai.y += r.y * s; 19 ai.z += r.z * s; 20 return ai; 21 } 58 Ở sử dụng kiểu liệu float4 CUDA cho phần thông tin mô tả thực thể Khối lượng thực thể lưu trương w float4 Các vector chiều lưu biến kiểu float3 4.3.2 Tính toán Tile Mỗi tile tính toán p thread thực thao tác liệu khác Mỗi thread cập nhật gia tốc thực thể thông qua tương tác với p thực thể khác Chúng ta nạp p khối liệu mô tả thực thể từ nhớ GPU vào vùng nhớ chia sẻ cung cấp thread block mô hình CUDA Mỗi thread block tính toán p tương tác Kết việc tính toán tile p gia tốc cập nhật Mã nguồn cho việc tính toán tile thể phần sau Biến số đầu vào myPosition lưu vị trí thực thể, biến shPosition mảng liệu chứa thông tin mô tả thực thể không gian nhớ chia sẻ Tính toán tương tác Tile device float3 tile_calculation(float4 myPosition, float3 accel) { int i; extern shared float4[] shPosition; for (i = 0; i < blockDim.x; i++) { accel = bodyBodyInteraction(myPosition, shPosition[i], accel); } return accel; 10 } 4.3.3 Phân chia Tiles vào Thread Blocks Chúng ta định nghĩa thread block bao gồm p thread thực thi vài tile Kích thước tile cân đối mức độ song song hóa khả tái sử dụng liệu Mức độ song song hóa số lượng hàng NxN grid Số lượng liệu có khả tái sử dụng tăng theo số lượng cột Mỗi tile bắt đầu với p thực thể nhớ chia sẻ 59 Hình sau mô tả thread block thực thi mã nguồn cho nhiều tile Trục ngang biểu thời gian, trục tung biểu diễn song song hóa Các đường nét đậm biểu diễn tính toán tile, thể thời điểm vùng nhớ chia sẻ nạp đồng hóa thực thread Trong thread block, có N/p tiles, với p threads tính tóan lực p thực thể (mỗi thread thực thể) Mỗi thread tính tất N tương tác cho thực thể Hình 20: Mô hình thực thi thread block Đoạn mã nguồn tiếp sau cài đặt để tính lực tương tác cho thread block Đoạn mã nguồn CUDA kernel gọi từ host Các tham số cho function calculate_forces() trỏ tới nhớ global device chứa vị trí devX gia tốc devA cá thực thể Vòng lặp qua tile cần điểm đồng Điểm đồng đảm bảo tất vị trị nhớ chia sẻ nạp trước tính toán lực hấp dẫn, điểm thứ đảm bảo tất thread kết thúc tính toán trước chuyển sang tile Nếu điểm đồng thứ 2, thread kết thúc công viêc trước tile ghi đè nhớ chia sẻ vốn cần thiết để thread khác sử dung 60 ( CUDA Kernel thực thi Thread Block với p Threads để tính toán gia tốc dựa vào kết tất N lực tương tác cho p Bodies.) global void calculate_forces(void *devX, void *devA) { extern shared float4[] shPosition; float4 *globalX = (float4 *)devX; float4 *globalA = (float4 *)devA; float4 myPosition; int i, tile; float3 acc = {0.0f, 0.0f, 0.0f}; 10 int gtid = blockIdx.x * blockDim.x + threadIdx.x; 11 myPosition = globalX[gtid]; 12 for (i = 0, tile = 0; i < N; i += p, tile++) { 13 int idx = tile * blockDim.x + threadIdx.x; 14 shPosition[threadIdx.x] = globalX[idx]; 15 syncthreads(); 16 acc = tile_calculation(myPosition, acc); 17 syncthreads(); 18 } 19 // Lưu kết nhớ toàn cục để sử dụng cho bước lặp 20 float4 acc4 = {acc.x, acc.y, acc.z, 0.0f}; 21 globalA[gtid] = acc4; 22 } 4.3.4 Định nghĩa Grid Thread Blocks Đoạn mã nguồn phần 4.3.4 tính toán gia tốc p thực thể thông qua tương tác chúng với tất N thực thể hệ thống Chúng ta gọi kernel grid thread block để tính gia tốc tất N thực thể Bởi có p thread block thread cho thực thể, số lượng thead block cần thiết cho tất N thực thể N/p nên định nghĩa grid chiều kích thước N/p Kết tổng cộng N thread, thread thực tính toán N lực hấp dẫn, tổng cộng N tương tác Sự thực thi toàn tương tác grid mô hình sau Trục tung thể song song hóa grid chiều bao gồm N/p thread block độc lập, block bao gồm p thread Trục hoành thể tính toán tuần 61 tự N lực hấp dẫn thread Mỗi thread block nạp lại liệu chia sẻ p bước để chia sẻ p khối liệu vị trí thực thể Hình 21:Grid Thread Blocks tính toán tất lực tương tác 4.4 Các kết thu Thuật toán tính toán cài đặt sử dụng CUDA-C với môi trường phát triển Visual Studio 2008 hệ điều hành Windows Phần cứng để thực thi tính toán song song NVIDIA video card GeForce 210 : Hình 22: NVIDIA Video card GeForce 210: Phần cứng sử dụng để tính toán 62 Thông số Video card GeForce 210: GPU Engine Specs: CUDA Cores 16 Graphics Clock (MHz) 589 MHz Processor Clock (MHz) 1402 MHz Memory Specs: Memory Clock (MHz) 500 Standard Memory Config 512MB or GB DDR2 Memory Interface Width 64-bit Memory Bandwidth (GB/sec) 8.0 Feature Support: NVIDIA PureVideo® Technology** yes NVIDIA CUDA™ Technology yes Microsoft DirectX 10.1 OpenGL 3.1 Bus Support PCI-E 2.0 Certified for Windows yes Display Support: Maximum Digital Resolution 2560x1600 Maximum VGA Resolution 2048x1536 Khi thực hiện, chương trình đạt tốc độ tính toán vào khoảng từ 11 đến 18 GLOP/s Chương trình đạt yêu cầu đề ra, mô hình hóa phát triển 63 hệ thống Nbody ( N = 2048), body hệ thống chuyển động theo lực hút tương tác với N-1 body lại, chương trình liên tục tính toán cập nhật vận tốc, gia tốc, vị trí thực thể hệ thống qua bước thời gian Hình 23: Thử nghiệm thành công toán mô hệ thống N-Body Chương trình thử nghiệm thành công với kết thu nhanh gấp đến lần tốc độ thực thi phiên chương trình chạy CPU Intel Pentium Dual-Core E7500 3.00GHz Dưới vài hình ảnh chương trình thực thi: 64 Sự di chuyển thực thể hệ thống : 65 CHƯƠNG : KẾT LUẬN Sự đòi hỏi sức mạnh tính toán máy tính không ngừng tăng lên nhằm giải toán lĩnh vực khoa học công nghệ vốn có quy mô độ phức tạp ngày cao Đối với toán nêu trên, phương pháp xử lý với xử lý thường đáp ứng Xử lý song song dựa nguyên tắc nhiều xử lý thực thi đề chìa khóa để giải vấn đề Một giải pháp tính toán song song phát triển giới công nghệ tính toán song song dùng đơn vị xử lý đồ họa đa dụng GPGPU, kỹ thuật sử dụng đơn vị xử lý đồ họa GPU (vốn thiết kế để tính toán đồ họa máy tính) để thực tác vụ trước xử lý CPU Trong luận văn này, tác giả nghiên cứu, tìm hiểu kiến trúc hệ thông tính toán song song card GPU NVIDIA môi trường lập trình song song CUDA; Tác giả áp dụng kiến thức thu nhận vào việc xây dựng thử nghiệm chương trình giải toán ‘N-body simulation’, với phần lớn công việc tính toán thực thi NVIDIA Video card GeForce 210 Chương trình thử nghiệm thành công với kết thu nhanh gấp đến lần tốc độ thực thi phiên chương trình chạy CPU Intel Pentium Dual-Core E7500 3.00GHz Từ kết đạt từ nghiên cứu, ứng dụng giới năm gần chứng tỏ công nghệ tính toán song song card đồ họa đa dụng GPGPU công nghệ khả thi, có nhiều triển vọng phát triển tương lai, góp phần gia tăng hiệu tính toán, giải toán phức tạp khoa học, công nghệ đời sống 66 TÀI LIỆU THAM KHẢO [1] CUDA homepage http://www.nvidia.com/object/cuda_home_new.html [2] CUDA C Programming Guide http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA _C_Programming_Guide.pdf [3] Aarseth, S 2003 Gravitational N-Body Simulations Cambridge University Press [4] Top500 most powerful known computer systems in the world http://www.top500.org/ [5] Super Computer http://en.wikipedia.org/wiki/Supercomputer [6] Grid Computing http://en.wikipedia.org/wiki/Grid_computing [7] Compute Unified Device Architecture (CUDA) http://en.wikipedia.org/wiki/CUDA [8] General-Purpose Computation on Graphics Hardware http://gpgpu.org/ 67 ... toán hiệu cao : Trình bày cần thiết điểm bật công nghệ tính toán hiệu cao giới Chương 2: Công nghệ tính toán hiệu cao sử dụng card đồ họa GPGPU : Nghiên cứu công nghệ tính toán hiệu cao sử dụng. .. 21 1.2.5 Tính toán song song hệ thống card đồ họa đa dụng 22 CHƯƠNG 2: CÔNG NGHỆ TÍNH TOÁN HIỆU NĂNG SỬ DỤNG CARD ĐỒ HỌA GPGPU 23 2.1 Giới thiệu Bộ xử lý đồ họa GPU ... GPGP GP²U) kỹ thuật sử dụng đơn vị xử lý đồ họa GPU (vốn thiết kế để tính toán đồ họa máy tính) để thực tác vụ trước xử lý CPU Công nghệ tính toán hiệu cao sử dụng card đồ họa GPGPU trình bày

Ngày đăng: 27/07/2017, 20:25

Mục lục

  • TÀI LIỆU THAM KHẢO

Tài liệu cùng người dùng

Tài liệu liên quan