Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 85 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
85
Dung lượng
1,83 MB
Nội dung
Đ I H CăĐĨăN NG TR NGăĐ I H CăS ăPH M - - NGUY NăĐĔNGăKHOA NÂNG CAO HI UăNĔNGăTệNHăTOỄNă CHO CỄCăBĨIăTOỄNăTỊMăĐ NGăĐIăNG N NH T VÀ CÂY KHUNG NH NH T LU NăVĔNăTH CăSƾ H TH NG THÔNG TIN ĐƠăN ng, 2019 Đ I H CăĐĨăN NG TR NGăĐ I H CăS ăPH M - - NGUY NăĐĔNGăKHOA NÂNG CAO HI UăNĔNGăTệNHăTOỄNă CHOăCỄCăBĨIăTOỄNăTỊMăĐ NGăĐIăNG N NH T VÀ CÂY KHUNG NH NH T Chuyên ngành: H th ng thông tin Mã s : 848.01.04 LU NăVĔNăTH CăSƾ NG IăH NG D N KHOA H C: TS NGUY NăĐỊNHăL U ĐƠăN ng, 2019 ii L I C Mă N L i xin gửi l i cảm ơn chân thành đến quý thầy cô giáo, Khoa chuyên ngành Công nghệ thông tin, Trư ng Đại học Sư Phạm tận tình giảng dạy, truyền đạt kiến th c, kinh nghiệm quý báu suốt th i gian theo học chương trình Các kiến th c, kinh nghiệm quý báu c a thầy cô giáo không giúp cá nhân tơi hồn thiện hệ thống kiến th c học tập mà cịn giúp tơi ng dụng kiến th c cơng việc Đặc biệt, xin g i l i cảm ơn chân thành sâu sắc đến thầy giáo c a tơi TS Nguy năĐìnhăL u, ngư i Thầy tận tình hướng dẫn tạo điều kiện tốt để tơi hồn thành luận văn Tơi xin bày tỏ tình cảm với gia đình, đồng nghiệp, bạn bè tạo điều kiện để tơi dành th i gian cho khóa học Xin chân thành cảm ơn anh chị em lớp K34 ln hỗ trợ tơi q trình học tập để có kết ngày hơm nay, tơi nhớ lớp K34 thân thương Tuy có nhiều cố gắng, chắn luận văn không tránh khỏi thiếu sót định Tơi mong nhận ý kiến đóng góp quý báu c a quý thầy cô giáo anh chị, bạn để luận văn ngày hoàn thiện Trân trọng cảm ơn! v M CL C L IăCAMăĐOAN i L I C Mă N ii TÓM T T iii M C L C v DANH M C CÁC T VI T T T, KÝ HI U vii DANH M C CÁC B NG viii DANH M C CÁC HÌNH ix M Đ U 1 Lý chọn đề tài Mục tiêu nhiệm vụ Đối tượng phạm vi nghiên c u: .1 Phương pháp nghiên c u Bố cục đề tài Ý nghĩa khoa học thực tiễn c a đề tài CH NGă1.ăX LÝ SONG SONG VÀ L P TRÌNH V I MPI 1.1 Giới thiệu xử lý song song 1.2 Kiến trúc máy tính song song 1.2.1 Mơ hình SISD 1.2.2 Kiến trúc song song SIMD .5 1.2.3 Kiến trúc song song MISD .6 1.2.4 Mơ hình máy tính MIMD .7 1.3 Thuật toán song song 1.3.1 Quy trình thiết kế thuật tốn song song 1.3.2 Nguyên lý thiết kế thuật toán song song 1.3.3 Các cách tiếp cận thiết kế 1.3.4 Phân tích đánh giá thuật tốn song song 10 1.4 Các mô hình lập trình song song 12 1.4.1 Mơ hình chia nhớ 13 1.4.2 Mơ hình luồng 13 1.4.3 Mơ hình truyền thơng điệp 13 1.4.4 Mơ hình phân hoạch liệu 14 1.2 Lập trình song song mơi trư ng MPI 14 1.2.1 Giới thiệu 14 1.2.2 Một số đặc điểm c a lập trình MPI 15 vi 1.2.3 Một số vấn đề hiệu .18 1.3 Tìm hiểu tập lệnh c a thư viện MPI .21 1.3.1 Các lệnh quản lý môi trư ng MPI 21 1.3.2 Các kiểu liệu 23 1.3.3 Cơ chế truyền thông điệp 24 1.3.4 Các lệnh truyền thông điệp blocking 26 1.3.5 Các lệnh truyền thông điệp non-blocking 28 1.3.6 Các lệnh truyền thông tập thể .29 1.4 Kết luận chương .32 CH NGă2.ăCỄCăTHU TăTOỄNăTRểNăĐ TH 33 2.1 Thuật tốn Dijkstra tìm đư ng ngắn 33 2.1.1 Mô tả thuật toán 33 2.1.2 Ví dụ minh họa 34 2.2 Thuật tốn Prim tìm khung cực tiểu 37 2.2.1 Mơ tả thuật tốn 37 2.2.2 Ví dụ minh họa 37 CH NGă 3.ă NGHIểNă C U NG D NG THU T TOÁN SONG SONG TRểNăTH ăVI N MPI 39 3.1 Thuật toán song song Prim tìm khung cực tiểu .39 3.1.1 Cách thực thuật toán .39 3.1.2 Ví dụ thực thuật toán song song Prim 40 3.2 Thuật toán song song Dijkstra tìm đư ng ngắn từ đỉnh đến tất đỉnh 42 3.2.1 Cách thực thuật toán .42 3.2.2 Ví dụ thực thuật toán song song Dijkstra 43 3.3 Thực nghiệm chương trình 52 3.3.1 Đăng nhập hệ thống 53 3.3.2 Cách chạy chương trình hệ thống ccs1 54 3.3.3 Kết thu 56 3.3.4 Đánh giá thuật toán 57 K T LU NăVĨăH NG PHÁT TRI N 60 DANH M C TÀI LI U THAM KH O 61 QUY TăĐ NHăGIAOăĐ TÀI LU NăVĔNă(B n sao) 57 3.3.4 Đánh giá thuật toán Trong thuật toán song song ngư i ta sử dụng tốc độ (Speedup) để đánh giá th i gian thực c a thuật toán song song so với thuật toán Dữ liệu đầu vào đồ thị tạo ngẫu nhiên có txt Hình 3.14 File đầu vào tốn Dijkstra với 50 đỉnh Trong Speedup (tốc độ)= Ts/ Tp Ts: Sequential time (Th i gian chạy tuần tự) Tp: Parallel time (Th i gian chạy song song) Bảng đánh giá biểu diễn đồ thị sau: Bài tốn Dijkstra Chúng tơi tạo đồ thị gồm 1200 đỉnh cho thực xử lý (tuần tự), 2, 4, 6, xử lý kết cho bảng sau: Bảng 3.1 Bảng đánh giá thời gian thực thuật toán song song so với thuật toán toán Dijkstra 1200 đỉnh S b x lý T căđ (Speedup) 1.42 1.68 1.80 2.01 58 Num er of pro essors số ộ xử lý Speedup tố độ 2.5 2.01 1.68 1.8 1.42 1.5 0.5 Dijkstra Num er of pro essors số ộ xử lý Hình 3.15 Đồ thị biểu diễn đánh giá thuật toán song song so với tốn Dijkstra 1200 đỉnh Chúng tơi tiếp tục tạo thêm đồ thị gồm 2500 đỉnh cho thực xử lý (tuần tự), 2, 4, 6, xử lý kết cho bảng sau: Bảng 3.2 Bảng đánh giá thời gian thực thuật toán song song so với thuật toán toán Dijkstra 2500 đỉnh 1.5 1.78 1.99 2.09 S b x lý T căđ (Speedup) Num er of pro essors số ộ xử lý Speedup tố độ 2.5 1.99 2.09 1.78 1.5 1.5 0.5 Dijkstra Num er of pro essors số ộ xử lý Hình 3.16 Đồ thị biểu diễn đánh giá thuật toán song song so với toán Dijkstra 2500 đỉnh 59 Bài tốn Prim Chúng tơi tiếp tục tạo thêm đồ thị gồm 2100 đỉnh cho thực xử lý (tuần tự), 2, 4, 6, xử lý kết cho bảng sau: Bảng 3.3 Bảng đánh thời gian thực thuật toán song song so với thuật toán toán Prim 2100 đỉnh S b x lý T căđ (Speedup) 1.45 1.73 1.91 2.05 Num er of pro essors số ộ xử lý 2.5 2.05 Speedup tố độ 1.91 1.73 1.45 1.5 0.5 Prim Num er of pro essors số ộ xử lý Hình 3.17 Đồ thị biểu diễn đánh giá thuật toán song song so với toán Prim 2100 đỉnh Nh n xét: từ đồ thị bảng kết trên, nhận thấy tốc độ xử lý tăng lên đáng kể xử lý xử lý th i gian giảm 1,6 lần so với xử lý 60 K T LU N VĨăH NG PHÁT TRI N K T LU N Luận văn nghiên c u tổng quát thuật toán song song áp dụng cho số toán đồ thị Luận văn khái quát khái niệm thuật toán song song vấn đề liên quan đến thuật tốn song song, mơ hình song song, mơi trư ng lập trình song song, lý thuyết đồ thị, cách biểu diễn đồ thị máy tính, vấn đề đư ng đi, bao trùm bảng đồ Từ hiểu biết luận văn nghiên c u để song song hóa thuật tốn tìm đư ng ngắn (Dijkstra) khung nhỏ (Prim) từ thuật toán truyền thống Ngồi cịn thiếu kinh nghiệm việc phân tích, thiết kế nên kết đạt cịn hạn chế Qua nghiên c u đề tài nắm kiến th c xử lý song song, lập trình song song, lý thuyết đồ thị Tìm hiểu cách ng dụng thuật tốn song song áp dụng vào số toán cụ thể H NG PHÁT TRI N Sau hoàn thành đề tài tiếp tục nghiên c u thêm để phát triển đề tài này, cải tiến thêm thuật toán áp dụng vào lĩnh vực như: ⁻ Áp dụng song song hóa thuật tốn Dijkstra, Prim theo mơ hình máy tính phân cụm ⁻ Nghiên c u mơ hình lập trình song song áp dụng chuyển thuật toán khác đồ thị sang thuật toán song song ⁻ ng dụng thực tế vào toán cụ thể nhiều lĩnh vực khác 61 DANH M C TÀI LI U THAM KH O Tài li u Ti ng Vi t [1] PGS.TS Đoàn Văn Ban, TS Nguyễn Mậu Hân, Xử lý song song & phân tán, Viện Công nghệ Thông tin, 2006 [2] [3] [4] PGS.TSKH Trần Quốc Chiến, Hồ Xn Bình, Thuật tốn song song tìm luồng cực đại, Tạp chí Khoa học & Cơng nghệ, Đại học Đà Nẵng, 5(22)/2007, 37-42 PGS.TSKH Trần Quốc Chiến, Giáo trình Lý thuyết đồ thị, Đại học Đà Nẵng 2007 PGS.TSKH Trần Quốc Chiến, Trần Thị Mỹ Dung, “ ng dụng thuật tốn tìm đường ngắn Đa nguồn đích tìm luồng cực đại đa hàng hóa đồng thời”, kỷ [5] [6] [7] yếu hội thảo khoa học Công nghệ Thông tin, Đại học Sư Phạm Đà Nẳng, 11-2011 Nguyễn Đ c Nghĩa, Nguyễn Tơ Thành, “ Tốn rời rạc “, Nhà Xuất Bản Đại học quốc gia Hà Nội, 2006 PGS.TS Lê Huy Thập, “ Cơ sở lý thuyết song Song “, Nhà Xuất Bản Thông Tin Truyền Thông, 2011 Nguyễn Đ c Nghĩa, “ Cấu trúc liệu giải thuật “, Nhà Xuất Bản KHKT Hà Nội, 2013 Tài li u Ti ng Anh [1] Tom Wilson, Nicholas Hofbauer, Dijkstra’s Algorithm in Parallel, team report [2] [3] [4] [5] [6] [7] 2008 A Grama, A.Gupta, G.Karypis, V.Kumar, “Introduction to Parallel Computing”, 2003 Seyed H Roosta, Parallel Processing and Parallel Algorithms, Theory and Computation, Springer 1999 Joseph JáJá, An Introduction to Parallel Algrithms, Addison - Wesley, 1992 Thomas Rauber, Gudula Runger (2013), Parallel Programming: for Multicore and Cluster Systems, Springer JimKeogh(2004),Java Dymistyfied, Chapter 12 Multithreading William Gropp et al, MPICH2 User’s Guide Version 1.0.6, Mathematics and ComputerScience Division, Argonne National Laboratory, 2007 ... tài: ? ?Nâng cao hiệu tính tốn cho tốn tìm đường ngắn khung nhỏ “ M c tiêu nhi m v 2.1 Mục tiêu Nghiên c u thuật toán song song, ng dụng thư viện cụ thể nâng cao hiệu tính tốn cho hai thuật toán Dijkstra... a tính tốn song song tính đồng th i hay xử lý nhiều tác vụ lúc Với mục đích tìm hiểu nghiên c u thuật tốn song song để giải toán đồ thị cách hiệu hơn, th i gian xử lý ngắn tơi chọn đề tài: ? ?Nâng. .. tốn Các tài ngun tính tốn bao gồm máy tính với nhiều vi xử lý hay tập máy tính kết nối mạng kết hợp c a hai dạng Cơng nghệ tính tốn song song cho phép giảm th i gian thực thi toán tùy thuộc cách