Mô hình triển khai thực nghiệm bộ lập lịch trên lướ i

Một phần của tài liệu một số thuật toán lập lịch để phân phối tài nguyên trong hệ thống tính toán lưới (Trang 108 - 113)

Để nhằm mục ñích thực nghiệm các giải thuật ñã trình bày trong luận án ñối với hệ thống tính toán lưới, luận án ñưa ra khung lập lịch thực nghiệm ñể tích hợp các giải thuật này trên lưới. Mục ñích mô phỏng quá trình thực nghiệm bộ công cụ

lập lịch với giải thuật ñề xuất trên một hệ thống lưới tính toán thực tế, sử dụng các dịch vụ lưới trong việc lấy thông tin tài nguyên cũng nhưñệ trình công việc sau khi quá trình lập lịch kết thúc. Mặt khác, khung lập lịch ñảm bảo không phụ thuộc vào số lượng nút lưới, vì bản chất lưới là một môi trường tương ñối mở và ñộng.

110

Hình 4. 3. Mô hình triển khai thực nghiệm Khung lập lịch thực nghiệm gồm các thành phần sau:

- Thành phần trích xuất dữ liệu ñầu vào: thành phần này chịu trách nhiệm tương tác với agent ñể lấy về tệp tin mô tả trạng thái tài nguyên và tương tác với người dùng ñể lấy về tệp tin mô tả công việc mà người dùng muốn chạy trên lưới. Các tệp tin ñầu vào này sẽñược xử lý và ñưa ra các tệp tin có ñịnh dạng phù hợp, làm ñầu vào cho giải thuật lập lịch.

- Thành phần triệu gọi và thực thi giải thuật lập lịch: thành phần này chịu trách nhiệm triệu gọi giải thuật lập lịch do người dùng lựa chọn và thực thi nó. Để

giải thuật lập lịch làm việc ñược với khung lập lịch, nó phải thỏa mãn các yêu cầu vào/ra như mô tảở phần tiếp theo.

111

- Thành phần tạo kịch bản ñệ trình công việc: thành phần này nhận ñầu ra từ

giải thuật lập lịch, sau ñó chuyển kết quả lập lịch thành tệp tin có thể thực thi

ñược trên lưới tính toán.

Như vậy, ñối với khung lập lịch trên, người dùng chỉ cần ñưa vào giải thuật lập lịch của mình với các yêu cầu tương thích. Hơn nữa, khi chạy chương trình, người dùng cần chỉñịnh danh sách các công việc, yêu cầu về tài nguyên ñối với từng công việc. Hệ thống sẽ tự ñộng sử dụng giải thuật lập lịch ñể lập lịch với các tài nguyên trên lưới và ñệ trình công việc lên lưới tính toán.

Toàn bộ khung lập lịch ñược ñóng gói có cấu trúc thư mục như sau:

Trong ñó, tệp tin chính cần chạy là chương trình run, ñầu vào là hai tệp tin jobs.in và resources.in. Hai tệp tin này có ñịnh dạng giống nhau.

Ví dụ về tệp tin jobs.in như sau:

# tên công việc Số lượng CPU Dung lượng RAM job1.sh 2 10000

112

Các giải thuật lập lịch ñược lưu trữ trong thư mục bin, mã nguồn nằm trong thư mục src.

Sau khi thực thi khung lập lịch, ta sẽ thu ñược tệp tin ñầu ra là

grid_job_script.sh. Tệp tin này chứa ñựng mô tả công việc phải thực hiện trên lưới, sau ñó nó sẽñược ñệ trình ñể thực thi trên lưới.

Ví dụ về tệp tin grid_job_script.sh như sau: #!/bin/sh

globus-job-run bkluster.hut.edu.vn job1.sh & globus-job-run bkluster.hut.edu.vn job2.sh & globus-job-run rocks-200.sdsc.edu job3.sh & globus-job-run bkluster.hut.edu.vn job4.sh & globus-job-run rocks-200.sdsc.edu job5.sh & globus-job-run bkluster.hut.edu.vn job6.sh &

Với khả năng hiện tại, luận án mới chỉ thực hiện ñược với hai tài nguyên lưới trong lưới tính toán khu vực Thái Bình Dương PRAGMA ñó là:

- Nút lưới BKLUSTER, tại Trung tâm Tính toán Hiệu năng cao, Đại học

Bách khoa Hà Nội.

oSố lượng CPU: 16

oDung lượng RAM: 20 GB

- Nút lưới Rocks-200, tại San Diego Supercomputer Center (SDSC), Mỹ.

oSố lượng CPU: 1

113 Tệp tin ñặc tả tài nguyên jobs.in sẽ như sau:

# tên tài nguyên Số lượng CPU Dung lượng RAM bkluster.hut.edu.vn 16 20000

rocks-200.sdsc.edu 1 1000

Một số hình dưới ñây minh họa cho quá trình chạy và xem kết quả ñệ trình công việc lên lưới.

Hình 4. 4. Đệ trình công việc lên lưới

114

Hình 4. 6. Các job 3-5 chạy trên máy rocks-200.sdsc.edu

Một phần của tài liệu một số thuật toán lập lịch để phân phối tài nguyên trong hệ thống tính toán lưới (Trang 108 - 113)