Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 37 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
37
Dung lượng
308,04 KB
Nội dung
Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP.HCM KHOA: KHOA HỌC MÁY TÍNH BÀI THU HOẠCH MÔN: ĐIỆN TOÁN LƯỚI VÀ ĐÁM MÂY Đề tài: NGHIÊN CỨU MÔI TRƯỜNG CHỐNG LỖI MPICH-V TRONG HỆ THỐNG TÍNH TOÁN SONG SONG GVHD : PGS.TS. NGUYỄN PHI KHỨ HVTH : Phan Trọng Nghĩa HVTH: Phan Trọng Nghĩa 1 Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song LỜI CẢM ƠN Đầu tiên, người thực hiện xin chân thành cảm ơn PGS.TS. Nguyễn Phi Khứ, Thầy đã tận tình giảng dạy và truyền đạt những kiến thức vô cùng bổ ích giúp bài thu hoạch này được hoàn thành đúng thời hạn. Thầy đã giới thiệu đến học viên những kiến thức bổ ích về Grid computing, Cloud computing, qua đó học viên đã nắm bắt được những kiến thức nền tảng và áp dụng xây dựng những ứng dụng cụ thể vào công việc hiện tại. Xin chân thành cảm ơn quý thầy cô ở phòng đào tạo Sau đại học đã tạo những điều kiện thuận lợi nhất trong học tập cũng như công tác đào tạo giúp hoàn thành bài thu hoạch này. Cảm ơn các anh chị học viên cùng khóa và các anh chị học viên những khóa trước đã cung cấp những nguồn tài liệu phong phú góp phần quan trọng trong việc hoàn thành bài thu hoạch này. HVTH: Phan Trọng Nghĩa 2 Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song Về bài thu hoạch, người thực hiện đã cố gắng vận dụng những kiến thức đã học được ở lớp, cái tài liệu liên quan do thầy và các bạn cung cấp cũng như những tài liệu đã tìm kiếm được để tìm hiểu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song . Kính mong thầy cô cùng các bạn góp ý thẳng thắn giúp bài thu hoạch được hoàn thiện hơn.LỜI NÓI ĐẦU Giao thức phục hồi lỗi dùng ghi lại thông điệp là giải pháp tốt cho việc xây dựng các ứng dụng có khả năng chống lỗi. Nhiều giao thức kiểu này được sử dụng trong thực tiễn cho các ứng dụng đòi hỏi độ tin cậy cao. Giao thức này tồn tại 2 vấn đề sau: thứ nhất, giao thức khôi phục đã có chỉ hỗ trợ các giao thức phục hồi đơn tiến trình; thứ hai, hiệu năng giao thức này trong thực tế không cao. Để giải quyết vấn đề trên môi trường truyền thông chống lỗi MPICH-V sẽ được sử dụng. Môi trường này được phát triển tại trung tâm nghiên cứu tại truờng đại học LRI. Kiến trúc MPICH-V dựa trên nền điều khiển thống nhất các sự kiện không xác định (các sự kiện không xác định -theo định nghĩa là các sự kiện chuyển giao thông điệp giữa các tiến trình). Kiến trúc này cho phép mô tả giao thức phục hồi như một chương trình điều khiển sự kiện. MPICH-V cài đặt dễ dàng, tính mở đối với các hệ thống khác với chi phí lập trình cho việc tích hợp không lớn. MPICH-V tập trung vào 2 vấn đề hiệu năng căn bản: thứ nhất, khi nghiên cứu hiệu năng khôi phục của giao thức ghi lại thông điệp cho thấy giao thức này thường không đảm bảo giảm lượng chi phí trong quá trình giải phóng lỗi, khôi phục nhanh và ngừa lỗi (đây là nhược điểm lớn trong các hệ thống chống lỗi); thứ hai, việc đánh giá hiệu năng của giao thức lưu ảnh tiến trình (vấn đề truyền thông gây ra bởi việc lưu trữ các ảnh tiến trình -checkpointing induce communication- CIC) cho thấy các giao thức CIC trong thực tế hiệu quả thấp. Môi trường chống lỗi MPICH-V đang phát triển các giao thức mới có khả năng giảm chi phí kể trên. HVTH: Phan Trọng Nghĩa 3 Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song HVTH: Phan Trọng Nghĩa 4 Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song MỤC LỤC DANH MỤC HÌNH Hình 1: Mô hình môi trường truyền thông chống lỗi 5 HVTH: Phan Trọng Nghĩa 5 NỘI DUNG I. Giới thiệu Cuộc cách mạng tính toán những năm 90 coi các bó máy trạm tính toán dùng thay thế cho các máy mainframe như là tư tưởng cơ bản cho hạ tầng tính toán. Với môi trường này, ta có thể dễ dàng phát triển các thế hệ ứng dụng phân tán trong nhiều lĩnh vực như: vũ trụ học (mô phỏng các vụ va chạm trong dải ngân hà); hoá học (xác định thành phần cấu trúc điện tử trong hạt nhân); vật lý (tính toán độ linh động của chất lỏng); bảo mật máy tính (bẻ hệ thống mã hoá RSA); và khí tượng học (dự báo thời tiết). Các ứng dụng này yêu cầu chạy dài ngày, tính toán lượng lớn các công việc, được cấu trúc thành nhóm tiến trình trao đổi với nhau để thực thi trên các máy tính khác nhau nằm trong trạm tính toán. Để chống lỗi cho ứng dụng, các giao thức khôi phục như lấy ảnh tiến trình (checkpointing) và ghi lại thông điệp (message logging) đem lại nhiều triển vọng. Các giao thức khôi phục cũng tương đối dễ cài đặt. Chúng tuân theo mô hình lập trình theo kiểu gửi/nhận (send/receive). Đây là mô hình chung cho các ứng dụng phân tán theo kiểu truyền thông điệp. Do phải cài đặt nhiều, các giao thức khôi phục này rất ít được sử dụng để xây dựng các ứng dụng yêu cầu độ tin cậy cao. Điều này do 2 nguyên nhân sau: • Tích hợp hiệu quả các giao thức khôi phục với một ứng dụng sẽ rất phức tạp. Một vài giao thức cài đặt hiện nay chỉ hỗ trợ giao thức phục hồi đơn tiến trình. Bên cạnh đó là giới hạn tương thích của các giao thức với các nhu cầu cần thiết trong các ứng dụng khác nhau. Vì vậy, các nhà phát triển ứng dụng phải lo lắng về sự phức tạp trong việc xây dựng các ứng dụng của họ. Họ cũng sẽ phải hiểu thế nào là chống lỗi trong môi trường phân tán. • Hiệu năng các giao thức phục hồi trong thực tế không được đánh giá cặn kẽ. Đề xuất cho các giao thức mới chủ yếu tập trung thiết kế giao thức, trong khi cung cấp rất ít đánh giá để thể hiện ưu việt do cách tiếp cận mới mang lại. Nên nhà phát triển ứng dụng có rất ít các đề xuất lựa HVTH: Phan Trọng Nghĩa 6 chọn từ các giao thức khôi phục, để tìm ra giao thức tốt nhất phù hợp với các đặc điểm riêng của từng ứng dụng chuyên biệt. Đồ án này sử dụng MPICH-V. Ưu điểm của môi trường này là tính mở để cài đặt giao thức chống lỗi. Bên cạnh đó, MPICH-V sử dụng với một vài ứng dụng để nghiên cứu hiệu năng của giao thức trong thực tế. I.1. Tổng quan về kỹ thuật chống lỗi Việc chống lỗi cho một tiến trình yêu cầu vài bản sao tiến trình cả về thời gian và không gian: • Kĩ thuật dựa trên bản sao theo không gian lỗi bằng cách nhân bản tiến trình để ít nhất một trong các bản sao vẫn có giá trị khi xảy ra lỗi, và bằng cách cùng điều phối sự thực thi các bản sao này. Kĩ thuật này cài đặt trên giao thức checkpoint các tiến trình. • Kĩ thuật dựa trên bản sao theo thời gian, chống lỗi bằng cách khôi phục các thực thi mất kiểm soát của tiến trình lỗi. Trong suốt thời gian giải phóng lỗi, một tiến trình ghi lại các thông tin về các sự kiện nó thực hiện. Các thông tin được ghi lại này được sử dụng trong suốt quá trình khôi phục để chạy lại các thực thi đã mất. Kĩ thuật này cài đặt trên giao thức ghi lại thông điệp. Hai lớp kĩ thuật này đòi hỏi chi phí rất nhiều trong quá trình thực hiện. Kĩ thuật dựa trên bản sao không gian mang lại sự thực thi liên tục, nhưng gây ra chi phí cao về hiệu năng. Cần điều phối sự thực thi của các bản sao và yêu cầu sử dụng một số lượng lớn tài nguyên. Trái lại, kĩ thuật dựa trên các bản sao thời gian gây ra chi phí thấp trong giải phóng lỗi và sử dụng ít tài nguyên hơn. Tuy nhiên, tốc độ khôi phục lại chậm. Lựa chọn một trong hai kĩ thuật này để chống lỗi phải dựa vào yêu cầu của ứng dụng. Trong phần mềm điều khiển quỹ đạo vệ tinh, chỉ một lỗi cũng có thể dẫn đến tai nạn thảm khốc. Việc chống lỗi một cách tuỳ biến và cung cấp môi trường thực hiện liên tục là yêu cầu cần thiết. Ứng dụng này nên chọn phương pháp bản sao không gian. Tuy nhiên, các ứng dụng khẩn cấp lại không nên chọn kĩ thuật này. Với những ứng HVTH: Phan Trọng Nghĩa 7 dụng đó, việc tối thiểu hoá chi phí cho chống lỗi được đưa lên hàng đầu. Vì vậy, nên chọn kĩ thuật bản sao thời gian. Các ứng dụng phân tán theo mô hình yêu cầu-phục vụ (client-server), để giảm chi phí chống lỗi có thể sử dụng cách tiếp cận theo bản sao thời gian. Tuy nhiên, để khai thác tiềm năng tính toán cluster, các ứng dụng trực tuyến (online) thường theo mô hình yêu cầu-phục vụ. Ứng dụng này sử dụng một nhóm các tiến trình trao đổi dữ liệu theo mô hình điểm-điểm. Với kiến trúc như vậy, để giảm chi phí sao lưu nên sử dụng các giao thức phục hồi ghi lại thông điệp. I.2. Tổng quan nghiên cứu môi trường chống lỗi MPICH-V Chống lỗi là vấn đề rất cần thiết cho các ứng dụng phân tán chạy vô hạn. Môi trường truyền thông MPICH-V xây dựng trên các giao thức khôi phục sẵn có với 2 mục đích: • Phát triển môi trường dễ dàng cài đặt bất cứ giao thức phục hồi nào. • Xác định và chỉ ra hạn chế về hiệu năng của các giao thức khi chúng được sử dụng trong thực tế. Để đạt được các tiêu chí này, MPICH-V được thiết kế thành môi trường có tính mở cho việc phát triển và hoàn thiện các giao thức phục hồi, sau đó dùng MPICH-V để nghiên cứu về hiệu năng của các giao thức chống lỗi. MPICH-V được phát triển nền đặc tả thống nhất các giao thức phục hồi. Nó cho phép xác định tập các chức năng mà các giao thức cần có. Môi trường xây dựng dựa trên các giao thức phục hồi. Các giao thức này rất đa dạng, chia sẻ cùng cấu trúc điều khiển sự kiện và tập trung vào cùng một tập các sự kiện liên quan. Các giao thức là các điều khiển sự kiện, tương ứng với các xử lí khác nhau mỗi khi có sự kiện liên quan xảy ra (giống hoạt động của các máy trạng thái). Có 5 kiểu sự kiện liên quan tới các giao thức khôi phục: • Các sự kiện không xác định. • Các sự kiện sinh ra sự phụ thuộc. HVTH: Phan Trọng Nghĩa 8 • Các sự kiện chuyển giao đầu ra. • Các sự kiện checkpoint. • Các sự kiện phát hiện lỗi. Các sự kiện được ánh xạ vào không gian 5 chiều và các giao thức được ánh xạ vào các điểm trong không gian này. Chỉ cần thay đổi nhỏ các giá trị trên từng trục tọa độ, có thể dịch chuyển trạng thái của hệ thống từ 1 điểm tới một điểm khác, từ một giao thức này đến một giao thức khác. MPICH-V cài đặt các giao thức khôi phục dựa trên sự dịch chuyển trạng thái của hệ thống trong không gian này. Cách tiếp cận này cho phép phát triển các giao thức mới bằng cách kết hợp sự chuyển dịch trạng thái theo các cách khác nhau. Đây cũng chính là mục tiêu phát triển và hoàn thiện tiếp công cụ này. Hiện nay MPICH-V đang được tích hợp MPICH (chuẩn MPI). Vì vậy mà các ứng dụng MPI có thể chạy ngay trên MPICH-V mà không cần phải chỉnh sửa gì ngoài việc sử dụng chương trình dịch mpicc sau khi được tích hợp. Hiệu năng của các giao thức phục hồi hiện nay có thể được đánh giá qua các ứng dụng có đòi hỏi cao về tài nguyên như các tải đo hiệu năng của NPB. Tính ưu việt của MPICH-V thể hiện trong 2 vấn đề hiệu năng cơ bản sau: • Hiệu năng phục hồi của giao thức ghi lại thông điệp. • Sự tiêu tốn tài nguyên mạng của giao thức lưu trữ ảnh tiến trình. II. Phân tích môđun chống lỗi Nghiên cứu trước đây về chống lỗi chỉ ra cách thiết kế các giao thức chống lỗi như checkpointing, pessimistic, optimistic và causal. Các giao thức trên đem lại nhiều lựa chọn cho các nhà phát triển ứng dụng chấp nhận một giao thức phù hợp với mỗi ứng dụng. Các nghiên cứu cho thấy, với các ứng dụng không thường xuyên tương tác với môi trường ngoài, để chống lỗi tiến trình có thể dùng checkpointing và optimistic. Pessimistic và causal phù hợp hơn với các ứng dụng trao đổi nhiều với môi trường và không chấp nhận chạy lại. Nếu yêu cầu khôi phục tiến trình đơn giản và nhanh chóng thì pessimistic HVTH: Phan Trọng Nghĩa 9 mạng truyền thông Bộ điều phối Bộ lập lịch lấy ảnh tiến trình Bộ ghi sự kiện Bộ lưu ảnh tiến trình Daemon truyền thông + nút tính toán là phù hợp. Các ứng dụng yêu cầu tối thiểu hóa chi phí trong quá trình giải phóng lỗi nên dùng causal hay optimistic. II.1. Mô hình chống lỗi Hình 1: Mô hình môi trường truyền thông chống lỗi Môi trường chống lỗi MPICH-V được xây dựng từ các thành phần khác nhau. Các thành phần này trao đổi với nhau trong môi trường thống nhất. Dựa vào hình 1, ta phân chia các thành phần này làm 3 loại: • Thành phần điều phối: thành phần này chỉ duy nhất một chương trình gọi là Bộ điều phối. Chức năng chính của Bộ điều phối là nhận đặc tả job gửi tới, sau đó khởi tạo toàn bộ môi trường truyền thông phục vụ cho việc chạy job. • Các thành phần phụ phục vụ chống lỗi: HVTH: Phan Trọng Nghĩa 10 [...]... tiến trình MPI, mỗi tiến trình MPI thuộc về một Daemon truyền thông o Các nút tính toán (Computing Node) Nút tính toán chính là các tiến trình MPI chạy song song Các tiến trình này được chạy từ các chương trình MPI đã biên dịch trên các máy trạm II.2 Phân tích giao thức chống lỗi bằng cách ghi lại thông điệp Môi trường chống lỗi MPICH-V cài đặt giao thức ghi lại thông điệp bên phía tiến trình gửi Theo... ứng dụng MPI) trong MPICH được cài đặt bởi tầng giao diện ADI (Abstract Device Interface) dùng phổ biến trong các môi trường tính toán song song Giao diện ADI lại được cài đặt trên các tầng khác: tầng giao thức như short, eager, rendez-vous protocols Cuối cùng, các tầng giao thức này lại cài đặt trên tầng nguyên thuỷ: giao diện kênh truyền thông (channel interface) Môi trường chống lỗi MPICH-V phải... sửa đổi, MPICH-V ngoài việc cung cấp môi trường thực thi như trình bày phần trên, nó còn cung cấp một thư viện truyền thông điệp dựa trên chuẩn MPI Do vậy môi trường này được chia làm 2 khối cơ bản: • Môi trường truyền thông chống lỗi: gồm các thành phần nêu ở trên • Thư viện truyền thông điệp theo chuẩn MPI: thư viện này được cài đặt qua giao diện ADI (Abtract Device Interface) II.3.2.1 Môi trường truyền... Logger Rõ ràng, tỉ lệ các nút tin cậy trên mạng yêu cầu rất ít Bài thu hoạch đã truyền trãi được những kiến thức cơ bản về môi trường chống lỗi MPICH-V, đã khái quát được kiến trúc và cách thức hoạt động của hệ thống này Tuy nhiên do thời gian có hạn và những kiến thức đối với hệ thống này còn hạn chế nên bài thu hoạch chỉ có thể đưa ra những cơ sở lý thuyết mà chưa cài đặt và ứng dụng cụ thể Nếu có... cho Daemon truyền thông II.3.3 Giao thức truyền thông giữa các khối Qua phân tích ở trên, có thể chia các giao thức trong môi trường truyền thông chống lỗi MPICH-V thành 2 nhóm giao thức truyền thông sau: • Các giao thức liên quan tới truyền thông điệp • Các giao thức liên quan tới chống lỗi II.3.3.1 Giao thức truyền thông điệp Phần này tập trung vào 3 giao thức giữa 3 khối: (1) Bộ điều phối; (2) Daemon... được thực hiện theo cơ chế trong hàm get_checkpoint( ) Khi kết thúc gửi, sproto gửi về tín hiệu ‘A’ báo hoàn tất quá trình gửi file ảnh Sau đó đóng các kết nối phục vụ Daemon HVTH: Phan Trọng Nghĩa 35 KẾT LUẬN Kiến trúc chống lỗi MPICH-V sử dụng giao thức ghi lại thông điệp bên gửi Hiện nay tích hợp cùng MPICH 1.2.4, mô hình truyền thông này sẽ có khả năng chống lỗi tự động và trong suốt Kiến trúc này... phần nêu ở trên • Thư viện truyền thông điệp theo chuẩn MPI: thư viện này được cài đặt qua giao diện ADI (Abtract Device Interface) II.3.2.1 Môi trường truyền thông chống lỗi theo chuẩn MPI Các thành phần cơ bản trong môi trường chống lỗi MPICH-V gồm: • Bộ điều phối • Bộ lưu trữ ảnh tiến trình • Bộ ghi sự kiện • Bộ lập lịch lấy ảnh tiến trình a Bộ điều phối Là thành phần trung tâm của một job Khi job... có khả năng chống lỗi tự động và trong suốt Kiến trúc này dựa trên năm thành phần chủ yếu: tập các nút tính toán (CNs); một Dispatcher; tập các Checkpoint Server; một Checkpoint Scheduler; và tập các Event Logger MPICH-V thiết kế để làm giảm các chi phí và tăng hiệu năng so với các môi trường khác Hệ thống này tối thiểu cần một tập các nút có thể không ổn định, một nút ổn định để chạy Checkpoint Server,... Tiến trình MPI trong lúc thực thi gửi các thông điệp tới cho Daemon Các kiểu thông điệp được liệt kê phần dưới HVTH: Phan Trọng Nghĩa 24 5) Tiến trình MPI khi kết thúc gọi hàm chuẩn MPI_Finalize( ) Hàm gửi tín hiệu CLIENT_EXIT về cho Daemon II.3.3.2 Giao thức chống lỗi Phần này sẽ trình bày các giao thức chống lỗi sau: 1 Giao thức phát hiện lỗi 2 Giao thức phục hồi Daemon truyền thông lỗi 3 Giao thức... điệp được lưu lại trong bộ nhớ ở phía tiến trình gửi (bộ nhớ lưu trữ này nằm trong Daemon truyền thông), còn các thông tin liên quan đến trao đổi được ghi lại trong một phương tiện lưu trữ tin cậy (MPICH-V sử dụng Bộ ghi sự kiện để lưu trữ các thông tin này) Sau đây là hình vẽ biểu diễn truyền thông giữa các tiến trình trong lúc thực thi HVTH: Phan Trọng Nghĩa 11 Hình 1: Tiến trình p trong pha thực thi . MPICH-V trong hệ thống tính toán song song HVTH: Phan Trọng Nghĩa 4 Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song MỤC LỤC DANH MỤC HÌNH Hình 1: Mô hình môi trường. Nghiên cứu môi trường chống lỗi MPICH-V trong hệ thống tính toán song song TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN TP.HCM KHOA: KHOA HỌC MÁY TÍNH BÀI THU HOẠCH MÔN: ĐIỆN TOÁN LƯỚI VÀ ĐÁM MÂY Đề. tài: NGHIÊN CỨU MÔI TRƯỜNG CHỐNG LỖI MPICH-V TRONG HỆ THỐNG TÍNH TOÁN SONG SONG GVHD : PGS.TS. NGUYỄN PHI KHỨ HVTH : Phan Trọng Nghĩa HVTH: Phan Trọng Nghĩa 1 Nghiên cứu môi trường chống lỗi MPICH-V