KIẾN TRÚC CÁC HỆ THỐNG TÍNH TOÁN - CHƯƠNG 5 pdf

32 284 0
KIẾN TRÚC CÁC HỆ THỐNG TÍNH TOÁN - CHƯƠNG 5 pdf

Đ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

1 KIẾN TRÚC CÁC HỆ THỐNG TÍNH TOÁN Nguyễn Phú Bình Trần Trung Kiên Bộ môn KTMT - Khoa CNTT Trường ĐH Bách Khoa Hà Nội 2 Lưu ý của tác giả  Không được tự ý sao chép hay quảng bá bài giảng này khi chưa được sự đồng ý của các tác giả.  Địa chỉ liên hệ của các tác giả: Nguyễn Phú Bình Email: ngphubinh@yahoo.com Mobile: 0983533925 Website: http://phubinh.vicosoft.com/ktmt Trần Trung Kiên Email: trankien_bk@yahoo.com Mobile: 0914919392 Bộ môn Kỹ thuật Máy tính Khoa Công nghệ Thông tin Trường Đại học Bách Khoa Hà Nội C1- P322, Tel: 8696125 Website: http://ktmt.shorturl.com 3 Kiến trúc các hệ thống tính toán Chương 5 Thuật toán song song Nguyễn Phú Bình – Trần Trung Kiên Bộ môn Kỹ thuật Máy tính, Khoa Công nghệ Thông tin Trường Đại học Bách Khoa Hà Nội Tài liệu tham khảo: Bài giảng tính toán song song (PGS,TS Nguyễn Đức Nghĩa) 4  Thuật toán tuần tự là cơ sở cho các thao tác để giải quyết các vấn đề trong các máy tính tuần tự.  Thuật toán song song là cơ sở, cho biết cách thức để giải quyết các vấn đề bằng cách sử dụng tính toán song song. 5  Một thuật toán song song bao gồm toàn bộ (hoặc một trong số) các bước sau:  Xác định được những phần công việc nào được thực hiện đồng thời  Ánh xạ các phần công việc tới các tiến trình để thực hiện đồng thời  Tổ chức dữ liệu vào, ra, và các dữ liệu trung gian  Quản lý việc truy cập dữ liệu dùng chung bởi nhiều bộ xử lý  Đồng bộ các bộ xử lý 6 Những khái niệm cơ bản:  Phân rã bài toán (Decomposition): là quá trình chia nhỏ một vấn đề lớn thành các phần nhỏ gọi là các nhiệm vụ/công việc nhỏ (task / subjob)  Các nhiệm nhỏ (task / subjob) có độ lớn tùy ý 7  Ví dụ 1 :Phân rã bài toán nhân ma trận với véc tơ Ma trận A kích thước n,n Véc tơ b Kết quả được ma trận y với: y[i]= ∑ n k=1 A[i.k] . b[k] 8  Chia công việc thành n task  Mỗi task thực hiện tính y[i] (i từ 1 tới n)  Các task này hoàn toàn độc lập với nhau và có thể thực hiện đồng thời 9  Độ thị về sự phụ thuộc lẫn nhau giữa các nhiệm công việc (task-dependency graph): 10  VD2: Thực hiện truy vấn cơ sở dữ liệu [...]...  Phân rã theo các khả năng có thể xảy ra: Đối với những bài toán cần duyệt và tìm ra phương án giải quyết (vd: tìm nước cờ, tìm đường đi ngắn nhất,…), không gian tìm kiếm sẽ được chia nhỏ và thực hiện trên từng tiến trình  VD: 25 Phân rã theo các khả năng có thể xảy ra 26 Phân rã theo các khả năng có thể xảy ra 27 Một số thuật toán song song  Ngôn ngữ mô tả thuật toán  Các thuật toán song song...  Mapping: Cơ chế để ánh xạ các task tới các process 13  Các kỹ thuật phân rã (decomposition) bài toán:    Phân rã đệ qui (Recursive decomposition) Phân rã theo dữ liệu (Data decomposition) Phân rã theo các khả năng có thể xảy ra (exploratory decomposition) 14 Phân rã đệ qui  Phân rã đệ qui: Bài toán được chia thành các task nhỏ hơn, mỗi task nhỏ đó lại được áp dụng cách chia tương tự như vậy ... ngữ mô tả thuật toán  Toán tử gán: Biến= biểu_thức  Câu lệnh điều kiện: If đieukien then r1 r2 r3… Else s1 s2… End if 29 Ngôn ngữ mô tả thuật toán  Vòng lặp For For biến=s to e Step h S1 S2 … End for  Vòng lặp While While đieukiên Do S2 S2 … End While 30 Ngôn ngữ mô tả thuật toán  Cấu trúc thể hiện song song  Cấu trúc 1: For biến=1 to n do in parallel S1 S2 … End parallel  Cấu trúc 2: For x €... áp dụng cách chia tương tự như vậy  Ví dụ : Sắp xếp nhanh (quick sort): -Giả sử cần sắp xếp 1 dãy A -Chọn một phần tử x trong A làm mốc (chốt) và chia A thành 2 phần A0 và A1: A0 gồm các phần từ nhỏ hơn x, A1 gồm các phần tử không nhỏ hơn x A0 và A1 lại tiếp tục áp dụng cách thức như trên cho đến khi mỗi phần chỉ gồm 1 phần tử 15 Phân rã đệ qui 16 Phân rã theo dữ liệu  Phân rã theo dữ liệu:    ... liệu đầu ra:  Các phần tử dữ liệu đầu ra có thể được tính độc lập nhau  VD1: Nhận 2 ma trận:Chia theo dữ liệu đầu ra 18 Phân rã theo dữ liệu  VD2: 19 Phân rã theo dữ liệu 20 Phân rã theo dữ liệu  Phân rã theo dữ liệu đầu vào: 21 Phân rã theo dữ liệu  Phân rã theo dữ liệu đầu vào và đầu ra 22 Phân rã theo dữ liệu  Phân rã theo dữ liệu trung gian: 23 Phân rã theo dữ liệu 24 Phân rã theo các khả năng... While 30 Ngôn ngữ mô tả thuật toán  Cấu trúc thể hiện song song  Cấu trúc 1: For biến=1 to n do in parallel S1 S2 … End parallel  Cấu trúc 2: For x € S do in parallel S1 S2 … End parallel 31  Các thuật toán song song: 32 . Kỹ thuật Máy tính Khoa Công nghệ Thông tin Trường Đại học Bách Khoa Hà Nội C 1- P322, Tel: 86961 25 Website: http://ktmt.shorturl.com 3 Kiến trúc các hệ thống tính toán Chương 5 Thuật toán song song Nguyễn. giải quyết các vấn đề trong các máy tính tuần tự.  Thuật toán song song là cơ sở, cho biết cách thức để giải quyết các vấn đề bằng cách sử dụng tính toán song song. 5  Một thuật toán song song. 1 KIẾN TRÚC CÁC HỆ THỐNG TÍNH TOÁN Nguyễn Phú Bình Trần Trung Kiên Bộ môn KTMT - Khoa CNTT Trường ĐH Bách Khoa Hà Nội 2 Lưu ý của tác giả 

Ngày đăng: 09/08/2014, 12:22

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

Tài liệu liên quan