Xem mẫu

  1. TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM KHOA CÔNG NGHỆ THÔNG TIN THUYẾT MINH ĐỀ TÀI NCKH CẤP TRƯỜNG ĐỀ TÀI ỨNG DỤNG GRID COMPUTING KHAI THÁC NGUỒN TÀI NGUYÊN NHÀN RỖI TRÊN HỆ THỐNG MẠNG MÁY TÍNH Chủ nhiệm đề tài: NGUYỄN DUY TRƯỜNG GIANG Thành viên tham gia: TRẦN VĂN TUYỀN Hải Phòng, tháng 4/2016
  2. Đề tài nghiên cứu khoa học MỤC LỤC MỞ ĐẦU ............................................................................................................... 1 1. Tính cấp thiết của vấn đề nghiên cứu ............................................................ 1 2. Các thách thức đối với lĩnh vực nghiên cứu .................................................. 3 3. Mục tiêu, đối tượng, phạm vi nghiên cứu ...................................................... 3 4. Phương pháp nghiên cứu, kết cấu của công trình nghiên cứu ....................... 4 5. Kết quả đạt được của đề tài ............................................................................ 4 CHƯƠNG I: CƠ SỞ LÝ THUYẾT ...................................................................... 5 1.1. Một số khái niệm cơ bản ............................................................................. 5 1.2. Các tính năng của tính toán lưới ................................................................. 6 1.3. Mô hình, nền tảng của tính toán lưới .......................................................... 7 1.4. Nền tảng của tính toán lưới ......................................................................... 7 1.4.1. Tính toán lưới là gì và hoạt động như thế nào? .................................... 7 1.4.2. Mốt số thành phần cơ trong mô hình tính toán lưới ............................. 9 1.4.3. Các lợi ích của tính toán lưới .............................................................. 10 CHƯƠNG II: PHÂN TÍCH VÀ XÂY DỰNG HỆ THỐNG .............................. 11 2.1. Tổng quan về hệ thống được xây dựng.................................................... 11 2.2. Cơ sở dữ liệu được sử dụng trong hệ thống .............................................. 13 CHƯƠNG III: TRIỂN KHAI HỆ THỐNG ........................................................ 15 3.1. Chương trình Anthill ................................................................................. 15 3.2. Yêu cầu cài đặt thệ thống .......................................................................... 15 3.3. Cài đặt và chạy phần mềm trên máy chủ .................................................. 15 3.4. Cài đặt và chạy phần mềm trên máy trạm ................................................ 20 3.5. Thông tin chạy chương trình ..................................................................... 26 i
  3. Đề tài nghiên cứu khoa học KẾT LUẬN ......................................................................................................... 27 TÀI LIỆU THAM KHẢO ................................................................................... 28 PHỤ LỤC ............................................................................................................ 29 1. Chương trình đơn giản để test trên ANTHILL .......................................... 29 2. Chương trình chạy trên ngôn ngữ FlexPde................................................ 29 3. Chương trình chạy trên ngôn ngữ ANSYS ................................................ 34 4. Chương trình sinh tập mẫu để chạy trên ANSYS...................................... 42 ii
  4. Đề tài nghiên cứu khoa học DANH SÁCH HÌNH ẢNH Hình 1.1. Cấu trúc của hệ thống tính toán lưới ...................................................... 8 Hình 1.2. Mô hình tính toán lưới dựa trên Internet ................................................ 8 Hình 1.3. Minh họa một hệ thống điện toán mạng lưới ......................................... 9 Hình 2.1. Giao diện chính của chương trình AntHill ............................................. 12 Hình 2.2. Thời gian thực hiện của hệ thống giải một bài toán cụ thể .................... 13 Hình 2.3. Cơ sở dữ liệu của hệ thống ..................................................................... 13 Hình 2.4. Một số bảng dùng trong hệ thống .......................................................... 14 Hình 3.1. Giao diện server khởi tạo thành công .................................................... 16 Hình 3.2. Giao diện AntHill chạy thành công ........................................................ 16 Hình 3.3. Giao diện đăng nhập vào phần mềm trên máy chủ ................................ 17 Hình 3.4. Giao diện đăng ký một tài khoản mới vào phần mềm trên máy chủ ..... 17 Hình 3.5. Giao diện tải chương trình lên máy chủ ................................................. 17 Hình 3.6. Giao diện tải thành công chương trình ................................................... 18 Hình 3.7. Giao diện cập nhật, sửa, xóa .................................................................. 18 Hình 3.8. Kết quả giải quyết một nhiệm vụ ........................................................... 19 Hình 3.9. Thời gian thực hiện trung bình của CPU ............................................... 19 Hình 3.10. Thời gian thực hiện trung bình của mạng ............................................ 20 Hình 3.11. Thời gian trung bình trên tổng thời gian thực hiện .............................. 20 Hình 3.12. Giao diện tải chương trình trên máy chủ ............................................. 21 Hình 3.13. Giao diện bắt đầu cài đặt phần mềm trên máy trạm ............................ 21 Hình 3.14. Giao diện về các nội dung sẽ cài đặt .................................................... 22 Hình 3.15. Giao diện thiết lập đường dẫn trên máy trạm ...................................... 22 Hình 3.16. Lựa chọn vị trí xuất hiện của chương trình .......................................... 23 Hình 3.17. Lựa chọn xuất hiện trên màn hình ........................................................ 23 Hình 3.18. Tiến hành cài đặt .................................................................................. 24 Hình 3.19. Cài đặt hệ thống ................................................................................... 24 Hình 3.20. Kết thúc cài đặt phần mềm trên máy trạm ........................................... 25 Hình 3.21. Cấu hình máy trạm ............................................................................... 25 Hình 3.22. Log file .................................................................................................. 26 iii
  5. Đề tài nghiên cứu khoa học DANH SÁCH THUẬT NGỮ, CHỮ VIẾT TẮT Chữ viết tắt Trang CERN - tổ chức Châu âu về nghiên cứu hạt nhân ................................................. 2 ESA - cơ quan vũ trụ Châu âu................................................................................. 2 VO - Virtual Organization....................................................................................... 7 ĐTML - Điện toán mạng lưới ................................................................................. 7 iv
  6. Đề tài nghiên cứu khoa học MỞ ĐẦU 1. Tính cấp thiết của vấn đề nghiên cứu Trong vài năm trở lại đây tính toán phân tán đã phát triển mạnh mẽ, mở ra các giải pháp mới cho các ứng dụng đòi hỏi khả năng tính toán lớn. Tính toán phân tán có thể được sử dụng cho các bài toán nghiên cứu về cơ học, vật lý, điện tử… và xuất phát từ nhu cầu thực tế của con người. Các tiến bộ liên tục trong nghiên cứu khoa học tự giải thích về nhu cầu vô cùng to lớn đối với sức mạnh tính toán. Mặt khác, một trong những kết quả của tiến bộ khoa học là sự sẵn có của nhiều hơn và mạnh hơn các nền tảng máy tính. Ngày nay, hướng nghiên cứu về tính toán phân tán đóng một vai trò quan trọng trong việc giải các bài toán khoa học kỹ thuật đòi hỏi thời gian tính toán lớn. Thực hiện được điều này sẽ giảm đáng kể các chi phí để trang bị các siêu máy tính phục vụ công việc tính toán. Việc tính toán phân tán cũng giải quyết được các hoạt động khoa học đối với các chủ thể ở xa thông qua hệ thống mạng máy tính. Với tính toán phân tán, hạ tầng công nghệ thông tin là vấn đề cốt lõi của hệ thống. Trong thập kỷ qua, cuộc cách mạng Internet dẫn đến sự bùng nổ về các ứng dụng web. Dựa trên nền web có thể xây dựng được ứng dụng xử lý phân tán. Do đó, việc tận dụng nền web mở ra những quan điểm mới trong quá trình tính toán phân tán để ứng dụng giải quyết các bài toán khoa học, đây là một cách tiếp cận tự nhiên nhất để theo đuổi một mục tiêu tính toán phân tán. Công nghệ tính toán phân tán cho phép sử dụng mạng máy tính như một công cụ tính toán, phân nhóm hoặc kết nối một loạt các tài nguyên có khả năng phân phối trên một khu vực địa lý rộng lớn, bao gồm cả siêu máy tính, hệ thống lưu trữ, nguồn dữ liệu, các thiết bị phần cứng, và sử dụng chúng như là một tài nguyên thống nhất. Mở đầu cho quá trình này là dự án liên kết các trang web với nhau và bây giờ đã phát triển vượt xa mục đích ban đầu của nó, mở ra một kịch bản mới cho việc hợp tác, khai thác dữ liệu, giải các bài toán khoa học lớn và tính toán hiệu năng cao sử dụng các siêu dữ liệu. Đại học Hàng Hải Trang 1
  7. Đề tài nghiên cứu khoa học Các ứng dụng tính toán phân tán trực tuyến cho phép họ chia sẻ tài nguyên từ xa, thay đổi và sử dụng chúng một cách hiệu quả nhất. Trong bối cảnh này, một mạng lưới có thể được xem như là một môi trường tính toán toàn cầu, nơi mà hệ thống phân tán có thể được tạo ra và thực thi các yêu cầu. Tính linh hoạt của lưới làm cho hệ thống này linh động và cấu hình. Thông qua mạng lưới, các nhà nghiên cứu có thể nhanh chóng thay đổi các yêu cầu của mình nhằm thích ứng với nhu cầu giải quyết cụ thể theo từng thời điểm cũng như tận dụng hợp lý những thay đổi của hệ thống, cơ sở hạ tầng và nguồn lực. Khai thác dữ liệu trên hệ thống cũng quan trọng đặt biệt là khi xử lý lượng lớn dữ liệu thì việc khai thác từ các trang web từ xa là hết sức cần thiết. Một số lĩnh vực nghiên cứu, chẳng hạn như phân tích khí hậu và nghiên cứu sinh học, yêu cầu lưu trữ và truy cập dữ liệu lên đến terabyte hoặc petabyte. Trong những trường hợp này, dữ liệu có thể phân bố trên một số trang web và sau đó khai thác để đưa đến một kết quả thống nhất. Đôi khi hệ thống cũng phải tạo ra các bản sao nhằm cải thiện hiệu suất xử lý và tăng cường độ tin cậy. Dịch vụ quản lý dữ liệu phân tán và sao lưu cũng hết sức quan trọng trong tính toán lưới. Tính toán với hiệu năng cao đòi hỏi một lượng lớn sức mạnh tính toán trong một thời gian dài. Ví dụ trong các bài toán cơ học về dầm, cầu hay đường ống muốn thử nghiệm nhiều lần và việc chia lưới nhỏ đòi hỏi một thời gian rất lớn để tính toán. Giải quyết vấn đề này trong tính toán phân tán thông qua việc mô phỏng bài toán phù hợp, xây dựng tập các tham số đầu vào khác nhau thì việc giải quyết sẽ được thực hiện trong một khoảng thời gian hợp lý. Tính toán phân tán sẽ khai thác các máy tính nhàn rỗi trong mạng để giái quyết vấn đề này. Tính toán lưới đã được các công ty và các trung tâm lớn nghiên cứu và ứng dụng như IBM, Microsoft, Google, tổ chức Châu âu về nghiên cứu hạt nhân (CERN), cơ quan vũ trụ Châu âu (ESA). Một số ứng dụng cụ thể của tính toán phân tán như lưu trữ GEN và giải quyết các bài toán liên quan đến GEN của con người nói riêng cũng như động vật nói chung, tìm kiếm phân tán,.... Đại học Hàng Hải Trang 2
  8. Đề tài nghiên cứu khoa học Hiện nay tại các phòng LAB, các phòng thực hành ở các đơn vị nghiên cứu khoa học hoặc các trường đại học đang bị sử dụng lãng phí: các máy tính trong các hệ thống này thường chỉ hoạt động khoảng 15% công suất, ngay cả các máy chủ cũng hoạt động với 30% công suất. Việc tận dụng hiệu quả các nguồn tài nguyên này có thể mang lại một sức mạnh tính toán khổng lồ. Mục tiêu của đề tài này là nghiên cứu tính toán phân tán và xây dựng một hệ thống giải các bài toán khoa học đòi hỏi thời gian tính toán lớn nhằm tận dụng nguồn tài nguyên nhàn rỗi này. 2. Các thách thức đối với lĩnh vực nghiên cứu Các thách thức mà công nghệ tính toán phân tán đang phải giải quyết bao gồm: - Các tài nguyên hết sức đa dạng, không đồng nhất. Tài nguyên ở đây bao gồm các tài nguyên về phần cứng, phần mềm, hệ thóng mạng... Các tài nguyên này có thể được thiết kế khác nhau về giao diện, kiến trúc.. Việc tạo ra một ứng dụng cho phép khai thác, sử dụng hiệu quả là không dễ dàng và đây là thách thức vô cùng lớn đối với hệ thống tính toán phân tán. - Các tài nguyên không chỉ thuộc về một tổ chức mà thuộc về rất nhiều tổ chức tham gia. Các tổ chức phải tuân thủ một số quy định chung khi tham gia vào hệ thống còn nhìn chung là hoạt động độc lập tức là các tài nguyên này đều có quyền tự trị. Các tổ chức khác nhau thường có chính sách sử dụng hay cho thuê tài nguyên của họ khác nhau và do vậy cũng gây khó khăn cho việc quản lý. - Các tài nguyên phân tán rộng khắp về mặt địa lý do vậy cần có các cơ chế quản lý phân tán. - Đảm bảo an toàn thông tin cho một môi trường phức tạp như môi trường phân tán là rất khó khăn trong khi đây là một trong những điểm ưu tiên hàng đầu. 3. Mục tiêu, đối tượng, phạm vi nghiên cứu Mục tiêu của đề tài là ứng dụng xử lý phân tán để xây dựng một hệ thống giải quyết các bài toán với tập mẫu lớn thỏa mãn các nội dung: - Có sự kết hợp, chia sẻ các tài nguyên không được quản lý tập trung: thúc đẩy việc khai thác hiệu quả các tài nguyên nhàn rỗi. Ngoài ra tính toán phân tán Đại học Hàng Hải Trang 3
  9. Đề tài nghiên cứu khoa học cũng giúp cân bằng sử dụng tài nguyên tốt hơn. Với hệ thống phân tán việc thêm hoặc bớt tài nguyên được thực hiện một cách dễ dàng. - Sử dụng các giao diện và giao thức chuẩn, mang tính mở, đa dụng: Có khả năng tùy biến tốt với người dùng. Hệ thống cho phép người dùng mở rộng hệ thống tính toán dễ dàng và có thể giải quyết được số lượng nhiều bài toán khác nhau. - Đáp ứng yêu cầu cao về chất lượng dịch vụ: Cho phép xử lý song song nhằm sử dụng tối đa nguồn lực của các bộ vi xử lý. Đơn giản hóa các thao tác để có thể chia sẻ trên một cộng đồng lớn. Cho phép chia sẻ hiểu quả khả năng xử lý và dữ liệu đảm bảo độ tin cậy tối đa. 4. Phương pháp nghiên cứu, kết cấu của công trình nghiên cứu Phương pháp nghiên cứu của đề tài là kết hợp lý thuyết với thực tiễn. Kết cấu của đề tài là tìm hiểu, nghiên cứu về tính toán phân tán. Phân tích các bài toán có thể xử lý dựa trên tập mẫu lớn. Xây dựng chương trình kiểm thử và đưa ra các kết luận. 5. Kết quả đạt được của đề tài - Nghiên cứu về tính toán phân tán trên cơ sở đó đưa ra mô hình giải quyết vấn đề: giải các bài toán với tập mẫu lớn trên hệ thống máy tính nhàn rỗi. - Nghiên cứu cách thức hoạt động của các chương trình trên ngôn ngữ lập trình. - Xây dựng cơ sở dữ liệu để lưu trữ các thông tin trên máy chủ. - Xây dựng chương trình xử lý việc phân tán trên máy chủ. - Xây dựng phần mềm chạy trên máy trạm. - Đưa ra những đánh giá về hiệu năng sử dụng hệ thống. Đại học Hàng Hải Trang 4
  10. Đề tài nghiên cứu khoa học CHƯƠNG I: CƠ SỞ LÝ THUYẾT Hiện nay tính toán phân tán được ứng dụng rộng rãi trong lĩnh vực công nghệ thông tin. Với đề tài này tác giả tìm hiểu về kiến trúc của hệ thống tính toán phân tán từ đó đưa ra mô hình giải quyết bài toán khoa học với tập mẫu lớn thông qua hệ thống mạng máy tính nhằm tăng tốc độ giải quyết bài toán và tận dung được nguồn tài nguyên nhàn rỗi. 1.1. Một số khái niệm cơ bản Thời gian gần đây, mô hình tính toán lưới được nghiên cứu để giải nhiều bài toán đòi hỏi tính toán phức tạp với thời gian lớn. Mục tiêu là nhằm kết hợp sức mạnh tính toán, nguồn tài nguyên của các máy tính cơ bản phân tán ở những nơi khác nhau, tạo ra một hạ tầng tính toán tổng hợp thậm còn có thể mạnh hơn các siêu máy tính được đầu tư với một nguồn tiền lớn. Định nghĩa về tính toán lưới của Carl Kesselman và Ian Foster: “A computational grid is a hardware and software infrastructure that provides dependable, consistent, pervasive, and inexpensive access to high-end computational capabilities”. [1] Nhà khoa học Ian Foster đưa ra ba đặc điểm của một lưới thực sự : - Khai thác và sử dụng tài nguyên phân tán. - Hệ thống phát triển dựa trên các các giao thức chuẩn. - Hệ thống hoạt động và cho chất lượng dịch vụ tốt hơn so với việc hoạt động trên môi trường đơn lẻ. [1] Các khái niệm “tính toán lưới” với “tính toán ngang hàng” có điểm chung nhưng cũng có những điểm khác nhau. Điểm chung là cả hai cùng hoạt động nhằm khai thác tài nguyên trên hệ thống mạng máy tính, việc xây dựng với mỗi mô hình có những điểm mạnh, điểm yếu riêng. Tính toán lưới thường phục vụ cộng đồng người dùng với quy mô nhỏ hơn nhằm giải các bài toán tính toán trên tập mẫu lớn trong một lĩnh vực nghiên cứu nào đó. Tính toán lưới hỗ trợ khả năng tích hợp tài nguyên tốt hơn, đa dạng hơn tính toán ngang hàng. Ngược lại, các hệ thống tính toán ngang hàng thường được xây dựng dựa trên nền kiến trúc linh hoạt hơn, các hệ thống ngang hàng thường phục vụ cho một cộng đồng Đại học Hàng Hải Trang 5
  11. Đề tài nghiên cứu khoa học người dùng lớn hơn, có thể lên đến hàng triệu người, hệ thống này chủ yếu hỗ trợ việc chia sẻ tài nguyên, chia sẻ chu kỳ tính toán hoặc chia sẻ tệp. 1.2. Các tính năng của tính toán lưới Các bài toán trong các lĩnh vực khoa học khác nhau sử dụng tính toán lưới nhằm khai thác các năng lực nhàn rỗi trong hệ thống mạng máy tính (CPU, bộ nhớ), đây như một hệ thống máy tính ảo với môi trường liên lạc phân tán cho phép tính toán trên những phạm vi địa lý khác nhau, điều này làm cho tính toán lưới tách biệt với mô hình cụm tính toán. Tính toán lưới cho phép giải quyết những bài toán với tập mẫu lớn đòi hỏi nhiều thời gian tính toán như các bài toán trong cơ học như dầm, cầu, đường ống đòi hỏi việc chia lưới lớn, mô hình hoá tài chính, dự đoán khí hậu thời tiết, mô phỏng động đất. Tính toán lưới giúp các tổ chức, doanh nghiệp khai thác tối ưu tài nguyên của đơn vị mình. Ngoài ra tính toán lưới cũng có thể tạo ra các dịch vụ tính toán mang tính thương mại theo nhu cầu cho các khách hàng, đôi khi khách hàng chỉ phải trả những gì họ đã sử dụng giống như điện và phí vận hành. Việc thiết kế các hệ thống tính toán lưới thường cho phép tính toán hiệu quả và cung cấp một môi trường làm việc với nhiều người dùng khác nhau. Tiếp đến là khả năng khai thác tốt hơn nguồn tài nguyên cũng như năng lực tính toán còn nhàn rỗi nhằm phục vụ cho những bài toán khoa học lớn có nhu cầu tính toán không ngừng nghỉ. Việc hỗ trợ môi trường làm việc đa người dùng trên các phạm vi địa lý khác nhau cho phép khai thác hệ thống hiệu quả hơn, tiết kiệm chi phí, tiện lợi hơn trên các hệ thống xử lý tập trụng. Các hệ thống tính toán lưới được bố trí ở những phạm vi địa lý khác nhau nhằm ảo hoá các tài nguyên tính toán. Tính toán lưới giúp các công ty tận dụng tài nguyên trong một phòng hoặc một số đơn vị công nghệ của mình kết nối các máy tính để bàn, các cụm và thiết bị. Việc thực hiện tính toán lưới có thể thực hiện trong một phạm vi nhỏ là một Đại học Hàng Hải Trang 6
  12. Đề tài nghiên cứu khoa học phòng máy hoặc cũng có thể mở rộng ra trên hệ thống các phòng máy kết nối với nhau. 1.3. Mô hình, nền tảng của tính toán lưới Mô hình khái niệm: tính toán lưới là thực hiện một nhiệm vụ giải quyết bài toán có nhu cầu tính toán lớn mang tính chất nền tảng. Đúng nghĩa hơn là ở mức khái niệm chứ không như là một tài nguyên vật lý. Mô hình tổ chức ảo(Virtual Organization – VO): cung cấp một tập riêng rẽ các chính sách quản lý như là quản lý cục bộ, quản lý tài nguyên bên ngoài. Mô hình tính toán lưới được chuẩn hóa để thực thi các ứng dụng nhằm tận dụng tài nguyên tốt nhất. Tận dụng tốt nguồn tài nguyên sẵn có: cho phép khai thác tài nguyên trở nên dễ dàng hơn. Khi thực hiện việc này sẽ phát sinh chi phí cho các phần mềm trung gian cũng như thời gian trễ. Cần phải đánh giá tốt chi phí, thời gian trễ, để đánh giá hiệu năng tính toán của hệ thống. Để triển khai một hệ thống tính toán lưới cũng có thể sử dụng W3C thông qua các ngôn ngữ hỗ trợ khai thác tài nguyên trên web. Sử dụng các giao thức internet cho phép triển khai các hệ thống lưới để giải các bài toán khoa học với tập mẫu lớn và trong đề tài này tác giả đi sâu vào sự hỗ trợ này. 1.4. Nền tảng của tính toán lưới Tính toán lưới sử dụng hệ thống mạng máy tính để triển khai nhằm đem lại một sức mạng như những siêu máy tính để phục vụ người dùng. 1.4.1. Tính toán lưới là gì và hoạt động như thế nào? Grid là hệ thống xử lý phân tán, cho phép linh hoạt chia sẻ và tập hợp các nguồn tài nguyên độc lập và rải rác về địa lý, tùy theo khả năng sẵn có, công suất, hoạt động, chi phí và yêu cầu về chất lượng dịch vụ của người sử dụng. Điện toán mạng lưới(ĐTML) có nghĩa là tất cả hoặc một phần của một nhóm máy tính, máy chủ và thiết bị lưu trữ trong một mạng máy tính được “ảo hóa” thành một cỗ máy tính lớn. Chúng cho phép gia tăng về tốc độ, đẩy mạnh Đại học Hàng Hải Trang 7
  13. Đề tài nghiên cứu khoa học quá trình tính toán mật độ cao với chi phí không tăng lên đáng kể do hệ thống sử dụng lại hạ tầng đang có, khai thác hiệu quả nhằm huy động sức mạnh tính toán và tối ưu khả năng tính toán. Hình 1.1. Cấu trúc của hệ thống tính toán lưới Hệ thống ĐTML dựa trên một tập các chuẩn giao thức. Hệ thống có thể hoạt động trên hệ thống mạng LAN hay rộng hơn là trên mạng Internet. Hình 1.2. Mô hình tính toán lưới dựa trên Internet Đại học Hàng Hải Trang 8
  14. Đề tài nghiên cứu khoa học Chẳng hạn, một ai đó có chiếc máy tính cá nhân nhàn rỗi có thể kết nối vào hệ thống ĐTML để góp thêm sức mạnh tính toán cho hệ thống. Khi người này muốn thực hiện một ứng dụng cần thêm sức mạnh xử lý thì hệ thống sẽ tự động phân bố đến các máy tính đang có nguồn lực rảnh rỗi trong hệ thống để xử lý, tính toán. Hình 1.3. Minh họa một hệ thống điện toán mạng lưới Xây dựng một hệ thống tính toán lưới có thể bắt đầu từ quy mô nhỏ, sau đó có thể dần dần mở rộng lưới tùy theo nhu cầu của mình. 1.4.2. Mốt số thành phần cơ trong mô hình tính toán lưới Hệ thống tính toán mạng lưới được phân chia thành 3 lớp: Lớp ứng dụng: lớp này rất phong phú, có thể là các hệ thống mô phỏng, các ứng dụng tính toán khoa học. Lớp cơ sở hạ tầng: gồm các máy tính trong hệ thống mạng, các máy tính trong mạng, các tài nguyên, hạ tầng mạng. Lớp giữa: lớp này cung cấp các giao thức được chuẩn hóa cho các lớp còn lại nhằm tạo ra việc truy cập dễ dàng, thuận tiện. Đại học Hàng Hải Trang 9
  15. Đề tài nghiên cứu khoa học 1.4.3. Các lợi ích của tính toán lưới Lợi ích của ĐTML là rất lớn. Hệ thống giúp tận dụng, phân bổ tốt tài nguyên. Rút ngắn thời gian giải quyết các bài toán khoa học phức tạp. Tận dụng và tiết kiệm nguồn lực về con người cũng như hạ tầng sẵn có. Một số lợi ích của tính toán mạng lưới: 1) Không cần phải mua các siêu máy tính với chi phí lớn có thể tận dụng hệ thống mạng máy tính hiện có để khai thác phục vụ tính toán lớn. 2) Khai thác tối đa nguồn lực máy tính nhàn rỗi tại các phòng Lab, phòng thực hành để giải các bài toán khoa học đòi hỏi thời gian tính toán lớn. 3) Việc mở rộng hoặc thu hẹp quy mô của hệ thống tính toán lưới khá dễ dàng, chỉ cần những thao tác rất đơn giản và nhanh gọn. Đại học Hàng Hải Trang 10
  16. Đề tài nghiên cứu khoa học CHƯƠNG II: PHÂN TÍCH VÀ XÂY DỰNG HỆ THỐNG 2.1. Tổng quan về hệ thống được xây dựng Điển hình của tính toán phân tán là các hệ thống tính toán tình nguyện đã phát triển và khẳng định chỗ đứng của mình trong khoa học máy tính bằng những dự án tiêu biểu như: SETI@Home[2], ClimatePrediction[3], Einstein@Home[4] ... Tính toán tình nguyện cho phép các cá nhân, tổ chức có thể dễ dàng tham gia và đóng góp công sức vào các hoạt động khoa học mang tính cộng đồng. Đó cũng là một cách để các tổ chức quảng bá, phổ biến các hoạt động khoa học ra cộng đồng. Hiện tại các hệ thống tính toán phân tán cũng như tính toán tình nguyện chưa đầu tư nghiên cứu nhiều vào việc giải quyết các bài toán lớn trong cơ học. Khi giải quyết một bài toán ứng dụng với tập mẫu huấn luyện lớn và chỉ chạy trên máy đơn, để đạt được kết quả mong đợi thời gian xử lý là vấn đề hết sức quan tâm. Với mong muốn áp dụng công nghệ tính toán phân tán để giải quyết các bài toán ứng dụng với độ phức tạp về mặt thời gian là rất lớn. Tác giả đã đi sâu nghiên cứu và tìm hiểu các công nghệ tính toán phân tán, từ đó khai thác những ưu điểm sẵn có, tìm ra những nhược điểm cần cải tiến và khắc phục, nhằm thiết lập nên một hệ thống tính toán phân tán đáp ứng được các nhu cầu thực tế đang đặt ra. Về mặt dữ liệu: Dữ liệu là tập mẫu đầu vào để giải bài toán sau khi được tải lên máy chủ sẽ được chia nhỏ để khi có máy khách yêu cầu máy chủ sẽ gửi chương trình kèm theo dữ liệu cho máy khách xử lý. Sau khi máy khách xử lý xong dữ liệu sẽ được đẩy lên máy chủ để đồng bộ và bắt đầu một tiến trình mới. Người sử dụng chỉ cần chuyển dữ liệu về khuôn dạng đã được quy định sẵn, dữ liệu có thể đã được chuẩn hóa sẵn hoặc chương trình sẽ tự động chuẩn hóa. Về mặt chương trình: Để giảm thiểu lượng truyền tải dữ liệu qua mạng chương trình chạy trên hệ thống được thiết kế riêng biệt cho máy chủ và máy khách. Chương trình trên máy chủ cho phép phân tán và đồng bộ dữ liệu. Chương trình trên máy khách được sử dụng để huấn luyện cho tập mẫu tương Đại học Hàng Hải Trang 11
  17. Đề tài nghiên cứu khoa học ứng. Sau khi hoàn thiện dữ liệu và chương trình cần được nén lại theo dạng chuẩn zip để giảm kích thước nhằm tăng tốc độ khi nạp dữ liệu và chương trình lên máy chủ. Công nghệ để xây dựng hệ thống dựa trên nền tảng của hệ thống phân tán: - Thực hiện cơ chế tập trung tính toán phân tán với giao diện người dùng dựa trên web. Hệ thống thiết kế trên ngôn ngữ Python dưới dạng nền tảng. Hệ thống trao đổi dữ liệu qua giao thức HTTP/HTTPS với định dạng XML. Hình 2.1. Giao diện chính của chương trình AntHill - Các máy khách tải từ trang đăng nhập người dùng gói cài đặt, cái mà đã được cấu hình trên máy chủ. Sau đó máy skhách cài đặt phần này với việc đăng ký nút mới tự động. Để giải một bài toán người nghiên cứu cần vào trang chủ để nạp chương trình và dữ liệu với các tham số phù hợp. Như vậy sẽ hạn chế được sự phụ thuộc vào ngôn ngữ lập trình và phần cứng cũng như hệ thống hàm API. Gói chương trình này người dùng có thể tự thiết kế theo định dạng đã được lập sẵn. Các tính toán được thống kê thông qua đồ thị. - Máy khách thực hiện đa xử lý cho phép tối ưu hoá các bộ xử lý đang có. Việc trao đổi dữ liệu giữa máy chủ đã được giảm thiểu tối đa nhằm tối ưu hiệu năng trong hệ thống. Mã nguồn của chương trình được viết ngắn gọn, dễ kiểm soát và phát triển. Đại học Hàng Hải Trang 12
  18. Đề tài nghiên cứu khoa học Hình 2.2. Thời gian thực hiện của hệ thống giải một bài toán cụ thể 2.2. Cơ sở dữ liệu được sử dụng trong hệ thống Cơ sở dữ liệu của hệ thống Hình 2.3. Cơ sở dữ liệu của hệ thống Đại học Hàng Hải Trang 13
  19. Đề tài nghiên cứu khoa học Một số bảng quan trọng sử dụng trong hệ thống Bảng Node Bảng Unit Bảng Task Hình 2.4. Một số bảng dùng trong hệ thống Hệ thống được xây dựng trên nền tảng python-django. [5] Đại học Hàng Hải Trang 14
  20. Đề tài nghiên cứu khoa học CHƯƠNG III: TRIỂN KHAI HỆ THỐNG 3.1. Chương trình Anthill Anthill là một công cụ cho phép chạy phân tán trên thệ thống mạng LAN, WAN or internet. Với chương trình này tác giả xin giới thiệu một hướng tiếp cận xử lý các bài toán khoa học với tập mẫu lớn trên hệ thống mạng máy tính. 3.2. Yêu cầu cài đặt thệ thống - Chương trình trên máy trạm có thể cài đặt trên: WinXP, winServer, window 7, window 8 - Các phần mềm cần cài đặt trên server: + Python + Apache + Mysql, MySqldb + Django + Trình duyệt web: FireFox, IE, Google Chrome, Opera Độ phân giải tốt nhất: 1024x768 - Phần mềm cần cài đặt trên máy trạm: + Python + PyWin + Numpy 3.3. Cài đặt và chạy phần mềm trên máy chủ Bước 1: Chuẩn bị chương trình và các gói phần mềm cần thiết. Cài đặt lên server các phần mềm như Python, Apache, Mysql, Mysqldb, Django. Bước 2: Cài đặt Database từ dòng lệnh của DOS - Vào thư mục Hill - Thay đổi cấu hình phù hợp trong file: setting.py - Tạo cơ sở dữ liệu với tên là HILL trong Mysql Đại học Hàng Hải Trang 15
nguon tai.lieu . vn