Đánh giá thuật toán

Một phần của tài liệu 28032_1712202001913653NGUYENDANGKHOAK34HTTT (Trang 71 - 85)

CHƯƠNG 2 CÁC THUẬT TOÁN TRÊN ĐỒ THỊ

3.3. Thực nghiệm chương trình

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 hiện của thuật toán song song so với thuật toán tuần tự.

Dữ liệu đầu vào là đồ thị được tạo ngẫu nhiên có đuôi .txt

Hình 3.14. File đầu vào bài toá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á trên được biểu diễn bằng đồ thị sau:

Bài toán Dijkstra

Chúng tôi tạo đồ thị gồm 1200 đỉnh và cho thực hiện trên 1 bộ xử lý (tuần tự), 2, 4, 6, 8 bộ xử lý thì kết quả được cho ở bảng sau:

Bảng 3.1. Bảng đánh giá thời gian thực hiện thuật toán song song so với thuật toán tuần tự bài toán Dijkstra 1200 đỉnh

Số bộ xử lý 2 4 6 8

Tốc độ

Hình 3.15. Đồ thị biểu diễn sự đánh giá thuật toán song song so với tuần tự bài toán Dijkstra 1200 đỉnh

Chúng tôi tiếp tục tạo thêm đồ thị gồm 2500 đỉnh và cho thực hiện trên 1 bộ xử lý (tuần tự), 2, 4, 6, 8 bộ xử lý thì kết quả được cho ở bảng sau:

Bảng 3.2. Bảng đánh giá thời gian thực hiện thuật toán song song so với thuật toán tuần tự bài toán Dijkstra 2500 đỉnh

Số bộ xử lý 2 4 6 8

Tốc độ (Speedup) 1.5 1.78 1.99 2.09

Hình 3.16. Đồ thị biểu diễn sự đánh giá thuật toán song song so với tuần tự bài toán Dijkstra 2500 đỉnh 1.42 1.68 1.8 2.01 0 0.5 1 1.5 2 2.5 2 4 6 8 Spe ed u p ( tốc đ ộ) Dijkstra Number of processors (số bộ xử lý) Number of processors (số bộ xử lý) 1.5 1.78 1.99 2.09 0 0.5 1 1.5 2 2.5 2 4 6 8 Speedu p (t ốc độ) Dijkstra Number of processors (số bộ xử lý) Number of processors (số bộ xử lý)

Bài toán Prim

Chúng tôi tiếp tục tạo thêm đồ thị gồm 2100 đỉnh và cho thực hiện trên 1 bộ xử lý (tuần tự), 2, 4, 6, 8 bộ xử lý thì kết quả được cho ở bảng sau:

Bảng 3.3. Bảng đánh thời gian thực hiện thuật toán song song so với thuật toán tuần tự bài toán Prim 2100 đỉnh

Số bộ xử lý 2 4 6 8

Tốc độ

(Speedup) 1.45 1.73 1.91 2.05

Hình 3.17. Đồ thị biểu diễn sự đánh giá thuật toán song song so với tuần tự bài toán Prim 2100 đỉnh

Nhận xét: từ đồ thị và bảng kết quả trên, chúng ta nhận thấy rằng tốc độ xử lý được tăng lên đáng kể khi xử lý trên 2 bộ xử lý thì thời gian giảm hơn 1,6 lần so với xử lý tuần tự. 1.45 1.73 1.91 2.05 0 0.5 1 1.5 2 2.5 2 4 6 8 Speedu p (t ốc độ) Prim Number of processors (số bộ xử lý) Number of processors (số bộ xử lý)

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 về thuật toán song song và áp dụng cho một số bài toán về đồ thị. Luận văn cũng đã khái quát các khái niệm về thuật toán song song và các vấn đề liên quan đến thuật toán song song, các 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ị trên máy tính, các vấn đề về đường đi, cây bao trùm trên bảng đồ.

Từ các hiểu biết trên luận văn đã nghiên cứu để song song hóa các thuật toán tìm đường đi ngắn nhất (Dijkstra) và cây khung nhỏ nhất (Prim) từ các thuật toán tuần tự truyền thống.

Ngoài ra do còn thiếu kinh nghiệm trong việc phân tích, thiết kế nên kết quả đạt được còn hạn chế.

Qua nghiên cứu đề tài này cũng đã nắm được các kiến thức về xử lý song song, lập trình song song, lý thuyết đồ thị. Tìm hiểu được cách ứng dụng thuật toán song song và đã áp dụng vào một số bài toán cụ thể.

HƯỚNG PHÁT TRIỂN

Sau khi hoàn thành đề tài tôi sẽ tiếp tục nghiên cứu thêm để phát triển đề tài này, cải tiến thêm các thuật toán và áp dụng vào các lĩnh vực như:

⁻ Áp dụng song song hóa các thuật toá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 và áp dụng chuyển các thuật toán tuần tự khác về đồ thị sang thuật toán song song.

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] PGS.TSKH Trần Quốc Chiến, Hồ Xuân Bình, Thuật toá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

[3] PGS.TSKH Trần Quốc Chiến, Giáo trình Lý thuyết đồ thị, Đại học Đà Nẵng 2007. [4] PGS.TSKH Trần Quốc Chiến, Trần Thị Mỹ Dung, “Ứng dụng thuật toán tìm

đường đi ngắn nhất Đa nguồn đích tìm luồng cực đại đa hàng hóa đồng thời”, kỷ 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. [5] Nguyễn Đức Nghĩa, Nguyễn Tô Thành, “ Toán rời rạc “, Nhà Xuất Bản Đại học

quốc gia Hà Nội, 2006

[6] PGS.TS Lê Huy Thập, “ Cơ sở lý thuyết song Song “, Nhà Xuất Bản Thông Tin và Truyền Thông, 2011

[7] Nguyễn Đức Nghĩa, “ Cấu trúc dữ liệu và 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 2008.

[2] A. Grama, A.Gupta, G.Karypis, V.Kumar, “Introduction to Parallel Computing”, 2003

[3] Seyed H. Roosta, Parallel Processing and Parallel Algorithms, Theory and Computation, Springer 1999.

[4] Joseph JáJá, An Introduction to Parallel Algrithms, Addison - Wesley, 1992 [5] Thomas Rauber, Gudula Runger (2013), Parallel Programming: for Multicore and

Cluster Systems, Springer.

[6] JimKeogh(2004),Java Dymistyfied, Chapter 12 Multithreading.

[7] William Gropp et al, MPICH2 User’s Guide Version 1.0.6, Mathematics and ComputerScience Division, Argonne National Laboratory, 2007

Một phần của tài liệu 28032_1712202001913653NGUYENDANGKHOAK34HTTT (Trang 71 - 85)

Tải bản đầy đủ (PDF)

(85 trang)