Kỹ thuật tính toán song song trong một số ứng dụng cơ học Kỹ thuật tính toán song song trong một số ứng dụng cơ học Kỹ thuật tính toán song song trong một số ứng dụng cơ học luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp luận văn tốt nghiệp,luận văn thạc sĩ, luận văn cao học, luận văn đại học, luận án tiến sĩ, đồ án tốt nghiệp
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SỸ KHOA HỌC NGÀNH: CƠ HỌC KỸ THUẬT KỸ THUẬT TÍNH TỐN SONG SONG TRONG MỘT SỐ ỨNG DỤNG CƠ HỌC NGHIÊM BẢO LONG HÀ NỘI 2006 DANH MỤC HÌNH 28TU 28TU Hình 1.1.1: Luật Moore tốc độ xử lý _ U28T Hình 1.1.2: Hiệu tính tốn cấp độ trung tâm tính tốn song song U28 T _ 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU Hình 3.1: Mơ hình máy tính cá nhân gồm xử lý nhớ _ 15 U28T Hình 3.2: Mơ hình máy tính song song nhớ chia sẻ 16 U28T Hình 3.3: Sơ đồ đơn giản kiến trúc máy tính lõi đơi Pentium 16 U28 T Hình 3.4: Sơ đồ kiến trúc máy tính lõi tứ Pentium 17 U28 T Hình 3.5: Mơ hình máy tính song song nhớ phân tán _ 18 U28 T Hình 3.6: Hệ thống mạng kết nối cặp máy tính với 19 U 28T Hình 3.7: Hệ thống mạng dạng lưới hai chiều _ 20 U28 T Hình 3.8: Hệ thống mạng siêu lập phương ba chiều 21 U28 T Hình 3.9: Phân rã theo miền cho tốn không gian ba chiều _ 21 U28 T Hình 3.10: Hệ thống mạng siêu lập phương bốn chiều 22 U28 T Hình 3.11: Hệ thống mạng máy trạm 23 U28 T Hình 3.12: Hệ thống máy tính Beowulf 23 U28 T Hình 3.13: Số lượng cố định tiến trình độc lập _ 24 U28T Hình 3.14: Lượng tiến trình động, độc lập PVM 25 U28 T Hình 3.15: Mơ hình thực tiến trình thu PVM 25 U28T Hình 3.16: Đồng hóa tiến trình theo thuật giải butterfly sử dụng hàm barrier _ 26 U2 8T 28TU 28TU Hình 3.17: Tính tổng 16 số hạng sử dụng giải thuật butterfly 27 U28 T Hình 3.18: Tính tích phân số tổng diện tích hình thang 28 U28 T 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU Hình 3.19: Tính số pi theo cơng thức tổng diện tích hình thang _ 28 U28 T Hình 3.20: Kỹ thuật tính tốn song song pipeline 29 U28T Hình 3.21: Mơ hình hóa tốn giải phương trình truyền nhiệt hai chiều _ 30 U28T Hình 3.22: Mơ hình tính tốn hệ số tăng tốc 31 U28T Hình 4.1: Cấu trúc chương trình sử dụng giao thức MPI 34 U28 T Hình 4.2: Các tập hợp truyền thơng MPI 35 U28T Hình 4.3: Chi tiết mơ hình truyền thông điểm tới điểm 37 U2 8T Hình 4.4: Mơ hình quảng bá truyền thơng 39 U28T Hình 4.5: Mơ hình tổng hợp truyền thơng 40 U28 T Hình 4.6: Mơ hình tập hợp liệu truyền thông _ 41 U28T Hình 4.7: Mơ hình tích hợp quảng bá tổng hợp truyền thông _ 42 U28 T Hình 4.8: Mơ hình phân tán liệu truyền thơng 43 U28 T Hình 4.9: Tổng kết số mơ hình gói truyền thơng _ 44 U28T Hình 5.1: Các thư viện tính tốn song song thơng dụng _ 50 U28T Hình 5.2: Phân tán thành tiến trình độc lập 52 U28 T Hình 5.3: Song song hóa Matlab với giao thức truyền thông điệp MPI 54 U28 T Hình 5.4: Tính tốn hiệu cao qua dịch vụ sử dụng siêu máy tính _ 56 U28 T Hình 5.5: Mơ hình biên dịch mã Matlab thành mã thư viện tính tốn song song 58 U28 T 28TU 28TU Hình 5.6: Lượng băng thơng hệ thống song song sử dụng Matlab 61 U28 T Hình 5.7: Hiệu tăng tốc MatlabMPI so với thuật giải tốt U28 T 62 28TU Hình 5.8: So sánh chi phí lập trình với hiệu tính tốn cơng cụ lập trình song song 63 U28T 28TU 28TU 28TU Hình 6.1: Rời rạc hóa miền khảo sát để giải phương trình vi phân _ 67 U28T Hình 6.2: Sơ đồ tính tốn giải thuật lặp đơn 72 U28T Hình 6.3: Sơ lược bước thiết kế giải thuật song song 73 U28T 28TU 28TU 28TU 28TU Hình 6.4: Phân rã tối đa, tiến trình xử lý nút _ 74 U28T Hình 6.5: Truyền thơng tiến trình láng giềng _ 75 U28T Hình 6.6: Tích tụ tốn vào p tiến trình, tiến trình xử lý m nút 76 U28 T Hình 6.8: Kết tính tốn số vài bước lặp mơ hình tính tốn song song 78 U28 T 28TU 28TU 28TU 28TU 28TU 28TU 28TU 28TU Hình 6.9: Giao diện chương trình điều khiển tiến trình 79 U28 T Hình 6.10: Nhập vào tệp cần thực 80 U28T Hình 6.11: Nhập cấu hình máy phân tán _ 80 U28T Hình 6.12: Nhập cấu hình máy _ 80 U28 T Hình 6.13: Danh sách máy khởi tạo _ 81 U28 T Hình 6.14: Kết sau tính tốn 81 U28T Hình 6.15: Lỗi khơng nhập tệp cần thực 82 U28 T Hình 6.16: Lỗi khơng nhập vào cấu hình máy tính song song 82 U28 T DANH MỤC BẢNG 28TU 28TU 28TU Bảng 3.1: Một số hệ thống siêu máy tính giá rẻ sử dụng 23 U28 T Bảng 4.1: Các kiểu liệu điển hình giao thức MPI _ 35 U28 T Bảng 4.2: Kiểu liệu tương ứng với tham số truyền vào hàm MPI U28 T 36 28TU 28TU Bảng 4.3: Các mơ hình gửi thơng điệp MPI hỗ trợ _ 38 U28 T Bảng 4.4: Các thao tác tổng hợp liệu hàm MPI_Reduce thực 40 U28T 28TU 28TU 28TU 28TU Bảng 5.1: Bảng câu lệnh cung cấp với mpd _ 47 U28 T Bảng 5.2: Bảng lựa chọn cung cấp với smpd 47 U28 T Bảng 5.3: Các lựa chọn với câu lệnh mpiexec _ 48 U28T Bảng 5.4: Bảng phần mềm hỗ trợ phân tán tiến trình độc lập Matlab 53 U28 T 28TU 28TU 28TU Bảng 5.5: Bảng phần mềm hỗ trợ truyền thông điệp Matlab _ 55 U28T Bảng 5.6: Bảng dịch vụ hỗ trợ tính tốn song song Matlab 57 U28T Bảng 5.7: Bảng phần mềm giúp dịch ứng dụng chương trình song song mã Matlab _ 59 U28 T Mở đầu Khoảng hai năm trở lại đây, bắt đầu nghe nhiều đến xử lý lõi kép Intel Bộ xử lý làm kiến trúc máy tính song song thương mại hoá Intel AMD, hai nhà sản xuất chíp lớn Điều chưa cho ta thấy rõ có siêu máy tính tích hợp đến mười ngàn xử lý công ty khổng lồ IBM hay HP thiết kế để thực dự án trọng điểm quốc gia Hiệu ứng nghiên cứu tính tốn song song lan rộng xuất mơ hình tính tốn song song sử dụng mạng máy tính kết nối hàng ngàn xử lý đơn để giải toán Các toán học đại thực ngày nhiều máy tính Phương pháp phần tử hữu hạn, phương pháp số hay phương pháp phần tử biên ngày tăng nhu cầu tính tốn giải toán cỡ lớn (số phần tử lớn) hay toán phi tuyến Nhu cầu tất yếu tìm phương pháp tính tốn có hiệu cao để giải toán Luận văn trình bày kỹ thuật tính tốn song song cách thức sử dụng kỹ thuật giải tốn học sau đưa vào kiến trúc máy tính song song chi phí thấp để thực Luận văn gồm gồm sáu chương, trình bày đánh giá phát triển kỹ thuật tính tốn song song nhu cầu ngày lớn việc ứng dụng tính tốn song song vào tốn kỹ thuật nói chung tốn học nói riêng Ngồi luận văn mơ tả chi tiết đầy đủ kỹ thuật tính toán song song từ đơn giản đến phức tạp Ngoài việc xây dựng thư viện mơ đun ma trận sử dụng giải thuật tính tốn song song, luận văn cịn giải tốn học cụ thể, tốn áp dụng vào thực tiễn hay phát triển thêm để tận dụng triệt để lợi tính tốn song song hay tận dụng sở hạ tầng cơng nghệ thơng tin có Ln văn có mục đích phát triển tính tốn song song theo hướng sử dụng Matlab song song hoá để giải toán kỹ thuật Chương trình bày sơ lược nhu cầu tính tốn song song giới nay, qua mô tả cần thiết áp dụng kỹ thuật tính tốn song song vào tốn thực tế cấp thiết Chương hai trình bày tốn dao động bản, phân tích phương pháp ma trận dạng riêng quen thuộc để tìm yếu tố có khả phân rã, qua tìm phương pháp áp dụng tính tốn song song vào tốn Để hiểu khái niệm sử dụng kỹ thuật sẵn có, chương ba, chương bốn, chương năm trình bày kiến trúc, mơ hình lập trình tài ngun tính tốn song song sẵn có Phần chủ yếu trình bày thơng tin để lập trình tính tốn song song theo tiêu chuẩn hành trào lưu có Luận văn mơ phần số ví dụ tính tích phân số, nhân ma trận với véc tơ, nhân hai ma trận giải phương trình truyền nhiệt hai chiều Chương sáu trình bày cụ thể cách giải toán nêu chương Các bước từ chọn cấu hình phần cứng, thiết kế cài đặt chương trình trình bày kỹ Chương tổng hợp sử dụng lý thuyết tài nguyên năm chương trước Ngồi chương sáu trình bày bảng điều khiển lập trình để chạy ứng dụng toàn luận văn CHƯƠNG NHU CẦU TÍNH TỐN SONG SONG TRONG KHOA HỌC TÍNH TỐN VÀ CƠ HỌC 1.1 Định luật Moore phát triển tốc độ xử lý Ngay từ ngày đầu trình phát triển máy tính điện tử, năm 1965, Gordon Moore đưa định luật nêu tốc độ xử lý máy tính tăng lên gấp đơi sau năm Đây luật Moore tiếng Số lượng đèn điện tử Bộ xử lý Pentium® Bộ xử lý Pentium® III Bộ xử lý Pentium® II Bộ xử lý Pentium® Bộ xử lý 486TM DX LUẬT MOORE Bộ xử lý 386TM Hình 1.1.1: Luật Moore tốc độ xử lý Ban đầu máy tính điện tử tỏ mạnh giải tốn kỹ thuật đương thời, nhiên nhu cầu tính toán phát triển nhanh tốc độ phát triển vi xử lý theo định luật Moore Gần sau ý tưởng tính tốn song song xuất hiện, nhiên phải đến thập niên 90 ứng dụng tính tốn song song tỏ hiệu siêu máy tính đắt tiền hãng máy tính tiếng IBM hay HP Đến thời điểm số lượng đèn điện tử tích hợp chíp điện tử gần bão hồ (kích thước chíp điện tử đạt đến 60 nanomet có khả khó phát triển thêm nhà cung cấp chíp bắt đầu xu hướng tích hợp nhiều lõi xử lý xử lý Intel dual core hay AMD dual core Rõ ràng ta thấy xu hướng áp dụng tính tốn song song xu hướng khó đảo ngược 1.2 Trong vật lý học Rất nhiều tốn vật lý u cầu lượng tính tốn lớn, điển hình tốn mơ hệ nhiều vật không gian Mỗi vật chịu tương tác lực hấp dẫn vật thể lại khơng gian Do có N vật ta phải tính tới N phép tính cho vật Trong ngân hà có 10 11 ngơi sao, P P P P giả sử phép tính tiêu tốn 1μs phải tới 10 năm để tính tốn Đã P P có cơng trình nghiên cứu áp dụng tính tốn song song thành cơng có kết bước đầu tốn Đơn giản hơn, tốn mơ rơ bốt có bậc tự lớn yêu cầu lượng tính tốn lớn để đảm bảo thời gian thực u cầu tính tốn song song lớn Trong phương pháp số toán yêu cầu lượng tính tốn lớn giải hệ phương trình đại số tuyến tính cỡ lớn, giải hệ phương trình đại số phi tuyến, giải phương trình vi phân tuyến tính phi tuyến cần ứng dụng tính toán song song Các toán phương pháp phần tử hữu hạn hay phần tử biên địi hỏi lượng lớn tính tốn số phần tử toán lớn, làm cho số ẩn cần giải tăng theo Trên ứng dụng áp dụng tính tốn song song theo tầm hiểu biết tác giả, nhiều ứng dụng khác cơng nghệ nano, hố học, y tế, lượng, quân đòi hỏi kỹ thuật tính tốn hiệu cao Bằng chứng phát triển siêu máy tính quan quốc phòng Mỹ mạnh mẽ Sau mơ hình phát triển tính tốn song song Mỹ Trung tâm nghiên cứu quốc gia Viện nghiên cứu lớn Bộ phận nhóm nghiên cứu Hình 1.1.2: Hiệu tính tốn cấp độ trung tâm tính tốn song song Trong flops phép tính thực giây - 1Teraflops ≈ 10 flops P P - 1Petaflops ≈ 10 12 flops P P Máy tính cá nhân mạnh tính khoảng 10 flops P P 72 Chú ý phép lặp hội tụ khơng, luận văn không đề cập rõ hội tụ phép lặp mà nêu thuật giải để giải tốn Lần lặp Tính tốn nút i, bước k q i( k +1) q (i k+1 q (i−1) k k bi f i ( k ) h i ( k ) q i−1 − q i+1 =− gi gi gi k +1) q i(+1) k x x i-1 i i+1 n-2 n-1 x Thời gian Giá trị q node tương ứng tính tốn xong Giá trị q node tương ứng chưa tính tốn Điều kiện q(t = 0) = a q(t = T) = b Giá trị q(0) khởi tạo Hướng liệu cần thiết tới node tính tốn Hướng liệu cần thiết tới node chưa tính tốn Hình 6.2: Sơ đồ tính tốn giải thuật lặp đơn Trong thuật giải tuần tự, máy tính xử lý lần lặp, lần lặp tính tốn cho nút từ trái sang phải Do bước lặp, thuật giải sử dụng n đơn vị tính tốn Nhận xét kết tính tốn lớp k + 1phụ thuộc vào kết lớp k nên ta khơng phân rã theo lớp Nhưng q trình cập nhật nút lớp lại độc lập với nên ta hồn tồn phân rã toán theo hướng 73 để thiết kế thuật giải song song cho toán Phương pháp phân rã đặc biệt hiệu số lượng nút lớp lớn, phù hợp với toán giải phương trình vi phân yêu cầu độ xác cao (bước thời gian nhỏ → số lượng phương trình lớn) 6.2.2 Giải thuật song song a) Sơ lược thiết kế giải thuật song song Hình 6.3: Sơ lược bước thiết kế giải thuật song song 74 Thiết kế giải thuật song song cho toán (6.9) b) Bước Phân rã Phân rã tốn giải hệ phương trình ba đường chéo q trình tìm tất yếu tố độc lập, thực đồng thời toán Như phân tích sơ đồ tính tốn tuần tự, ta cập nhật song song tất nút lớp Trong tính tốn, tiến trình phải gửi nhận liệu từ tiến trình bên cạnh Trong bước ta có n tiến trình, xử lý n nút q (i k +1) q (i k +1) l l l (k) 1 l n–1 q (i+1) k q i−1 l Số thứ tự tiến trình Số thứ tự nút Hình 6.4: Phân rã tối đa, tiến trình xử lý nút Theo sơ đồ, nút thứ i, để cập nhật giá trị bước lặp thứ k + 1, ban đầu tiến trình thứ i nhận giá trị q (i−1) q (i+1) từ hai tiến trình bên cạnh Sau tính k k tốn tiến trình gửi kết tính tốn cho hai tiến trình láng giềng để làm liệu thực bước lặp Bước Truyền thông Truyền thông thuật giải truyền thơng cục bộ, tiến trình truyền thơng điệp với hai tiến trình láng giềng Tiến trình thứ i thực hai cặp truyền thơng: 75 - Nhận q (i−1) q (i+1) từ tiến trình thứ i – i + k k - Gửi q (i k +1) sang hai tiến trình thứ i – i + Chú ý thời điểm tiến trình thứ i phải nhận gửi hai thơng điệp từ hai tiến trình nên ta phải đánh thẻ thông điệp gửi nhận khác Thẻ i – Thẻ i l Tiến trình i – l Thẻ i Thẻ i + Tiến trình i l Tiến trình i + Hình 6.5: Truyền thơng tiến trình láng giềng Bước Tích tụ Phân rã thành n tiến trình phân tích khơng khả thi chưa tính tốn đến chi phí truyền thơng Tại bước lặp ta đơn vị tính tốn lại tiêu tốn tới 4n đơn vị truyền thơng Mặt khác đơn vị truyền thơng nói chung lớn đơn vị tính tốn kể sở mạng tốc độ cao (ví dụ mạng gigabit) Do ta phải giảm thời gian truyền thơng tăng thời gian tính tốn cho đạt giá trị tối ưu Việc tự động tìm giá trị tối ưu trình cân tải, bước lặp số lượng tính tốn khác việc tìm giá trị tối ưu tính tốn truyền thơng cân tải động Kỹ thuật cân tải động kỹ thuật phức tạp phụ thuộc vào nhiều yếu tố số lượng tính tốn bước lặp hay cấu hình máy tính cụ thể Trong phạm vi luận văn không đề cập tới kỹ thuật Ta thực tích tụ tốn sau: Sử dụng p tiến trình (giả sử n chia hết cho p n = m ) tiến trình p thực tính tốn m nút Khi chi phí tính tốn nút m chi phí truyền thơng nút 2p Vậy lượng tính tốn giảm p lần 76 so với giải thuật lại phát sinh lượng truyền thơng 2p đơn vị Để tìm số lượng tiến trình tối ưu ta thử giá trị p hệ máy tính cụ thể Tiến trình: rank – 1 Tiến trình: rank k) q (( rank −1)m −1 m-1 m-1 ) q (( rank −1)m m-1 ) q (rank.m k k rank.m-1 (rank – 1)m – (rank – 2)m Tiến trình: rank + k) q (rank.m −1 (rank – 1)m (rank + 1)m – Số thứ tự nút rank.m Hình 6.6: Tích tụ tốn vào p tiến trình, tiến trình xử lý m nút Mỗi tiến trình tính tốn m nút Trong tiến trình nút địa phương đánh số thứ tự từ ÷ m – Các nút từ tới m – tính độc lập với tiến trình khác liệu để tính tốn nằm nhớ địa phương tiến trình Nhưng hai nút ngồi lại u cầu liệu giá trị nút kề tiến trình láng giềng bước lặp trước nên để tính hai đầu mút tiến trình ta buộc phải thực truyền thơng Ví dụ tiến trình ) ) (k) ) thứ i phải thực nhận q (( krank , q (rank.m thực gửi q (rank.m −1 , q ( rank −1)m −1)m −1 k k sơ đồ tính Chú ý hai tiến trình p – phải truyền thông lần nút trái phải tiến trình p – điều kiện ban đầu tốn khơng đổi khơng phải thực truyền thơng Tuy nhiên để đồng truyền thơng ta coi tiến trình p – thực đơn vị thời gian truyền thơng Nếu n chia p có dư phần dư số lượng nút tiến trình thứ p ta thêm tiến trình để tính tốn Và tiến trình phải đồng truyền thơng tính tốn với tiến trình cịn lại 77 Bước Ánh xạ Từ đầu, luận văn ln đặt tiến trình vào xử lý (coi lực xử lý ổn định) Việc cân tải tĩnh hay động cho toán phụ thuộc nhiều vào cấu hình mạng máy tính cài đặt thuật giải nên luận văn không đề cập Tuy nhiên thuật giải thiết lập để chạy với số xử lý nhỏ số tiến trình với điều kiện số tiến trình phải hai lũy thừa số xử lý 6.3 Cài đặt thuật toán song song ví dụ cụ thể Bài tốn cài đặt chuẩn MPI2.0, sử dụng ngôn ngữ C++ hệ điều hành Windows Kết thử nghiệm một, hai ba xử lý Mô hình lập trình MPMD Chúng ta minh họa chương trình ví dụ sau Giải phương trình q−q = t ≤ t ≤1 (6.17) Hàm g(t) = t Hệ số c = –1 Điều kiện: q ( t =0 ) =a =0 q ( t= 1)= b= Chia đoạn [0, 1] thành 12 nút hai nút hai biên: n = 12 Sử dụng tiến trình: numprocs = T Bước thời gian: h =∆t = = n + 13 Số nút tiến trình m = (6.18) 78 Nghiệm giải tích phương trình sinh t et e− t = −t − −t sinh1 e − e −1 e − e −1 q= (t) (6.19) Kết tính thuật tốn song song Tiến trình Tiến trình Tiến trình Tiến trình 3 3 q0 q1 q2 q3 q4 q5 q6 q7 q8 q9 q10 q11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 h KẾT QUẢ TÍNH TỐN SỐ 1,1398 2,2409 3,2642 4,1702 4,9189 5,4690 5,7785 5,8035 5,4987 4,8168 3,7083 2,1209 k = 150 1,139 2,239 3,261 4,167 4,915 5,465 5,774 5,799 5,496 4,814 3,707 2,120 k = 100 1,128 2,218 3,322 4,130 4,875 5,423 5,732 5,761 5,462 4,788 3,689 2,111 k = 50 1,003 1,980 2,896 3,715 4,417 4,944 5,254 5,326 5,086 4,483 3,483 2,009 k = 25 0,686 1,371 2,033 2,645 3,233 3,700 4,005 4,184 4,096 3,680 2,941 1,738 Điều kiện k Nghiệm ≈ 0 0 0 0 0 Hình 6.8: Kết tính tốn số vài bước lặp mơ hình tính tốn song song 79 6.4 Chương trình hỗ trợ tính tốn song song Windows Chương trình thực luận văn quản lý số lượng tiến trình xử lý tham gia vào việc tính tốn tốn Chương trình viết Microsoft Visual Studio Net 2003 sử dụng lớp Microsoft (MFC) Chương trình hỗ trợ tốt giao diện tiếng Việt với số thông báo người sử dụng nhập sai thơng số Hình 6.9: Giao diện chương trình điều khiển tiến trình 6.4.1 Khởi tạo chương trình Giao diện chương trình thân thiện, người sử dụng cần nhập tệp cần thực cách nhấp chuột vào biểu tượng thư mục hay chép đường dẫn vào hộp sau 80 Hình 6.10: Nhập vào tệp cần thực Sau người sử dụng nhập vào máy cụ thể tên máy số tiến trình máy Nếu máy mạnh ta sử dụng nhiều tiến trình hơn, tuỳ thuộc vào cấu hình máy cụ thể Hình 6.11: Nhập cấu hình máy phân tán Người sử dụng nhấp chuột vào nút “Thêm” để thêm máy, hộp thoại mở sau Hình 6.12: Nhập cấu hình máy 81 Người sử dụng nhập vào tên máy số tiến trình chạy máy sau nhấp vào nút “Thêm” hình Số tiến trình máy sử dụng để tìm giá trị tối ưu lượng tính tốn lượng truyền thơng máy Do muốn tìm số tiến trình tốt phải nhập vài lần để tìm trường hợp tốt Kết nhập người sử dụng đưa vào ô chữ hình vẽ Hình 6.13: Danh sách máy khởi tạo Người sử dụng nhập lại cấu hình máy phân tán cách nhấp vào nút “ơXố sau nhập lại Kết thu hộp thoại sau nhấp chuột vào nút “Thực hiện” Hình 6.14: Kết sau tính tốn 82 6.4.2 Một số lỗi chạy chương trình - Lỗi khơng nhập vào tệp thực hiện, chương trình ghi thơng báo lỗi Hình 6.15: Lỗi khơng nhập tệp cần thực Để sửa lỗi bạn phải nhập đường dẫn cách nhấp chuột vào biểu tượng thư mục sau tìm tệp cần thực - Lỗi không nhập vào xử lý nào, chương trình ghi thơng báo lỗi Hình 6.16: Lỗi khơng nhập vào cấu hình máy tính song song Chương trình mặc định coi máy tính chạy chương trình máy tính sử dụng để tính tốn tốn chương trình khơng xác định số tiến trình chạy máy nên buộc người sử dụng phải nhập thông tin cần thiết 83 KẾT LUẬN Luận văn trình bày hướng tới hướng phát triển cho kỹ thuật tính tốn song song sử dụng mơi trường mạng LAN kết nối bó máy tính mạnh mơi trường Matlab, giao thức MPI để giải phần lớn toán với hiệu hẳn phương pháp có Nếu việc song song hố Matlab thực tốt tương lai giải thêm nhiều tốn kỹ thuật địi hỏi độ phức tạp tính tốn cao Matlab mơi trường tính tốn đơn giản thơng dụng khoa học tính tốn Xây dựng kiến trúc máy tính phần mềm hệ thống để thực có hiệu tốn dựa theo giải thuật song song tốn khó địi hỏi chi phí đầu tư lớn hiệu mang lại to lớn Ban đầu ta sử dụng thư viện luận văn hệ thống mạng LAN tốc độ cao để thực tốn khơng lớn Hiệu cao số lượng máy tính hiệu máy tính mạnh Việc thiết kế thuật giải song song cho toán phức tạp Trong tương lai, ta cần giải sớm tốn mơ phỏng, điều khiển thời gian thực rơ bốt chuỗi mở có bậc tự lớn 6, toán dao động phi tuyến 84 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Lê Đăng Hưng, Tạ Tuấn Anh, Nguyến Hứu Đức, Nguyễn Thanh Thủy (chủ biên) “Lập trình hướng đối tượng với C++” , NXB Khoa học kỹ thuật, 1999 [2] Nguyễn Văn Khang, “Dao động kỹ thuật”, NXB Khoa học kỹ thuật, 2001 [3] Nghiêm Bảo Long, “Đồ án tốt nghiệp đại học”, Bộ môn Cơ học ứng dụng, Đại học Bách Khoa Hà Nội, 2004 [4] Đinh Văn Phong, “Phương pháp số học”, NXB Khoa học kỹ thuật, 2000 [5] Nguyễn Thanh Thuỷ (chủ biên), Nguyễn Quang Huy, Nguyễn Hữu Đức, Đinh Lan Anh, “Nhập môn hệ điều hành LINUX”, NXB Khoa học kỹ thuật, 2000 Tiếng Anh [6] Al Geist, Adam Beguelin, Jack Doongarra, Weicheng Jiang, Robert Manchek, Vaidy Sunderam, “PVM – Parallel Virtual Machine: A Users’ Guide and Tutorial for Networked Parallel Computing”, The MIT Press, Cambridge, Massachusetts, London, England, 1994 http://www.netlib.org/pvm3/book/pvm-book.html [7] Barry Wilkinson, “Parallel Programming Techniques and Applications Using Networked Workstations and Parallel Computers”, NXB Prentice Hall, 2002 [8] David B Skillicorn, Domenico Talia, “Models and Languages for Parallel Computation”, 1996 85 [9] Grewal, “Numerical Methods in Engineering & Science”, Khanna Publishers, 2000 [10] Ian Foster, “Designing and Building Parallel Programs”, Addition Wesley Publishing Company, 1994 [11] Jeremy Kepner, “Parallel Parallel Programming with MatlabMPI”, MIT, 2006 [12] C Moler, “Why there isn't a parallel MATLAB”, Mathworks inc, 1995 [13] Michael J.Quinn, “Parallel Computing: Theory and Practice”, McGraw-Hill [14] Peter S Pacheco, “Users’ Guide to MPI”, Department of Mathematics, University of San Francisco, 1998 [15] Yukiya Aoyama, Jun Nakano, “Practical MPI Programming”, 1999 http://www.redbooks.ibm.com PHỤ LỤC Biên dịch chương trình MPICH Windows MPICH2 yêu cầu cài đặt Net Framework 1.1.4322 Yêu cầu cài đặt Net Framworks 1.1 cài đặt MPICH Nếu theo đường dẫn hộp ta gặp vấn đề tải nhầm Net Framework 2.0 Để tải Net Framework 1.1.4322 theo yêu cầu ta sử dụng đường dẫn sau: http://www.microsoft.com/downloads/details.aspx?FamilyId=262D25E3F589-4842-8157-034D1E7CF3A3&displaylang=en Thêm giá trị “C:\MPICH2\bin” vào biến môi trường path Loại bỏ tường lửa cho ứng dụng smpd chương trình cần chạy Khi biên dịch ứng dụng sử dụng chương trình MPICH ngơn ngữ C++ ta hay gặp lỗi sau SEEK_SET is #defined but must not be for the C++ binding of MPI Lỗi xảy stdio.h giao thức C++ MPI sử dụng SEEK_SET, SEEK_CUR, and SEEK_END Để loại lỗi ta thêm #undef SEEK_SET #undef SEEK_END #undef SEEK_CUR vào trước dòng #include “mpi.h” ... tính tốn song song theo hướng sử dụng Matlab song song hoá để giải toán kỹ thuật Chương trình bày sơ lược nhu cầu tính tốn song song giới nay, qua mơ tả cần thiết áp dụng kỹ thuật tính toán song. .. triển kỹ thuật tính tốn song song nhu cầu ngày lớn việc ứng dụng tính tốn song song vào tốn kỹ thuật nói chung tốn học nói riêng Ngồi luận văn mơ tả chi tiết đầy đủ kỹ thuật tính tốn song song từ... sử dụng giải thuật tính tốn song song, luận văn cịn giải tốn học cụ thể, tốn áp dụng vào thực tiễn hay phát triển thêm để tận dụng triệt để lợi tính toán song song hay tận dụng sở hạ tầng cơng