Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

117 18 0
Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Đ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

Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Danh mục hình vẽ Hình 1.1.1.3.1: Website dự án BIOGRID Hình 1.1.1.3.2: Website dự án DOE Science Grid 10 Hình 1.1.1.3.3: Tính tốn lưới 11 Hình 1.1.1.4.1: Mơ hình lưới – Grid 16 Hình 1.1.1.4.2: Mơ hình Globus 16 Hình 1.1.1.6.1: Sơ đồ hệ thống Grid phân viện CNTT TPHCM 20 Hình 1.1.1.6.2: Sơ đồ kết nối hệ thống Grid với hệ thống KISTI 21 Hình 1.1.2.2.1: Nguyên lý hoạt động Cluster 24 Hình 1.1.1.2.5: Sơ đồ nguyên lý Cluster lớn 26 Hình 1.2.1.1: Sự khác trình đơn luồng q trình đa luồng 28 Hình 1.2.1.4.1: Mơ hình Nhiều- Một 31 Hình 1.2.1.4.2: Mơ hình – 31 Hình 1.2.1.4.3: Mơ hình nhiều-nhiều 32 Hình 1.2.1.4.4: Mơ hình mứ 32 Hình 2.3.1.1:Phân ma trận thành tác vụ 40 Hình 2.3.1.2: Nhân hai ma trận A B với phần trung gian ma trận D 42 Hình 2.3.1.3: Phân hoạch toán nhân ma trận theo trung gian chiều 42 Hình 2.3.1.4: Mơ tả bước phát sinh phân hoạch thăm dị 44 Hình 2.3.1.5: Phân hoạch lai để tìm giá trị nhỏ mảng 46 Hình 2.3.2.1: Hai cách phân hoạch tác vụ đồng hóa tiến trình 47 Hình 2.3.2.1: (a) Phân chia theo chiều (b) phân chia theo hai chiều 48 Hình 3.1.1: Biểu đồ OpenMP xây dựng 55 Hình 3.3.2: Mơ tả cấu trúc thực khối mã xử lý luồng song song 56 Hình 3.3.3 Mơ hình Fork-Join OpenMP 57 Hình 3.3.4: Mơ hình thể tiến trình song song lồng 58 Hình 3.4.4.1: Mơ tả STATIC, DYNAMIC, GUIDED 65 Hình 3.8.1: Hình mơ tả cấu trúc tổng qua OPenMP 94 Hình 4.1.1: Hình ảnh biểu kết thuật tốn tính tổng 96 Hình 2.1: Mơ tả nhân ma trận theo khối song song 98 Hình 4.2.2.2: Mơ tả bước chuyển ma trận bước 99 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Hình 4.2.2.3: Mơ tả theo khối màu 99 Hình 4.2.2.4: Mơ tả bước nhân tác vụ P 1,2 99 Hình 4.2.2.6: Bảng kết đồ thị nhân ma trận 101 Hình 4.3.1 : Mơ tả ví dụ với mảng có n=8 102 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Mục lục PHẦN MỞ ĐẦU CHƯƠNG I: CÁC MƠ HÌNH THUẬT TỐN SONG SONG 1.1 Bộ nhớ phân tán (Distributed Memory System) 1.1.1 Tính tốn lưới (Grid Computing) .8 1.1.1.1 Giới thiệu chung .8 1.1.1.2 Định nghĩa tính tốn lưới – Grid Computing 1.1.1.3 Tổng quan mơ hình tính tốn lưới .8 1.1.1.4 Các giao thức dịch vụ lưới (Grid Protocol and Services) 15 1.1.1.5 Một số dạng lưới – Grid 17 1.1.1.6 Tình hình nghiêm cứu tính tốn lưới Việt Nam 19 1.1.2 Tính tốn dạng Cluster 21 1.1.1.2.1 Tổng quan mơ hình cụm 21 1.1.1.2.2 Cấu trúc Cluster 23 1.1.1.2.3 Cluster nhiều địa điểm phân tán 25 1.1.1.2.4 Tối ưu hóa thiết bị lưu trữ Cluster 25 1.1.1.2.5 Tính mở Cluster 26 1.2 Bộ nhớ chia sẻ .27 1.2.1 Đa luồng (Pthread) 25 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 1.21.1 Tổng quan đa luồng 25 1.2.1.1.2 Các lợi ích tiến trình đa luồng 29 1.2.1.1.3 Luồng người dùng luồng nhân 29 1.2.1.4 Các mơ hình đa luồng 30 1.2.1.5 Cấp phát luồng 32 1.2.1.6 Giới thiệu Pthreads 35 1.2.2 Đa xử lý (OpenMP) 37 CHƯƠNG II: CÁC PHƯƠNG PHÁP THIẾT KẾ THUẬT TOÁN SONG SONG 38 2.1 Cách xây dựng chương trình song song 38 2.2 Các thuật ngữ 38 2.2.1 Phân hoạch 38 2.2.2 Tác vụ 38 2.2.3 Granularity 38 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học 2.3 Thiết kế GVHD: CaoThanh Sơn thuật toán song song 39 2.3.1 Một số phương pháp phân hoạch 39 2.3.1.1 Phân hoạch đề quy 39 2.3.1.2 Phân hoạch liệu 39 2.3.1.3 Phân hoạch thăm dò 42 2.3.1.4 Phân hoạch suy đoán 44 2.3.1.5 Kết hợp phép phân hoạch ( phân hoạch lai) 45 2.3.2 Ánh xạ 46 2.3.2.1 Ánh xạ tĩnh (Static) 47 2.3.2.2 Ánh xạ động (Dynamic) 47 2.3.3 Một số phương pháp giảm biết chi phí tương tác 48 2.3.3.1 Tối ưu hóa liệu cục 48 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 2.3.3.2 Cực tiểu tần số tương tác 49 2.3.3.3 Giảm thiểu tối đa điểm xung đột, tranh chấp 49 2.3.3.4 Đan xen phép tính tương tác 51 2.3.3.5 Tạo liệu hay phép tính tốn 51 2.3.4 Các mơ hình thuật tốn song song 52 2.3.4.1 Mơ hình liệu song song 52 2.3.4.2 Mô hình Master-Slave 53 2.3.4.3 Mơ hình dây chuyền (pipeline) hay Producer-Consumer 54 2.3.4.4 Mơ hình lai 54 CHƯƠNG III: LẬP TRÌNH OpenMP 55 3.1 Khái quát 55 3.2 Giới thiệu 55 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 3.3 Mơ hình lập trình OpenMP 56 3.4 Tham số OpenMP 59 3.4.1 Định dạng tham số cho C/C++ 59 3.4.2 Phạm vi tham số 60 3.4.3 Cấu trúc vùng song song 60 3.4.4 Cấu trúc chia sẻ công việc 63 3.4.4.1 Chỉ dẫn cấu trúc chia sẻ công việc Do/for 64 3.4.4.2 Chỉ dẫn cấu trúc chia sẻ công việc SECTIONS 67 3.4.4.3 Chỉ dẫn cấu trúc chia sẻ công việc SINGLE 68 3.4.5 Phối hợp cấu trúc chia sẻ công việc song song 69 3.4.5.1 Chỉ dẫn song song DO/for 69 3.4.5.2 Chỉ dẫn song song SECTIONS 69 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 3.4.6 Cấc trúc TASK 70 3.4.7 Đồng cấu trúc 70 3.4.7.1 Cấu trúc đồng dẫn MASTER 71 3.4.7.2 Đồng hoá cấu trúc dẫn CRITICAL 72 3.4.7.3 Cấu trúc đồng dẫn BARRIER 73 3.4.7.4 Cấu trúc đồng dẫn ATOMIC 74 3.4.7.5 Cấu trúc đồng dẫn FLUSH 74 3.4.7.6 Chỉ dẫn đồng hoá ORDERED 75 3.4.7.7 Cấu trúc đồng dẫn TASKWAIT 75 3.4.8 Chỉ dẫn THREADPRIVATE 76 3.4.9 Các mệnh đề phạm vi liệu (Data Scope Attribute Clauses) 78 3.4.9.1 Mệnh đề PRIVATE 78 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 3.4.9.2 Mệnh đề SHARED 79 3.4.9.3 Mệnh đề DEFAULT 80 3.4.9.4 Mệnh đề FIRSTPRIVATE 80 3.4.9.5 Mệnh đề LASTPRIVATE 80 3.4.9.6 Mệnh đề COPYIN 81 3.4.9.7 Mệnh đề COPYPRIVATE 81 3.4.10 Tổng thể Mệnh đề/Chỉ dẫn 83 3.4.11 Kết nối dẫn Quy tắc lồng 84 3.4.11.1 Kết nối dẫn 84 3.4.11.2 Quy tắc lồng 84 3.5 Thư viện Run-time thông thường 85 3.5.1 OMP_SET_NUM_THREADS .85 3.5.2 SVTH: Trần Thị Lan Hương OMP_GET_NUM_THREADS Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 86 3.5.3 OMP_GET_MAX_THREADS 86 3.5.4 OMP_GET_THREAD_NUM 86 3.5.5 OMP_GET_NUM_PROCS 87 3.5.6 OMP_IN_PARALLEL 87 3.5.7 OMP_SET_DYNAMIC 87 3.5.8 OMP_GET_DYNAMIC 88 3.5.9 OMP_SET_NESTED 88 3.5.10 OMP_GET_NESTED 88 3.5.11 OMP_INIT_LOCK 89 3.5.12 OMP_DESTROY_LOCK 89 3.5.12 OMP_DESTROY_LOCK 89 3.5.14 SVTH: Trần Thị Lan Hương OMP_UNSET_LOCK Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn CHƯƠNG IV: ỨNG DỤNG SONG SONG HĨA MỘT SỐ THUẬT TỐN TRÊN MA TRẬN 4.1 Tính tổng từ 1->N 4.1.1.Thuật tốn Một tốn tính tổng từ ->n (n số nguyên dương) thường đưa ngơn ngữ lập trình Ý tưởng thuật tốn: Bởi tổng 1->N tổng dãy số nguyên liên tiếp tăng dần nên xây dựng vòng lặp xác định N Khởi tạo biến i vịng lặp 1.Có biến S khởi tạo dùng lưu trữ kết phép cộng S với i lần lặp Tổng giá trị S thực xong Thuật toán toán sau: Sum(N) Khởi tạo biến S=0; //S dùng lưu tổng số for iN, ta phân chia liệu vào khối [1,N] thành thành khối tương Từ ánh xạ vào tiến trình tĩnh khối liệu thực tính tống khối liệu mà tiến trình đảm nhận Sau điểm cuối tiến trình đồng cập nhật vào tiến trình chủ copy Các bước thuật toán song song: Khởi tạo S=0; Phân chia liệu khối [1,N] tĩnh đến tiến trình xử lý thực phép biến đổi cộng đưa danh sách, với biến i sử dụng riêng cho tiến trình song song Thực lặp i tiến trình để tính tổng S=S+i Kết thúc đoạn song song 4.1.3 Đánh giá thuật toán - Thuật toán : T(n)=  (n) - Thuật toán song song : T(n)=  (n/p) , với p số tiến trình thực SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn - Tốc độ xử lý : S= Ts/Tp= p (Ts:Thời gian thực tuần tự,Tp thời gian thực song song) - Bảng kết thời gian chạy chương trình N Thuật toán Thuật toán song song 100 1000 10000 100000 1000000 10000000 100000000 0.00279 0.0176 0.1423 0.745 1.034 3.24 0.00307 0.00978 0.0824 0.25 0.45 1.3 9.2 7.5 Hình 4.1.1: Hình ảnh biểu kết thuật tốn tính tổng 4.2 Nhân hai ma trận 4.2.1 Thuật toán Ý tưởng thuật toán: Thực nhân ma trận Anxn, Bnxn kết lưu vào ma trận Cnxn ta áp dụng công thức : Ci,j= ∑ Ai,k*Bk,j (k=1 n) Ở ta cần có vịng lặp i,k,j đến n Mỗi lần tính Ci,j cần khởi tạo Ci,j=0 Từ ta có thuật tốn nhân ma trận C=A*B kích thước n sau for i←0 to n-1 for k←0 to n-1 Ci,j ←0 for k←0 n-1 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn 5.Ci,j←Ai,j*Bj,k 6.end for 7.end for 8.end for 4.2.2 Thuật toán song song Thuật tốn 1: Nếu thuật tốn hóa song song hóa thuật toán nhân ma trận Gọi p số lượng tác vụ ánh xạ 1-1 vào tiến trình Mỗi tác vụ chịu trách nhiệm tính toán phần tử Ci,j ma trận kết C, với 0≤i, j= Cpn2 => n>=Cp * Kết thực thuật toán: N 10 50 100 150 200 Thuật toán Thuật toán song song Thuật toán Cannon 0.0025 0.0014 0.01 0.009 0.99 0.57 3.05 2.45 10.68 5.78 SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Hình 4.2.2.6: Bảng kết đồ thị nhân ma trận 4.3 Ứng dụng xếp nhanh (Quicksort) 4.3.1 Giới thiệu Sắp xếp phân đoạn (Quick sort) kiểu cải tiến phương pháp xếp kiểu đổi chỗ Đây phương pháp tốt, người sáng lập C.A.R Hoare Ý tưởng phương pháp: Chọn khóa ngẫu nhiên dãy làm “chốt” (pivot) Mọi phần tử nhỏ khóa “chốt” phải xếp vào ví trí trước “chốt”, phần tử khóa “chốt” phải xếp vào ví trí sau “chốt” Muốn vậy, phần tử dãy phải so sánh với khóa chốt đổi ví trí cho nhau, cho khóa “chốt” Khi việc đổi chỗ thực xong, dãy chia làm hai phần: đoạn gồm phần tử nhỏ khóa “chốt”, đoạn gồm phần tử lớn khóa “chốt” 4.3.2 Thuật toán Quicksort chia đoạn thuật toán xếp đệ quy thực đoạn liên tục n số phần tử phần tử mảng A[1 n] Quicksort gồm có bước: Phân chia đoạn thực xếp Tron bước phân chia, đoạn liên tục A[q r] thuộc đoạn phân chia có đoạn liên tục A[q s] A[s+1 r] mà phần tử đoạn phải nhỏ phần tử đoạn Trong bước xếp, đoạn xếp lời gọi đệ quy QUICKSORT Cho đến đoạn liên tục A[q s] A[s+1 r] xếp SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Đoạn A[q r] có phần:phần chứa tất phần tử nhỏ phần tử khác Đây thường lấy cách chọn giá trị x từ mảng A[q r] sử dụng phần tử để chia đoạn A[q r], có phần: phần với phần tử nhỏ x phần tử lớn x Phần tử x gọi khóa “chốt” (Pivot) Hình 4.3.1 : Mơ tả ví dụ với mảng có n=8 Dưới thuật toán QUICKSORT Procedure QUICKSORT (A,q,r) Begin If (q < r) then Begin X:=A[q]; S:=q; For i:=q+1 to r If ( A[i] < X ) then Begin S:= S+1; Swap(A[s],A[i]); End if Swap(A[q],A[s]); QUICKSORT(A,q,s); QUICKSORT(A,s+1,r); End if SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn End QUICKSORT Sự phức tạp phân chia đoạn liên tục có kích thước k O(k) Thực thi QUICKSORT có khả xảy lỗi cao cách chia đoạn liên tục Cần phải cân nhắc trường hợp đoạn có kích cỡ đến k-1 Thời gian chạy trường hợp T(n)=T(n-1)+O(n), Giải pháp T(n)=O(n 2) Cịn khả khác tổt, kích cỡ đoạn k/2 4.3.3 Thuật toán song song a Thuật toán song song Trên mảng liệu vào ta phân đoạn Mỗi đoạn tiến trình đảm nhận Việc chọn điểm ngẫu nhiên tiến trình tiến trình đầu đảm nhận phân thành nửa Và chuyển đổi phần tử tiến tiến trình Sau tiến trình đầu tiếp tục chọn giá trị ngẫu nhiên Và phân chia nhở chuyển đổi giống bước trước thực phân Đây gọi đệ quy chương trình Quá tình xếp kết thúc phân chia nửa tiến trình Mơ tả q trình thực thuật tốn với tiến trình P sau: Hình 4.3.3.1 : Phân khối liệu Hình 4.3.3.3: Phân nửa nửa cho tiến trình Hình 4.3.3.2: Chọn đỉnh ngẫu nhiên Hình 4.3.3.4: Kết phép chuyển tiến trình dổi nửa lần SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Hình 4.3.3.5: Trong nửa tiếp tục Hình 3.3.7: Kết phân chia chọn đỉnh ngẫu nhiên phần Hình 4.3.3.6: Chuyển đổi phần tử Hình 4.3.3.8: Chuyển dổi giá trị phần nữatiến trình phần thu kết b Thuật tốn PRAM Hình 4.3.3 : Thuật tốn SVTH: Trần Thị Lan Hương Khóa luận tốt nghiệp đại học GVHD: CaoThanh Sơn Procedure BUILD_TREE (A[1 n]) Begin For each process i Begin Root:=i; Parent:=root; Leftchild[i]:=rightchild[i]:=n+1; End for Repeat for each process i root Begin If (A[i]

Ngày đăng: 28/08/2021, 23:32

Hình ảnh liên quan

1.21.1. Tổng quan về đa luồng ................................................................................................................................ - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

1.21.1..

Tổng quan về đa luồng Xem tại trang 4 của tài liệu.
Hình 1.1.1.3.1: Website của dự án BIOGRID - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.1.3.1.

Website của dự án BIOGRID Xem tại trang 17 của tài liệu.
Hình 1.1.1.3.2: Website của dự án DOE Science Grid - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.1.3.2.

Website của dự án DOE Science Grid Xem tại trang 18 của tài liệu.
Hình 1.1.1.3.3: Tính toán lưới - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.1.3.3.

Tính toán lưới Xem tại trang 19 của tài liệu.
- Mô hình lưới – Gri d: Là cơ chế cho phép xác thực và truyền thông an toàn trên mạng máy tính. - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

h.

ình lưới – Gri d: Là cơ chế cho phép xác thực và truyền thông an toàn trên mạng máy tính Xem tại trang 24 của tài liệu.
Hình 1.1.1.4.1: Mô hình lưới – Grid - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.1.4.1.

Mô hình lưới – Grid Xem tại trang 24 của tài liệu.
Hình 1.1.1.6.1: Sơ đồ hệ thống Grid của phân viện CNTT tại TPHCM - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.1.6.1.

Sơ đồ hệ thống Grid của phân viện CNTT tại TPHCM Xem tại trang 29 của tài liệu.
Hình 1.1.2.2.1: Nguyên lý hoạt động của một Cluster - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.2.2.1.

Nguyên lý hoạt động của một Cluster Xem tại trang 32 của tài liệu.
Hình 1.1.1.2.5: Sơ đồ nguyên lý của một Cluster lớn Có ba mạng chức năng cần phải có: - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 1.1.1.2.5.

Sơ đồ nguyên lý của một Cluster lớn Có ba mạng chức năng cần phải có: Xem tại trang 34 của tài liệu.
Hình 2.3.1.3: Phân hoạch bài toán nhân ma trận theo ma trận trung gia n3 chiều - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 2.3.1.3.

Phân hoạch bài toán nhân ma trận theo ma trận trung gia n3 chiều Xem tại trang 50 của tài liệu.
Hình 2.3.1.4: Mô tả các bước phát sinh trong phân hoạch thăm dò - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 2.3.1.4.

Mô tả các bước phát sinh trong phân hoạch thăm dò Xem tại trang 52 của tài liệu.
Hình 2.3.1.5: Phân hoạch lai để tìm giá trị nhỏ nhất của mảng - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 2.3.1.5.

Phân hoạch lai để tìm giá trị nhỏ nhất của mảng Xem tại trang 54 của tài liệu.
Hình 2.3.2.1: (a) Phân chia theo 1 chiều và (b) phân chia theo hai chiều - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 2.3.2.1.

(a) Phân chia theo 1 chiều và (b) phân chia theo hai chiều Xem tại trang 56 của tài liệu.
Hình 3.3.2: Mô tả cấu trúc thực hiện khối mã xử lý luồng song song - OpenMP sử dụng mô hình Fork-Join (nhánh - nhập) thực hiện song song: - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 3.3.2.

Mô tả cấu trúc thực hiện khối mã xử lý luồng song song - OpenMP sử dụng mô hình Fork-Join (nhánh - nhập) thực hiện song song: Xem tại trang 65 của tài liệu.
Hình 3.3.4: Mô hình thể hiện tiến trình song song lồng nhau - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 3.3.4.

Mô hình thể hiện tiến trình song song lồng nhau Xem tại trang 66 của tài liệu.
3.4.4.1. Chỉ dẫn cấu trúc chia sẻ công việc Do/for - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

3.4.4.1..

Chỉ dẫn cấu trúc chia sẻ công việc Do/for Xem tại trang 72 của tài liệu.
Hình 26. Cấu trúc chia sẻ công việc  Hạn chế: - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 26..

Cấu trúc chia sẻ công việc Hạn chế: Xem tại trang 72 của tài liệu.
Hình 3.4.4.1: Mô tả STATIC, DYNAMIC, GUIDED  Sự hạn chế: - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 3.4.4.1.

Mô tả STATIC, DYNAMIC, GUIDED Sự hạn chế: Xem tại trang 73 của tài liệu.
Hình 3.4.10. Tổng thể các chỉ dẫn - Chỉ dẫn dưới đây OpenMP không chấp nhận mệnh đề: - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 3.4.10..

Tổng thể các chỉ dẫn - Chỉ dẫn dưới đây OpenMP không chấp nhận mệnh đề: Xem tại trang 91 của tài liệu.
Bảng dưới đây thể hiện tổng quan mệnh đề được công nhận bởi chỉ dẫn OpenMP - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Bảng d.

ưới đây thể hiện tổng quan mệnh đề được công nhận bởi chỉ dẫn OpenMP Xem tại trang 91 của tài liệu.
Hình 3.8.1: Hình mô tả cấu trúc tổng qua của OpenMP - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 3.8.1.

Hình mô tả cấu trúc tổng qua của OpenMP Xem tại trang 102 của tài liệu.
- Bảng kết quả thời gian chạy chương trình - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Bảng k.

ết quả thời gian chạy chương trình Xem tại trang 104 của tài liệu.
Hình 2.1: Mô tả nhân ma trận theo khối song song (a)-4 khối ánh xạ vào 4 tiến trình, (b)-Thực hiện bước 2,  - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 2.1.

Mô tả nhân ma trận theo khối song song (a)-4 khối ánh xạ vào 4 tiến trình, (b)-Thực hiện bước 2, Xem tại trang 106 của tài liệu.
Phân thành các khối dữ liệu được lấy theo hàng và cột. Hình dưới thể hiện cùng màu thuộc cùng khối - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

h.

ân thành các khối dữ liệu được lấy theo hàng và cột. Hình dưới thể hiện cùng màu thuộc cùng khối Xem tại trang 107 của tài liệu.
Hình 4.2.2.6: Bảng kết quả đồ thị nhân ma trận - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 4.2.2.6.

Bảng kết quả đồ thị nhân ma trận Xem tại trang 109 của tài liệu.
Hình 4.3.3.1 :Phân khối dữ liệu bằng nhau cho mỗi tiến trình - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 4.3.3.1.

Phân khối dữ liệu bằng nhau cho mỗi tiến trình Xem tại trang 111 của tài liệu.
Hình 4.3.3.5: Trong 2 nửa tiếp tục chọn đỉnh ngẫu nhiên - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Hình 4.3.3.5.

Trong 2 nửa tiếp tục chọn đỉnh ngẫu nhiên Xem tại trang 112 của tài liệu.
- Bảng kết quả - Nghiên cứu mô hình tính toán song song sử dụng bộ nhớ chia sẻ và ứng dụng một số thuật toán trên ma trận

Bảng k.

ết quả Xem tại trang 114 của tài liệu.

Mục lục

  • 2.3.3.5. Tạo bản sao dữ liệu hay các phép tính toán 51

  • CHƯƠNG III: LẬP TRÌNH OpenMP 55

    • 3.1. Khái quát 55

    • 3.4. Tham số của OpenMP 59

    • 3.4.1. Định dạng tham số cho C/C++ 59

      • 3.4.4. Cấu trúc chia sẻ công việc 63

        • 3.4.4.2. Chỉ dẫn cấu trúc chia sẻ công việc SECTIONS 67

        • 3.4.4.3. Chỉ dẫn cấu trúc chia sẻ công việc SINGLE 68

        • 3.4.5. Phối hợp giữa cấu trúc chia sẻ công việc song song 69

          • 3.4.5.1. Chỉ dẫn song song DO/for 69

          • 3.4.6 Cấc trúc TASK 70

          • 3.4.7. Đồng bộ cấu trúc 70

            • 3.4.7.3. Cấu trúc đồng bộ chỉ dẫn BARRIER 73

            • 3.4.7.6. Chỉ dẫn đồng bộ hoá ORDERED 75

            • 3.4.8. Chỉ dẫn THREADPRIVATE 76

              • 3.4.9.2. Mệnh đề SHARED 79

              • 3.4.11. Kết nối chỉ dẫn và Quy tắc lồng nhau 84

              • 3.5.1. OMP_SET_NUM_THREADS 85

              • 3.5.6. OMP_IN_PARALLEL 87

              • 3.6.1. OMP_SCHEDULE 91

                • 2.3.3.5. Tạo bản sao dữ liệu hay các phép tính toán

                • CHƯƠNG III: LẬP TRÌNH OpenMP

                  • 3.1. Khái quát

                  • 3.4. Tham số của OpenMP

                  • 3.4.1. Định dạng tham số cho C/C++

                    • 3.4.4. Cấu trúc chia sẻ công việc

                      • Hình 26. Cấu trúc chia sẻ công việc

                      • 3.4.4.2. Chỉ dẫn cấu trúc chia sẻ công việc SECTIONS

                      • 3.4.4.3. Chỉ dẫn cấu trúc chia sẻ công việc SINGLE

                      • 3.4.5. Phối hợp giữa cấu trúc chia sẻ công việc song song

                        • 3.4.5.1. Chỉ dẫn song song DO/for

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

  • Đang cập nhật ...

Tài liệu liên quan