8. Aneka: Từ điện toán lưới đến điện toán đám mây theo hướng thị trường
8.2.1. Khối lượng công việc cho Tính toán hiệu năng cao
Hình 6 cho thấy thiết lập môi trường Aneka Cloud sử dụng để đánh giá hiệu suất. Cloud Aneka chứa 33 máy tính cá nhân (PC) với 1 nút chính (master) và 32 nút thực thi (execution) nằm trong 3 phòng thí nghiệm máy tính của sinh viên tại Khoa Khoa học Máy tính và Khoa Công nghệ phần mềm, Đại học Melbourne. Thiết lập này cho thấy Aneka Cloud thể hiện là một nguồn tài nguyên hợp nhất cho người sử dụng/người môi giới bởi tài nguyên vật lý máy tính được khai thác nằm trong 3 phòng thí nghiệm.
Hình 6: cấu hình Aneka Cloud
Khối lượng công việc tổng hợp được tạo ra bằng cách sử dụng lưu dấu (trace) dữ liệu của các ứng dụng tính toán hiệu năng cao (High Performance Computing – HPC). Các thí nghiệm sử dụng 238 yêu cầu đặt chổ trong 7 ngày cuối của dấu vết SDSC SP2 (từ
SDSC SP2 từ San Diego Supercomputer Center (SDSC) tại Mỹ được chọn bởi vì nó sử dụng tài nguyên cao nhất 83,2% trong tổng số những dấu vết có sẵn, điều này là lý tưởng cho mô hình một kịch bản khối lượng công việc nặng nề. Tuy nhiên, các dấu vết chỉ cung
cấp thời gian inter-arrival của yêu cầu đặt chổ, số lượng các bộ vi xử lý được dành riêng
(được thu hẹp phạm vi hoạt động từ tối đa 128 nút xuống còn 32 nút) và khoảng thời thời gian được dành riêng. Do đó, chúng tôi áp dụng một phương pháp tương tự (Irwin và những người khác đưa ra) để tổng hợp chỉ định các yêu cầu dịch vụ (thời hạn và ngân
sách) thông qua hai lớp yêu cầu: (i) mức độ khẩn cấp thấp (low urgency) và (ii) mức độ
khẩn cấp cao (high urgency).
Một yêu cầu đặt chổ i trong lớp khẩn cấp thấp có giá trị thời hạn cao deadlinei /
durationi và giá trị của ngân sách thấp budgeti / f(durationi). f(durationi) là một hàm biểu
diễn cho ngân sách được yêu cầu tối thiểu dựa trên durationi. Ngược lại, mỗi yêu cầu i
trong lớp khẩn cấp cao có giá trị thời hạn thấp deadlinei / durationi và giá trị của ngân
sách cao budgeti / f(durationi). Đây là thực tế bởi vì một người dùng gửi một yêu cầu cấp
bách hơn thì sẽ được đáp ứng trong một thời hạn ngắn hơn và phải cung cấp một chi phí cao hơn cho các thông báo ngắn. Giá trị được phân phối bình thường cho mỗi tham số thời hạn và ngân sách.
Để đơn giản, Aneka Cloud chỉ tính phí người dùng cho việc sử dụng các loại tài nguyên tính toán trên mỗi bộ vi xử lý (CPU) theo giờ (h). Do đó, người dùng không phải trả phí cho việc sử dụng các loại tài nguyên khác như bộ nhớ, lưu trữ và băng thông. Ngoài ra, chúng tôi giả định rằng người sử dụng/người môi giới chắc chắn có thể chấp nhận một khe thời gian đặt trước được đề xuất bởi Aneka Cloud nếu một trong những yêu cầu là không thể đáp ưng ngay, với điều kiện là các khe thời gian được đề xuất vẫn đáp ứng cả hai yêu cầu ứng dụng và dịch vụ của người sử dụng.
Như được liệt kê trong bảng 3, chúng tôi đánh giá hiệu suất của bảy cơ chế định
giá thể hiện cho ba loại cơ bản: (i) Fixed, (ii) FixedTime và (iii) LibraC+$. Mỗi cơ chế
định giá có cấu hình tối đa và tối thiểu để nhấn mạnh phạm vi hoạt động của nó. Cơ chế trả phí Fixed cố định một mức giá tại mọi thời điểm. Cơ chế trả phí FixedTime có mức giá sử dụng tài nguyên cố định trong khoảng thời gian khác nhau, với mức giá thấp hơn
được tính phí ngoài giờ cao điểm (12AM – 12PM) và một mức giá cao hơn cho cao điểm (12PM – 12AM).
Bảng 3: Các cơ chế giá
LibraC+$ sử dụng hàm định giá chi tiết hơn đáp ứng bốn yêu cầu cần thiết để định giá các nguồn lực nhằm ngăn ngừa tình trạng quá tải khối lượng công việc: (i) linh hoạt (flexible), (ii) hợp lý (fair), (iii) năng động (dynamic) và (iv) thích nghi (adaptive). Giá Pij
cho mỗi đơn vị tài nguyên được sử dụng bởi yêu cầu đặt chổ i tính toán tại nút j được tính
như sau: . Giá PBasej - thành phần giá tĩnh, là giá cho việc sử dụng nguồn tài nguyên tại
nút j có thể được sử dụng bởi các nhà cung cấp dịch vụ để tính giá tối thiểu nhằm thu hồi
chi phí hoạt động. Giá sử dụng PUtilij - là thành phần giá động, được tính như một yếu tố
của PBasej dựa trên việc sử dụng các nguồn tài nguyên tại nút j trong thời hạn cần yêu cầu i: . RESMaxj và RESFreeij tương ứng là đơn vị lớn nhất và đơn vị trống còn lại của
các nguồn tài nguyên ở nút j trong khoảng thời hạn của yêu cầu i tương ứng. Do đó,
RESFreeij đã được trừ đi các đơn vị tài nguyên đã được xác nhận đặt chổ và yêu cầu i cho khoảng thời hạn của nó.
Hệ số và tương ứng là thành phần tĩnh và thành phần động của LibraC+$ cung
cấp sự linh hoạt cho các nhà cung cấp dịch vụ dễ dàng cấu hình và thay đổi trọng lượng
của các thành phần tĩnh và động trên giá tổng thể Pij. LibraC+$ là hợp lý vì yêu cầu được
định giá dựa trên số lượng tài nguyên khác nhau được sử dụng. LibraC+$ cũng là động
vì giá tổng thể của một yêu cầu khác nhau tùy thuộc vào sự sẵn có của các tài nguyên
tùy thuộc vào nguồn cung hiện tại và nhu cầu tài nguyên hoặc là khuyến khích hay ngăn chặn yêu cầu đưa ra.
Tuy nhiên, ba cơ chế này dựa trên các tham số giá cả tĩnh, các tham số này thường không chính xác từ nhà cung cấp dịch vụ để tạo ra hiệu quả tốt nhất khi cần thiết. Do đó,
chúng tôi đề xuất LibraC+$Auto, một LibraC+$ tự nhiên tự động điều chỉnh dựa trên sự
sẵn có của các nút tính toán. Do đó, LibraC+$Auto xem xét việc định giá tài nguyên trên
các nút, không giống như LibraC+$ chỉ xem xét giá cả của các nguồn tài nguyên ở mỗi j
nút thông qua Pij.
Hình 7 cho thấy giá cả bình thường và hiệu suất doanh thu của bảy cơ chế giá cả trong Aneka Cloud cho các yêu cầu có mức độ khẩn cấp cao (với thời hạn ngắn và ngân sách cao) từ các ứng dụng tuần tự (đòi hỏi phải có một bộ xử lý để thực thi) trong khoảng thời gian 7 ngày. Trong hình 7, hai số liệu về hiệu suất là: (i) giá cho một xác nhận đặt chổ ($/CPU/ giờ) và (ii) doanh thu tích lũy để xác nhận đặt chổ ($).Cả hai số liệu đã được chuẩn hóa trong phạm vi từ 0 đến 1 để dễ dàng so sánh. Doanh thu cho một xác nhận đặt chổ là tổng doanh thu trên tất cả các nút dành riêng của nó tính theo giá chỉ định (phụ thuộc vào cơ chế giá cụ thể) và thời gian dự trữ tại mỗi nút. Sau đó, giá của một xác nhận đặt chổ được tính toán để phản ánh mức giá trung bình trên tất cả các nút dành riêng của nó.
Trong hình 7, với bốn cơ chế định giá cố định được liệt kê trong Bảng 3, FixedMax cung cấp doanh thu cao nhất (tối đa ràng buộc), tiếp theo là FixedTimeMax, FixedTimeMin và FixedMin có doanh thu thấp nhất (tối thiểu ràng buộc). Tuy nhiên, cơ chế FixedTime tính được dễ dàng hơn và đáng tin cậy hơn so với cơ chế cố định vì nó hỗ trợ một loạt các giá sử dụng tài nguyên trong khoảng thời gian khác nhau. Nhưng tất cả bốn cơ chế không xem xét các yêu cầu dịch vụ của người sử dụng như thời hạn và ngân sách.
Hình 7: Giá bình thường/doanh thu của các yêu cầu có mức độ khẩn cấp cao. Mặt khác, LibraC+$ tính phí với mức giá thấp hơn cho một yêu cầu có thời hạn dài hơn như một động lực để khuyến khích người dùng gửi yêu cầu với thời hạn dài hơn có nhiều khả năng được cung cấp hơn thời hạn ngắn hơn. Đối với một yêu cầu với thời hạn ngắn, Libra+$Max và Libra+$Min tính phí cao hơn tương ứng với tham số trong Bảng 3. Libra+$Max cung cấp doanh thu cao hơn Libra+$Min vì có giá trị cao hơn.
Cả hai Libra+$Auto và Libra+$Max có thể cung cấp doanh thu cao hơn đáng kể so với cơ chế giá khác thông qua giá cao hơn cho thời hạn ngắn hơn. Hình 7 cho thấy Libra+
cầu cao như trong nửa sau của ngày 1, 2, 3 và 5. Ngược lại, khi nhu cầu thấp như trong nửa đầu của ngày thứ 2, 3, 5 và 6, Libra+$Auto giữ giá giảm thấp hơn so với Libra+$Max để chấp nhận yêu cầu không sẵn sàng trả nhiều tiền hơn. Do đó, Libra+$Auto có khả năng khai thác giới hạn ngân sách để đạt được doanh thu cao nhất bằng cách tự động điều chỉnh cao hơn để tăng giá khi sự sẵn có của các nút là thấp và tự động điều chỉnh thấp hơn để giảm giá khi có nhiều nút không sử dụng nếu không sẽ lãng phí.