Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 61 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
61
Dung lượng
692,49 KB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN NGÔ THỊ MINH NGUYỆT MỘT SỐ PHƯƠNG PHÁP THIẾT KẾ THUẬT TỐN CƠ BẢN TRONG TÍNH TỐN SONG SONG VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC Hà Nội- Năm 2014 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN NGÔ THỊ MINH NGUYỆT MỘT SỐ PHƯƠNG PHÁP THIẾT KẾ THUẬT TOÁN CƠ BẢN TRONG TÍNH TỐN SONG SONG VÀ ỨNG DỤNG Chuyên ngành : Cơ sở toán cho tin học Mã số : 60 46 01 10 LUẬN VĂN THẠC SĨ KHOA HỌC NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS NGUYỄN HỮU ĐIỂN Hà Nội - Năm 2014 LỜI CẢM ƠN Trong q trình tìm hiểu nghiên cứu để hồn thành luận văn, tơi gặp khơng khó khăn, lúc vậy, tơi ln nhận động viên, khích lệ thầy giáo, PGS TS Nguyễn Hữu Điển Thầy tận tình hướng dẫn, định hướng cho tơi phương pháp nghiên cứu khoa học hỗ trợ tơi việc tìm tài liệu Để có kết luận văn này, xin gửi lời cảm ơn sâu sắc đến thầy giáo, PGS TS Nguyễn Hữu Điển, Trung Tâm Tính Tốn Hiệu Năng Cao trường Đại học Khoa học Tự nhiên – Đại học Quốc gia Hà Nội Tôi xin gửi lời cảm ơn đến thầy cô dạy dỗ ân cần thời gian học cao học trường Đại học KHTN - ĐHQGHN Tôi xin cảm ơn thầy cơ, anh chị Trung Tâm Tính Toán Hiệu Năng Cao tạo điều kiện giúp đỡ tơi nhiều việc hồn thành luận văn Cuối tơi xin cảm ơn gia đình, người thân bạn người bên cạnh, động viên khích lệ tơi để có kết ngày hôm Hà Nội, ngày 29 tháng năm 2014 Người thực hiện, học viên Ngô Thị Minh Nguyệt Lớp Cao học BĐT 2008 – 2010 MỤC LỤC Trang Trang phụ bìa Mục lục Danh mục ký hiệu Danh mục bảng Danh mục hình vẽ Danh mục thuật toán MỞ ĐẦU Chương – TÍNH TỐN SONG SONG 1.1 Tổng quan xử lý song song 1.2 Các mơ hình lập trình song song 1.3 1.4 1.2.1 Mơ hình chia sẻ nhớ 1.2.2 Mơ hình luồng 1.2.3 Mơ hình truyền thơng điệp 10 1.2.4 Mơ hình phân hoạch liệu 11 Thiết kế đánh giá thuật toán song song 11 1.3.1 Định nghĩa thuật toán song song 11 1.3.2 Các nguyên lý thiết kế thuật toán song song 12 1.3.3 Các cách tiếp cận thiết kế thuật toán song song 13 1.3.4 Phân tích đánh giá thuật tốn song song 13 Mơ hình lập trình truyền thơng điệp – MPI song song 17 1.4.1 Giới thiệu mơ hình truyền thơng điệp 17 1.4.2 Lập trình truyền thông điệp - MPI 18 1.4.3 Cấu trúc chương trình MPI 21 Chương – SONG SONG HĨA THUẬT TỐN TÌM XÂU CON CHUNG DÀI NHẤT 22 2.1 Đặt vấn đề 22 2.2 Bài tốn tìm xâu chung dài 23 2.3 Thuật toán quy hoạch động giải tốn tìm xâu chung dài hai xâu 24 2.4 Phương pháp phần tử trội toán xâu chung dài 28 2.5 Phương pháp song song toán xâu chung dài 33 2.6 Kết luận chương 40 Chương – KẾT QUẢ THỰC NGHIỆM 41 3.1 Bộ liệu 41 3.2 Môi trường chạy 42 3.3 Kết chạy thực nghiệm 43 KẾT LUẬN 50 TÀI LIỆU THAM KHẢO 51 BẢNG THUẬT NGỮ VIẾT TẮT Thuật ngữ Tiếng Anh Nghĩa tiếng Việt CPU Central Processing Unit Bộ xử lý trung tâm DNA Deoxyribo nucleic acid Axít deoxyribosenucleic HPC High Performance Computing Tính tốn/máy tính hiệu cao LCS Longest Common Subsequence Dãy chung dài MIMD Multiple Instruction multiple Data Đa luồng lệnh đa luồng liệu MISD Multiple Instruction Simple Data Đa luồng lệnh đơn luồng liệu MPI Message Passing Interface Giao diện truyền thông điệp NUMA Non-Uniform Memory Access Truy cập nhớ không đồng thời RNA Ribo nucleic acid Axít ribonucleic SIMD Simple Instruction Multiple Data Đơn luồng lệnh đa luồng liệu SISD Simple Instruction simpleData Đơn luồng lệnh đơn luồng liệu TCP Transmission Control Protocol Giao thức điều khiển truyền thông UDP User Datagram Protocol Giao thức gói người dùng UMA Uniform Memory Access Truy cập nhớ đồng thời DANH MỤC CÁC BẢNG Trang Bảng 2.1 Độ dài xâu ký tự số liệu tin sinh học 24 Bảng 2.2 Ví dụ điểm trội ma trận phương án 29 Bảng 2.3 Ví dụ việc xây dựng lại ma trận phương án với phần tử trội 31 Bảng 2.4 Ví dụ việc tìm phần tử trội độc lập hai vùng khác 33 Bảng 2.4 Chia vùng tìm kiếm xác định vùng tìm kiếm đồng thời 34 Bảng 3.1 Dữ liệu thực nghiệm thuật toán 41 Bảng 3.2 Bảng thống kê loại amino axit [28] 42 Bảng 3.3 Số phần tử trội trung bình số xâu khác bảng chữ ký tự độ dài xâu 64: 43 Bảng 3.4 Số phần tử trội trung bình số xâu khác bảng chữ 20 ký tự độ dài xâu 64: 44 Bảng 3.5 Thời gian chạy thuật toán với độ dài xâu 64 bảng chữ ký tự (giây) 44 Bảng 3.6 Thời gian chạy thuật toán với độ dài xâu 64 bảng chữ 20 ký tự (giây): 45 Bảng 3.7 Thời gian chạy thuật toán với độ dài xâu 128 bảng chữ ký tự (giây): 46 Bảng 3.8 Thời gian chạy thuật toán với độ dài xâu 128 bảng chữ 20 ký tự (giây): 46 DANH MỤC CÁC HÌNH VẼ Trang Hình 1.1 Mơ tả kiến trúc Von Neumann Hình 1.2: Mơ hình máy MIMD Hình 1.3: Mơ hình máy tính SIMD Hình 1.4: Mơ hình máy MIMD Hình 1.5: Máy tính chia sẻ nhớ Hình 1.6: Máy tính nhớ phân tán Hình 1.7: Mơ hình luồng 10 Hình 1.8: Mơ hình truyền thông điệp 10 Hình 1.9: Mơ hình lập trình song song liệu 11 Hình 1.10 Luật Amdahl 16 Hình 1.11: Sự trao đổi thơng điệp hai tiến trình 17 Hình 1.12: Cấu trúc chương trình MPI 21 Hình 3.1 Thời gian chạy thuật tốn với xâu độ dài 64 bảng chữ 20 ký tự 47 Hình 3.2 Thời gian chạy thuật toán với xâu độ dài 4096 bảng chữ 20 ký tự 47 Hình 3.3 Hệ số tăng tốc thuật toán với xâu độ dài 4096 bảng chữ 20 ký tự 48 Hình 3.4 Hệ số tăng tốc thuật toán với xâu độ dài 64 bảng chữ 20 ký tự 48 Hình 3.5 Hệ số hiệu thuật toán với xâu độ dài 64 bảng chữ 20 ký tự 49 DANH MỤC CÁC THUẬT TOÁN Trang Thuật tốn 2.1 Thuật tốn tìm dãy chung dài 26 Thuật toán 2.2 Thuật toán in dãy chung dài 27 Thuật toán 2.3 Thuật tốn tìm phần tử trội 32 Thuật tốn 2.4 Thuật tốn song song tìm xâu chung dài 38 (0,1) (1,0) Cứ tiếp tục vậy, bước có khối độc lập (2,0), (1,1) (0,2); bước (3,0), (2,1), (1,2), (0,3); bước (3,1), (2,2), (1,3); bước (3,2) (2,3) bước (3,3) Tuy tốn phân tích số hốn vị toán NP-Hard, nhiên số xâu ký tự so sánh không lớn (