1. Trang chủ
  2. » Luận Văn - Báo Cáo

Luận văn thạc sĩ Khoa học máy tính: Nghiên cứu giải thuật lập lịch cho ứng dụng tính toán hiệu năng cao trên nền điện toán đám mây

95 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên cứu giải thuật lập lịch cho ứng dụng tính toán hiệu năng cao trên nền điện toán đám mây
Tác giả Huỳnh Nguyễn Lộc
Người hướng dẫn PGS. TS. Thoại Nam
Trường học ĐẠI HỌC QUỐC GIA TP. HCM
Chuyên ngành Khoa học máy tính
Thể loại Luận văn thạc sĩ
Năm xuất bản 2013
Thành phố TP. HCM
Định dạng
Số trang 95
Dung lượng 17,46 MB

Nội dung

Đây là một động lực lớn để thực hiện các nghiên cứu trong đề tài luận văn.Chính vì thế, đề tài luận văn tập trung vào bài toán lập lịch cho hệ thống điệntoán đám mây nhằm đáp ứng các yêu

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM

TRƯỜNG ĐẠI HỌC BÁCH KHOA

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠITRUONG ĐẠI HỌC BACH KHOA —DHQG -HCMCán bộ hướng dẫn khoa học : PGS TS Thoại Nam s- 55+

Cán bộ chấm nhận xét 1 : TS Trần Ngọc Minh -<<<<<<<2

Cán bộ chấm nhận xét 2 : TS Phạm Văn Hậu - + s2:

Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp.HCM ngày 25 tháng 12 năm 2013

Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:

(Ghi rõ họ, tên, học hàm, học vi của Hội đông cham bảo vệ luận văn thạc sĩ)1 PGS TS Thoại Nam

2.TS Trần Ngọc Minh

3 TS Pham Văn Hiậu

.-4.TS Phạm Tran Vũ - 5 s sa

5 TS Lê Thanh

Sách -Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý

chuyên ngành sau khi luận văn đấđược sửa chữa (nêu có).

CHỦ TỊCH HỘI ĐÔNG TRƯỚNG KHOA

Trang 3

ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAMTRƯỜNG ĐẠI HỌC BÁCH Độc lập - Tự do - Hạnh phúc

KHOA

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên: Huỳnh Nguyên Loc MSHV: 11070458

Ngày thang, năm sinh: 30/11/1988 Nơi sinh: Hé Chí MinhChuyên ngành: Khoa học máy tính Mã số :604801

I TÊN ĐÈ TÀI:NGHIÊN CỨU GIẢI THUẬT LẬP LỊCH CHO ỨNG DỤNG TÍNH TOÁN HIỆUNANG CAO TREN NEN ĐIỆN TOÁN DAM MAY

Il NHIEM VU VA NOI DUNG:e Nghiên cứu ưu khuyết điểm của các hệ thông định thời hiện có trong hệ

thông điện toán đám mây và đưa ra mô hình phù hợp cho ứng dụng tính toánhiệu năng cao.

e Dé xuât giải thuật ánh xạ các tác vụ của ứng dung tính toán hiệu năng caovào một mô hình điện toán đám mây.

e Hién thực và đánh giá giải thuật đê xuât so với một sô giải thuật đã có

HI NGÀY GIAO NHIỆM VỤ :02/07/2012

IV NGÀY HOÀN THÀNH NHIỆM VỤ :22/11/2013V CAN BO HƯỚNG DAN:PGS TS Thoại Nam

Tp HCM, ngay thang năm 20 CAN BO HUONG DAN CHU NHIEM BO MON DAO TAO

TRUONG KHOA KH & KT MT

Trang 4

Lời cám ơn

Đầu tiên, tôi xin gửi lời cám ơn chân thành tới thầy hướng dẫn của tôi PGS TS.Thoại Nam Trong suốt quá trình thực hiện luận văn, thầy đã luôn quan tâm theo sátvà hỗ trợ tôi Những lời động viên và hướng dẫn tận tình của thay là nguồn động lựclớn nhất cho tôi hoàn thành luận văn này

Bên cạnh đó tôi cũng xin gửi lời cám ơn đến các bạn học viên cao học khóa2011, về những hỗ trợ và chia sẻ trong suốt quá trình tôi thực hiện luận văn này

Và cuối cùng, tôi xin gửi lời cám ơn sâu sắc đến gia đình, bạn bè và những ngườithân đã luôn là chỗ dựa tinh than vững chac, cô vũ cho tôi trong suốt quá trình học

tap, nghiên cứu.

TP Hồ Chí Minh tháng 11/2013

Huỳnh Nguyên Lộc

Trang 5

Tóm tắt luận văn

Trong những năm gan đây, sự xuất hiện của mô hình điện toán đám mây đã làmcho việc đáp ứng các nhu cầu tính toán của các nhóm nghiên cứu vừa và nhỏ đượcdễ dàng hơn Thay vì trang bị cho các nhóm nghiên cứu các hệ thông máy tính riênglẻ để hỗ trợ cho các hoạt động nghiên cứu của mình, tài nguyên tính toán sẽ được

tập trung tại một hoặc một vài nơi, và được quản lý theo mô hình điện toán đám

mây Các nhóm nghiên cứu sẽ được cung cấp tài nguyên tính toán theo đúng yêu

câu cho các hoạt động của mình khi cân thiệt.

Tuy nhiên, khác với các ứng dụng thông thường như dịch vụ web vốn được tốiưu cho điện toán đám mây, các ứng dụng có nhu câu sử dụng lại là các ứng dụngtính toán hiệu năng cao đòi hỏi nhiều tài nguyên, nhiều ràng buộc hơn như về băngthông, bộ nhớ, độ trễ và chưa thật sự có thể triển khai với hiệu năng cao trên hệthống điện toán đám mây Vì thế, vẫn đề được đặt ra là “làm sao để có thể thực thi

các ứnø dụng tính toán hiệu nang cao một cách hiệu quả trên điện toán dam mây”.

Luận văn trình bày việc thiết kế, xây dựng giải thuật lập lịch cho các ứng dụngtính toán hiệu năng cao để có thể dễ dàng triển khai trên nền điện toán đám mây.Hướng tiếp cận của luận văn đi từ các ứng dụng tổng quát với mô hình mạng giữacác tác vụ (máy ảo) được cho theo một đồ thị, từ đó phân tích một sỐ ứng dụng cụthé sử dung các mô hình mạng đơn giản hơn Dé giải quyết van dé này, luận van déxuất ba giải thuật chính cho ba mô hình mạng: mô hình theo dạng hình sao, mô hình

dạng virtual cluster và mồ hình dạng vòng ring dựa trên giải thuật tham lam và giảithuật quy hoạch động Ba giải thuật có thời gian thực thị trong thời gian đa thức và

đều cho ra kết quả tối ưu khi hoàn tất.Kết quả thử nghiệm cho thấy chiến lược lập lịch đề xuất có khả năng tận dụng tàinguyên tốt hơn chiến lược lập lịch tham khảo đã có sẵn Trong các thử nghiệm vềworkload tải về từ parallel workload archive [27], chiến lược lập lịch đề xuất có thểnâng hiệu suất tận dụng tài nguyên hệ thông lên 25% so với giải thuật tham khảo

Trang 6

In recent years, the emerging of cloud computing has provided groups ofresearchers with access to compute resources in easier manners Instead ofproviding a whole system for each group , all resources are gathered into one or fewplaces and can be monitored as a cloud computing model When a group requests,the system provides them exactly the same number of resources as desired.

However, most of common applications used in clouds such asweb-hostingservices are optimized for cloud computing while several applications used byreseachers are of high performance computing (HPC) These applications requiremore resources and have more contrainsts of bandwidth, memory, latency, etc., ,and currently are not ready to be deployed on clouds with high performance.Therefore, the question of “how to achieve better performance for HPC applicationson clouds” is always a challenge.

In our work, we have designed and built a scheduler for deploying HPCapplications on IaaS cloud systems We have analysed several general HPCapplications with inter-communication tasks (or virtual machines) Then, wepropose three algorithms for three models of inter-communication networksincluding star model, virtual cluster model and ring model All algorithms run inpolynomial time and give optimal result.

Our scheduling strategies can achieve better resource utilization than thereferenced ones In our experiments with workloads downloaded from the parallelworkload archive [27], our strategy can improve upto 25% better resourceutilization.

Trang 7

Lời cam đoan

Tôi xin cam đoan rằng, ngoài những tài liệu tham khảo và các tài liệu khác nhưđã chú thích nguồn gốc đính kèm thì toàn bộ nội dung trong báo cáo này đều là kết

quả nghiên cứu của chính tôi và do tôi tự soạn thảo.

Nếu có bất cứ sai phạm nào so với lời cam kết, tôi xin chịu các hình thức xử lý

theo quy định.

Huỳnh Nguyên Lộc

Trang 8

1.1 TÍNH CAP THIẾT CUA DE TAL cceecccesecccesccccecccccsccccsscccntscccescecenseccessccenssceeasscenseecs 11.2 PHAT BIEU VAN 22 21.3 DONG GOP CUA LUẬN VAN ccseccccscccccscccesscccesccccsecccnseccescccusssceeassceueceeatscensssceusece 31.4 CÂU TRÚC CUA LUẬN VĂN - -cc QC 1003000030000 00 1105311153511 1 53511155 11551155 4

CHƯƠNG 2.KIEN THỨC NEN TANG 2-5 5 se sư sex se sevee 5

2.1 CÔNG NGHỆ AO HOA cceccccssccccsscccecccccusecccsccccscceusscecasscensceccusscecusscensssceusscecsusceeueecs 52.2 DIEN TOAN DAM 801792 72.3 KIEN TRÚC HE THONG ĐIỆN TOÁN DAM MAY ccccsseccccesceecccceseccecsccecceacecccaaesececs 92.4 HA TANG PHAN CUNG cecccccceseccccccceccccssccccccucsececaucecceauececeauseccccucsececaaececeeauasecess 112.5 HE THONG ĐỊNH THOI CAP PHÁP TAI NGUYEN ccssecccccsecccccecsccccessececanececceneesceecs 12

CHUONG 3.CÁC CONG TRÌNH NGHIÊN CUU TRƯỚC 2 < se ssce 13

3.1 GIẢI THUAT LAP LICH THEO HƯỚNG TIẾT KIỆM NĂNG LƯỢNG << <<<s 133.2 GIẢI THUẬT LẬP LICH CHO CÁC UNG DỤNG CỤ TH - - 2 SE c c2 £s 143.3 GIẢI THUAT LAP LICH THEO HUONG TOI UU BANG THONG HỆ THÓNG - 15

3.3.1 Giải thuật lập lịch cho các ung dụng thiên về truy xuất dữ LIỆU - 153.3.2 Giải thuật lập lịch cho các ứng dụng thiên về giao tiẾp -.-c-ccccc«c: 16

3.3.2.1 Bộ định thời dùng dé chia sé băng thong hệ thống giữa các ứng dụng

3100 0 5 l6

Trang 9

3.3.2.2 Bộ định thời quan tâm đến giao tiếp giữa các máy ảo chạy cùng một

UNG MUNG oe eee 16

CHUONG 4.TONG QUAN BÀI TOÁN 5< se seetsserseerseessersserseersosee 194.1 UNG DỤNG TÍNH TOÁN HIỆU NĂNG CAO 2-2 + S1 1 EEE5211111111111151111121111 11 e6 19

4.2 THUC TIEN HE THONG 2.0 ceccccccccesesssecceeesseceecessnneeeecnsesaeeeeesesaaeeesesesaaeeeeeeseeeesenenaaes 194.3 BÀI TOÁN TONG QUAT CC 1001011111131 11111911 n1 TT vê 22

CHUONG 5.GIAI PHÁP CHO BÀI TOÁN TONG QUAT SU DỤNG ILP 24

5.1 LAP TRÌNH TUYEN TINH cccesessscccesesnneeceeessneceesenssaeeesensesaaeeeeessaaaeeeeessaaeeeeseneaeeeens 245.2 MÔ HÌNH HOA TAI NGUYÊN - 0013331321111 31111931 11111111 1111 1 1 2111 ng ren 25

5.2.1 Mô hình hóa tài nguyên hệ †hiỖHIg - - SE EEEEEkeEEkeEEEErerrkekerrrrreeo 255.2.2 Mô hình hóa tài nguyên yêu câu của người đùng, cccccecxsstcersree 25

5.3 GIẢI THUAT SỬ DỤNG ILP CHO BÀI TOÁN TONG QUÁTT c << << 5c c3 265.4 KIEM NGHIỆM VÀ DANH GIA c1 22111131311 1111 5111111111111 2111118111111 1 11 ng kg 28T02), VG SYMPHONY ộ( 26

5.4.2 Hệ thống thử ng hiỆNH - tt kề TT kg TT HT ru 285.4.3 Két qua thie nghiém nang an adád 29

5.443.1 Số lượng biến cece ecccccccccessssessesesscscscsesesssscssssesessesssssesucsssuesesessescsseeens 29

5.4.3.2 Thời gian thực t1 - -. c2 c1 3213123113113151 1351111118115 1111 811 81k rreg 305.5 KẾT LUAN ccecccccccessscceeensseeeeceseneaeeeesessaeeeeeessseeeeeeseeseeeeseneesaeeseesesaaeeeeesaeeeeeseneeaeeeees 30

CHƯƠNG 6.GIAI THUẬT DE XUAT 5- 5< ° << se se se sseseseesee 32

6.1 MÔ HÌNH HE THONG VÀ MỤC TIỂU c5 2223 23211113313 3335511551151 %2 326.2 GIẢI THUẬT CHO YÊU CÂU VỚI MÔ HÌNH MẠNG LA HÌNH SAO S52 33

6.2.1 Hướng tiếp cận thiết kế giải tÏiHẬT tk kEềkEEEEEEEEEEEEkEkEErrrrkrkrkerrre 34

5Ä 6,8 1n ẼẺẼ 6 6 eAđdđ((.cccadad 366.2.3 PRG CIC IGT HNUGL eeeeccccccccccccccesesseescessssneeeecesesaeeeccseesaaesessesssaessesessseceeceeeaaes 396.3 GIẢI THUAT CHO YÊU CÂU VỚI MO HÌNH MẠNG LA HÌNH SAO +5 s52 40

6.3.1 Hướng tiếp cận thiết kế giải tHuIẬT, St kề EEEEEEEEEEkekekeErrrrkrkekerrre 4]

6.3.2 GiGi thuti cccccccccccssccccccssecccccsscccccessscccceusscccceuuescceeussccceeececeeuuececeeuesccceeuneeceeees 46

6.3.2.1 Xây cây nhị phân từ cây hệ thong oo ccccccccccssesesessesteseseeseseeseseens 466.3.2.2 Giải thuật quy hoạch động (dynamic programming) dé xuất 46

Trang 10

6.4 GIẢI THUẬT CHO MÔ HÌNH MANG VÒNG RING ccsccccssccccceccccsecccneecceseeceneccceuecceanens 52

6.4.1 Hướng tiếp cận thiết kế giải tÏiHẬT St kề EEEEEEEEEEEEkEEEErrrkrkekerrree 52

O.4.2 c 1 nh a414I4534Ả 55

CHƯƠNG 7.THU NGHIỆM VA DANH GIA 2 5-5-< 5s seescscsessees 58

7.1 THUC NGHIỆM ĐO THỜI GIAN THUC THI CUA CÁC GIẢI THUAT -.- «+ + 587.1.1 Giải thuật cho mô hình mạng hinh SO cv ven va 597.1.2 Giải thuật cho mô hình mang virtual CLUStCP c Sex vivessees 597.1.3 Giải thuật cho m6 hinh MANG VÒNG TÌH Ă ào SG G Gv ven svxa ó07.2 THỰC NGHIEM ĐO ĐỘ HIỆU QUA CUA CHIEN LƯỢC LẬP LICH - - - - 61

7.2.1 Với yêu cầu virtual cluster dạng <K,2,30OO> cccccccccccccerscscesssssecesessssseeeeenens 627.2.2 Voi yéu cầu virtual cluster dạng <K,2,40OO> cccccccccccccerscscessssseceeessesseeeeeenens 637.2.3 Voi yéu cầu virtual cluster dạng <K,2,50OO> ccccccccccccccesscssessssseceseesssseeeecenens 64

7.2.4 Voi workload từ parallel WOrklodd qFCHIVÔ cà cv kkseessresre 65

7.2.4.1 Đánh giá thông qua số lượng yêu cầu có thé đáp ứng liên tục 667.2.4.2 Đánh giá thông qua hiệu suất sử dung hệ thống - 67CHUONG 8 TONG KET sscsssssssssssssscessscssssssssssesssssssssssnsssssssssssssssssessossenssssssssessssssses 71

8.1 KET QUA LUẬN VAN - Lccc c0 1001010131010 0111111100 1E TK nà 71W9)))):8:10/9)/€8957.009-15)00020277.= 71

Trang 11

MỤC LỤC HÌNH

Hình 1-1 Mô hình cơ bản của hệ thống điện toán đám mây - 5 2 c2+s+5+¿ 2Hình 1-2 Một mô hình mang giao tiếp của các máy ảo trong 1 yêu câu 3Hình 2-1 Mô hình cơ bản của hệ thống điện toán đám mây -¿- =2 55+: 10Hình 2-2 Mô hình mạng kết nối các máy vật lý trong hệ thống điện toán đám may 11Hình 3-1 Mô hình chiến lược sử dụng dịch vụ điện toán dam mây - 13

Hình 4-1 Mô hình của virfÏO - << 111 T9 ng ng ng 20

Hình 5-1 Biểu đồ gia tăng lượng biến ứng với từng yêu câu -¿¿7+5++xcc+¿ 29Hình 5-2 Biểu đồ thời gian chạy của giải thuật ILP - ¿2-52 25552 2z+£vzzzvzzxcze2 30Hình 6-1 Mô hình mạng hình sao của một yêu cầu gồm 4 máy ảo - 33

Hình 6-2 Đường đi của dữ liệu giữa hai máy ảo qua switch tầng 1 - 34Hình 6-3 Đường đi của dữ liệu giữa hai máy ảo đi qua switch tang 2 35

Hình 6-4 Đường di dữ liệu của master node khi có backend node đặt chung trên cùngMAY Vat LY 7 - A.::: 35

Hình 6-5 Mô hình virtual cluster với 4 MAY ảO - -c 1n SH nen 4]

Hình 6-6 Số lượng connections tao ra khi đáp ứng yêu câu của người dùng 42

Hình 6-7 Số lượng connections giữa hai domain khi chưa đáp ứng đủ yêu cầu người

0021 43

Hình 6-8 Số lượng connection khi đủ đáp ứng yêu cau người dùng 43Hình 6-9 Giao tiếp giữa các máy ảo thông qua viFtiO - 5-5252 2c+cccczxcrcrrrxee 41

Hình 6-10 Mô hình datacenter network N - c1 HH H* HH kg g1 xkg 47

Hình 6-11 Vi dụ đưa cây tam phân N về cây nhị phan T - - 2 2+s+s+szczzx+2 47Hình 6-12 Vi dụ ý tưởng giải thuật cho yêu cầu với mô hình virtual cluster 46

Hình 6-13 Ví dụ tính chi phi của node trong cây nhị phân TT” - «55+ ++<<<<+2 49

Hình 6-14 Mô hình dạng vòng ring cho 5 máy ảo với băng thông mỗi link là B 52Hình 6-15 Ví dụ liên kết tạo ra giữa hai domain khi chia yêu cầu 5 máy ảo ra làm hai

Hình 7-1 Biểu đồ thời gian thực thi các yêu cau dạng hình sao với băng thông đòi hỏi

Trang 12

Hình 7-2 Biểu d6 thời gian thực thi các yêu cầu dạng virtual cluster với băng thông

đòi hỏi là 1000IMMbps 5 22 22111121111 1111111 1111111111111 11111111 H11 KH HH nh 60

Hình 7-3 Biéu đồ thời gian thực thi các yêu cầu dạng vòng ring với băng thông đòi hỏi

Ta LOOOMDDS 22-1 61

Hình 7-4 Biéu đồ số lượng yêu cau với băng thông 3000Mbps hai giải thuật có thé đáp

'hl$_::uDỖỒaOẳaaaaaaaaaảaảaẳảaaẳảaaảảảŸŸ4 es 63

Hình 7-5 Biéu đô gia tăng của hiệu suất cho yêu cầu đòi hỏi 3000Mbps băng thông 63

Hình 7-6 Biểu đồ số lượng yêu cầu băng thông 4000Mbps hai giải thuật có thể đáp

'hl$_::uDỖỒaOẳaaaaaaaaaảaảaẳảaaẳảaaảảảŸŸ4 es 64

Hình 7-7 Biéu đồ gia tăng của hiệu suất cho yêu cầu đòi hỏi 4000Mbps băng thông 64

Hình 7-8 Biéu đồ số lượng yêu cau với băng thông 5000Mbps hai giải thuật có thé đáp

'hl$_::uDỖỒaOẳaaaaaaaaaảaảaẳảaaẳảaaảảảŸŸ4 es 65

Hình 7-9 Biéu đồ gia tăng của hiệu suất cho yêu cầu đòi hỏi 5000Mbps băng thông 65

Hình 7-10 Biểu đồ sé lượng yêu cau liên tục cả hai giải thuật có thé đáp ứng cho từng

workload thử nghiỆm - - - -.- - - c E21011833311 1119911111991 111191111 nh 66

Hình 7-11 Biểu đồ gia tăng hiệu suất của giải thuật đề xuất với từng workload thửHình 7-12 Biểu đồ gia tăng độ hiệu dụng của giải thuật đề xuất với workload có băngthông yêu cầu 1000-5000 Mbps 5-5: 521212221221 21211212122111112121111211 1121011112211 He 68

Hình 7-13 Biểu đồ gia tăng độ hiệu dụng của giải thuật đề xuất với workload có băngthông yêu cầu 1000-3000 Mbps 5-5: 521212221221 21211212122111112121121211 1121011112111 Hee 69

Hình 7-14 Biểu đồ gia tăng độ hiệu dung của giải thuật đề xuất với workload có băngthông yêu cầu 3000-5000 Mbps (5 1521212221221 21211212122111112121121211 112121112111 Hee 70

Trang 13

MỤC LUC BANG

Bảng 4-1 Kết quả thử nghiệm l - 5 52255221 E212E212312121212111 112121211 re 21Bảng 4-2 Kết qua thử nghiệm 2 - 1 222521 12221212121121211211111 11211121 re 21Bang 7-1 Bảng thời gian thực thi các yêu cau dạng hình sao với băng thông đòi hỏi là

VOL LO (004 i0 66

Bang 7-8 Bang so sánh kết quả thực thi các yêu cau giữa hai giải thuật với 10

workload có băng thông 1000-5000 Mbps - - 2G HH SH HH ng nh 68

Bang 7-9 Bảng so sánh kết quả thực thi các yêu cau giữa hai giải thuật với 10

workload có bang thông 1000-3000 Mbps 2G TH HH SH HH ng khe 69

Bảng 7-10 Bảng so sánh kết quả thực thi các yêu cầu giữa hai giải thuật với 10

workload có băng thông 4000-5000 Mbps 2G HH SH HH nh 70

Trang 14

Chương1 GIỚI THIẾU

1.1 Tính cấp thiết của đề tài

Cuộc sống ngày càng phát triển thì càng đặt ra nhiều bài toán lớn, phức tạp cầnmáy tính giải quyết Hầu như tất cả các lĩnh vực từ khoa học đến kinh tế đều cần

đến máy tính để giải quyết van dé như vật lý, hóa học, sinh học, y học và tài chính

Đây đều là những bài toán có một khối lượng tính toán lớn; các máy tính don xử lýtruyền thống cần một thời gian dài mới có thể giải quyết các vấn đề này được

Xử lý song song là một giải pháp để giải quyết những vấn đề trên Việc sử dụngnhiều bộ vi xử lý cùng lúc để giải quyết một bài toán có thé rút ngăn thời gian tínhtoán, đáp ứng được nhu cầu trong thực tế Môi trường tính toán song song với mụctiêu cung cấp một khả năng tính toán thật lớn để giải quyết một bài toán trong mộtthời gian ngắn nhăm đáp ứng yêu câu về thời gian thực được gọi là môi trường tínhtoán hiệu năng cao (High Performance Computing - HPC) Nhiéu mô hình máy tinhđã được nghiên cứu va phát triển nhăm phục vụ cho việc xử lý song song Trong đómô hình đa máy tính gồm nhiều máy tính với nhiều bộ xử lý kết hợp với nhau thôngqua giao tiếp mạng là mô hình thông dụng, hiệu quả cao và dễ dàng triển khai nhất

hiện nay.

Sự ra đời của điện toán đám mây và xu hướng dùng máy tính ảo thời gian gầnđây đã mang lại một hướng mới trong việc phát triển các hệ thống đa máy tinh ảophục vụ các nhu câu đa dạng của người dùng theo hướng hiệu năng cao Với điệntoán đám mây, người dùng khi cân thiết có thể thuê hàng loạt các máy tính ảo đểchạy các ứng dụng song song của mình một cách dễ dàng Khi không cần sử dụng,tài nguyên sẽ được trả lại cho hệ thống và có thể được cấp phát cho người dùngkhác Chính vì thế, về phía người dùng, chi phí cho việc thực thi ứng dụng đượcgiảm xuống mức tối thiểu trong khi về phía nhà cung cấp dịch vụ, họ có thể tậndụng tối đa tài nguyên sẵn có để phục vụ được nhiều người dùng, mang lại lợi

nhuận cho công việc kinh doanh.

Trang 15

Tuy nhiên, các ứng dụng tính toán hiệu năng cao hiện tại đòi hỏi một SỐ yêu cầunhất định về số lượng các máy tính toán, năng lực tính toán cũng như về khả nănggiao tiếp qua mạng giữa các máy với nhau mà các hệ thống điện toán đám mây hiệntại mà cụ thể là các công cụ lập lịch và quản lý tài nguyên chưa thể đáp ứng tốtđược Đây là một động lực lớn để thực hiện các nghiên cứu trong đề tài luận văn.

Chính vì thế, đề tài luận văn tập trung vào bài toán lập lịch cho hệ thống điệntoán đám mây nhằm đáp ứng các yêu cầu đặt ra của các ứng dụng tính toán hiệunăng cao song song voi VIỆC tối ưu hóa việc sử dụng tài nguyên của hệ thong diéntoán đám mây nhằm mang lai lợi ích tốt nhất cả cho người dùng lẫn nhà cung cấp

Hình 1-1 Mô hình co bản của hệ thống điện toán đám may.Hình 1-1 mô tả thành phan cơ bản nhất của một hệ thống điện toán đám mây.Nhà cung cấp dịch vụ (Cloud provider) sẽ nhận yêu cầu cấp máy từ người dùng, baogôm số lượng máy người dùng mong muốn, cấu hình từng máy ảo (số lượng cputừng máy, số lượng Ram cần thiết, dung lượng lưu trữ) và một mô hình mạng chỉ rõra yêu cầu băng thông giữa các máy ảo yêu cầu (Hình 1-2) Cloud provider sẽ gọiđến module lập lịch (Cloud Scheduler) kiểm tra xem yêu cầu của người dùng cóđược chấp thuận hay không? Nếu được chấp thuận, Cloud Scheduler sẽ tìm kiếm

Trang 16

một cách sap xếp các máy ao theo yêu câu của người dùng vào các máy vật lý ở

Physical Host Pool một cách thích hợp mà vẫn đảm bảo các yêu cau đặt ra

OE

OD

Hình 1-2 Một mô hình mạng giao tiếp của các máy ảo trong 1 yêu cau.Vấn đề quan tâm của luận văn là xây dựng một giải thuật lập lịch cho hệ thốngcấp phát tài nguyên (Cloud Scheduler) dé có thé kiểm tra và sắp xếp một cách hợplý các máy ảo đảm bảo các yêu cau của người dùng sử dụng các ứng dung tính toánhiệu năng cao lên các máy vật lý trong hạ tầng hệ thông điện toán đám mây sao chotận dụng được tối đa tài nguyên của hệ thống hiện có trong một thời gian có thểchấp nhận được Giải pháp dé xuất là gom cụm các máy ảo lại gần nhất có thé, tậndụng khả năng giao tiếp lớn giữa các máy ảo được đặt trên cùng một máy vật lý vàứng dụng giải thuật quy hoạch động để xác định giải pháp tối ưu việc sử dụng tàinguyên hệ thong cho một số mô hình mạng tiêu biểu

1.3 Đóng góp của luận vănNhững đóng góp chính của luận văn như sau:

- _ Giải thuật tối ưu cho bai toán lập lịch tong quát chú ý đến băng thông

giữa các máy ao sử dụng Integer Linear Programming (ILP).

- _ Giải thuật lập lịch tối ưu cho bài toán lập lich cho 3 kiến trúc mạng cobản giữa các máy ảo, gdm:

o Kiến trúc mạng hình sao,o Kiến trúc mạng dạng vòng ring,o Kiến trúc mang dang virtual cluster.- - Một module cho phép người dùng có thé sử dung các giải thuật của

luận văn dé ra.

Trang 17

- Các kết quả nghiên cứu và thực nghiệm trong giai đoạn luận văn đãđược công bố trong kỷ yếu của hội nghị quốc tế ICUFN2013 (Ubiquitous

and Future Networks (ICUFN), 2013 Fifth International Conference).

1.4 Cau trúc của luận văn

Phần tiếp theo của luận văn có cau trúc như sau:Chương 2: Các kiến thức nên tảng liên quan đến dé tài, bao gồm kỹ thuật ảo hóa,điện toán đám mây, kiến trúc và hạ tầng mạng trong điện toán đám mây, bộ định

thời.

Chương 3: Tổng quan các nghiên cứu vẻ lập lịch trong điện toán đám mây.Chương 4: Tổng quan bài toán đặt ra

Chương 5: Giải pháp cho bài toán đưa ra sử dung integer linear programming.

Chương 6: Giải thuật đề xuất cho yêu cau với 3 mô hình mạng tiêu biéu.Chương 7:Thử nghiệm và đánh giá các giải thuật đề xuất

Chương 8: Tổng kết các kết quả của luận văn và dé xuất hướng phat triển

Trang 18

Chương2 KIEN THỨC NEN TANG

2.1 Công nghệ ao hóa

Ao hóa [26] là phương pháp chia các tài nguyên của một máy tính thành nhiềumôi trường thực thi khác nhau Kỹ thuật ảo hóa tạo ra nhiều phân vùng độc lập (các

máy ao (Virtual Machine — VM) hoặc máy chủ riêng ảo (Virtual Private Servers —

VPS) trên một máy chủ vat lý Do đó, chúng ta có thé sử dung ảo hóa dé phân chiacác máy chủ vật lý thành nhiều môi trường khác nhau, mỗi môi trường là một máyảo (VM) chạy hệ điều hành riêng của mình Điều này có nghĩa là nhiều máy ảo cóthé thực thi trên một máy vật lý giống như mỗi máy ảo có hệ thống phan cứng vật lýriêng của mình Trừu tượng hơn thì đây là phương pháp tách riêng các phần cứngvật lý và hệ điều hành nhằm cung cấp khả năng sử dụng tài nguyên IT một cách

hiệu quả và linh hoạt hơn.

Có nhiều loại kỹ thuật ảo hóa cung cấp các tính năng tương tự nhau nhưng khácnhau về mức độ trừu tượng và các phương pháp được sử dụng cho việc ảo hóa Cóba phương pháp ảo hóa pho biến: ảo hóa hoàn toàn (full virtualization), ảo hóa mộtphan (para—virtualization) và ao hóa với sự hỗ trợ của phân cứng (Virtualization at

Hardware Abstraction Layer — HAL hoặc Hardware Virtual Machine — HVM).

Ao hóa hoàn toàn (full virtualization) là sự mô phỏng toàn bộ phần cứngthông qua phan cứng hoặc phần mềm hoặc kết hop cả phan cứng lẫn phan mềm.Cac máy ao dựa trên mô hình chủ — khách (host — guest), mỗi khách sẽ chạy trênmột lớp ảo hóa mô phỏng theo lớp phần cứng vật lý Cách tiếp cận này không cầnthay đối hệ điều hành của máy khách Cách này cũng cho phép người quản trị tạo ranhững máy khách với các hệ điều hành khác nhau Máy khách không biết về hệđiều hành của máy chủ và hoạt động giống như nó đang chạy trên phần cứng thựcsự Tuy nhiên, máy khách yêu cau tài nguyên máy tính thực sự của máy chu, do đó,

cần có một lớp hypervisor để phối hợp các lệnh của CPU Lop hypervisor được gọi

là công cụ giám sát máy ảo (Virtual Machine Monitor — VMM).

Ao hóa kép (Paravirtualization) được thực hiện bằng cách định nghĩa một kiến

Trang 19

máy ảo (VMM) Kiến trúc này tương tự nhưng không hoan toàn giống với các phancứng vật lý năm bên dưới Sự khác biệt chính là các lệnh ưu tiên liên quan đếnCPU, bộ nhớ và xuất nhập được thay thế bằng các “hypercalls” đến hypervisor,trong khi các lệnh không ưu tiên vẫn như cũ.

Áo hóa sử dung phan cứng trừu tượng (Virtualization at HardwareAbstraction Layer-HAL hay Hardware Virtual Machine-HVM): Những đổimới trong phan cứng gan đây, đặc biệt là CPU va các thành phan bộ nhớ (kiến trúcIntel VT-x và AMD-V), cung cấp kiến trúc ảo hóa cấp nên tảng (platform-levelarchitecture) Kỹ thuật HAL ánh xạ tài nguyên ảo lên nguồn tài nguyên vật lý HALkhai thác sự tương tự trong kiến trúc của các nền tảng máy chủ và máy khách dégiảm thời gian thông dịch các lệnh từ kiến trúc máy khách sang kiến trúc máy chủ,và cũng không cân phải thay đổi hệ điều hành trên máy khách Hầu hết các chương

trình giả lập máy tính hiện nay sử dụng kỹ thuật ảo hóa này.

Ưu nhược điểm của công nghệ ảo hóa:- — Ưuđiểm:

= Sử dụng hiệu quả phần cứng thông qua việc hợp nhất các hệ thốngkhác nhau vào một máy chủ vật lý Điều này làm giảm chi phí phần cứng.tiết kiệm thời gian quản lý và chi phí hoạt động (như năng lượng, hệ thống

làm mát và diện tích).

= Ao hóa rất có ý nghĩa với môi trường nghiên cứu đặc biệt với nhữngcơ sở không đủ nguồn lực mở rộng các trung tâm tính toán nhưng cần cungcấp nhiều môi trường thực thi khác nhau cho nghiên cứu

= Kha năng dễ phục hồi của các máy ảo đặc biệt quan trọng trong cáchoạt động nghiên cứu Điều này cho phép kháng lỗi, đảm bảo việc thực thi

các ứng dụng tính toán khoa học với thời gian dài.

= VMM cung cấp một máy ảo trừu tượng để hệ điều hành và các ứngdụng cơ bản có thể chạy trên đó

= Phân vùng: Nhiều ứng dụng và hệ điều hành có thé được hỗ trợ trongmột hệ thống vật lý Tài nguyên tính toán được xem như đồng nhất và cấp

Trang 20

=" C6 lập: Một máy ảo là hoàn toàn cô lập với máy chu và các máy ảo

khác Nếu máy ảo đó gặp sự có, tất cả những máy ảo khác không bị ảnhhưởng Dữ liệu không bi rò rỉ giữa các máy ảo va các ứng dụng chỉ có théliên lac với nhau thông qua kết nỗi mạng đã được cấu hình

=" Bao đóng: Môi trường may ảo hoàn chỉnh được lưu thành một tập tin

duy nhất, dé dàng sao lưu, di chuyển va sao chép Chuan phần cứng ảo hóađược đưa ra cho các ứng dụng để bảo đảm tính tương thích

- Nhược điểm:= Diém yếu dé thấy nhất là các máy khách sẽ phụ thuộc vào sự 6n địnhcủa máy chủ Bắt cứ sự cỗ nào về hệ điều hành, hệ thống mạng hoặc phancứng trên máy chủ có thé ảnh hưởng đến tat cả máy khách trong hệ thống

= Mot van đề khác gặp phải khi sử dụng ảo hóa là những nhu cau độtbiến về CPU Nếu số lượng các máy ảo chạy trên máy chủ được xác địnhbởi tải CPU trung bình dự kiến, những đột biến về sử dụng có thé yêu cầunhiều hơn nguồn tài nguyên có sẵn, kết quả là chất lượng dịch vụ của hệthống máy khách giảm xuống trầm trọng

- Tuy nhiên, khi so sánh với những lợi ích của ảo hóa, có rất nhiềutrường hợp trong hoạt động nghiên cứu khoa học rất cần đến môi trường thực

thi áp dụng công nghệ ảo hóa.

2.2 Điện toán đám mây

Điện toán đám mây là một dạng hệ thống tính toán mà tài nguyên được ảo hóavà cung cấp như một dạng dịch vụ thông qua hệ thống mạng Người dùng khôngcần biết những công nghệ phức tạp đăng sau đó mà chỉ nhìn thay một hệ thống như

những máy vật lý [2].

Một hệ thống điện toán đám mây bao gồm các đặc tính sau:

On-Demand: nhiệm vụ co bản của điện toán đám mây đó chính là phải có khả

năng đáp ứng nhu cầu tính toán của người dùng mỗi khi họ cần Từ góc nhìn củangười dùng, lượng tài nguyên mà hệ thông cung cấp phải gần như vô hạn, có nghĩalúc nào cũng phải cung cấp đủ khi người sử dụng can Đây là một yếu tố quan trọng

Trang 21

vì nó giúp người dùng tránh khỏi tình trạng dau tư cho những tài nguyên không baogiờ sử dụng hay những vấn đề về mở rộng hệ thống sau này.

Pay-per-use: Người sử dụng chi chi tra cho thời gian sử dụng tài nguyên cua

mình Không như những cách tính toán truyền thong, tai nguyên được đặt tại một vi

trí có định và do người sử dụng làm chủ, toàn bộ thời gian rảnh của hệ thong ngườidùng phải chi trả chi phí bảo trì cũng như những chi phí khác Đối với hệ thôngchạy trên điện toán đám mây, bai toán chi phí được giảm thiểu đáng kê

Rapid elasticity: Nhà cung cấp dịch vụ phải có kha năng mở rộng hệ thong dễdàng để điều chỉnh lượng tài nguyên của hệ thống đáp ứng yêu cau thay đổi tài

nguyên sử dụng của người dùng.Phân loại điện toán đám mây:

- Phan loai theo pham vi

=" Private Cloud: một hệ thong Cloud được triển khai trên một mạng nội

= laaS (Infrastructure as a Service)

O Tài nguyên được cung cấp như một dịch vụ bao gồm: servers,

mang, bộ nhớ, CPU, không gian lưu trữ, công cu quan lý.

O Khả năng mở rộng hệ thống tùy theo nhu cau ứng dụng

O Chi phí được tính toán đựa trên tài nguyên su dung.O Đa người dung.

O Hướng đến khách hang là các doanh nghiệp

= PaaS (Platform as a Service)

O Platform được cung cấp dé người dùng sử dung ma không cầnquan tâm đến việc quản lý các hardware hay software bên dưới

O Người sử dung phat triển, kiểm tra va cài đặt ứng dung trênmột môi trường tích hợp duy nhất

Trang 22

O Hỗ trợ sự cộng tac của các thành viên trong development team.O Giao tiép thong qua Web interface.

= SaaS (Software as a Service)

O Nhà cung cấp cho phép ứng dụng được sử dung như một dichvụ Ứng dụng đó có thể được cài đặt trên host server để người dùng

request đên hoặc download về thiệt bi rôi xóa sau khi su dụng.

O Có thé truy cập từ xa qua mạng Internet.O Su dụng mô hình 1-n: chi có một thực thể của ứng dụng ton tại.O Thường được tích hợp vào một hệ thống lớn các ứng dụng giao

tiép với nhau.

2.3 Kiến trúc hệ thong điện toán đám mây

Các hệ thống điện toán đám mây đang được sử dung trong công nghiệp hiện tạilà những hệ thống phức tạp, tuy nhiên, trong giới hạn luận văn, dé tài xin nêu rakiến trúc private cloud co bản bao gồm 4 thành phan chính (Hình 1-3):

- Người dùng (user): là người yêu cau tai nguyên hệ thống va chi trảcho việc sử dụng tài nguyên, có rất nhiều dạng người dùng, từ người dùngthuê tài nguyên để thử nghiệm, chạy các dịch vụ, hay tính toán nâng cao Tuy

nhiên, trong luận văn chỉ tập trung vào người dùng cho các ứng dụng tính toánhiệu năng cao.

- Dịch vụ quan lý và cấp phát tài nguyên: là dich vu co bản nhất củađiện toán đám mây, yêu cầu từ người dùng sẽ được đưa tới resourcemanagement dé kiếm tra xem tải nguyên hệ thống có đáp ứng được yêu cầungười dùng hay không? Nếu đáp ứng được thì ước lượng giá tiền người dùngphải chi trả dé được cấp phát tai nguyên là bao nhiêu Ngoài ra, nó còn cóchức năng giám sát tài nguyên hệ thống và các tài nguyên đã cấp phát chongười dùng dé tính toán chi phí khi người dùng sử dụng các dịch vụ đi kèmđược cung cấp

- May ảo (virtual machines): là tài nguyên được cấp cho người dùng va

được quản ly bởi resource management and allocator.

Trang 23

- Hạ tang phần cứng (physical architecture): bao gồm các máy vật lykết nối với nhau bởi hệ thống mang, các máy ảo theo yêu cầu của người dùng

sẽ được đặt lên các máy vật ly một cách thích hop.

ue ® © 6 & e=

Service Request Examiner and Admission Control

“iN “iNResource MÃ X

Management and Pricing Resource Allocator Accounting

SLA) với người dùng.

Đề cung cấp tài nguyên cho yêu cầu của người ding, dau tiên, hệ thống sẽ gửiyêu câu đến hệ thông cấp phát tài nguyên (Resource allocator), hệ thông cấp phát tàinguyên sẽ lay thông tin về tài nguyên hiện có trong hệ thống, sử dụng giải thuật capphát tài nguyên hiện có dé tim ra một cách sắp xếp các máy ảo theo yêu cau lên cácmáy vật lý trong hệ thống Nếu tìm được, chức năng tính phí sẽ đưa ra chỉ phí mà

người dùng sẽ phải chi trả cho việc khởi tạo các máy theo yêu câu.

Trang 24

Ngoài ra, đối với người dùng muốn sử dụng thêm dịch vụ do hệ thống cung cấp,hệ thống giám sát dịch vụ sẽ liên tục cập nhật thông tin sử dụng và hệ thống thống

kê sẽ đưa ra mức chi phí phụ thêm mà người dùng sẽ phải chi trả.

2.4 Hạ tầng phần cứng

Hạ tang phần cứng của hệ thông điện toán đám mây bao gồm nhiều cum máytính kết nỗi với nhau thông qua hệ thống mạng tốc độ cao Mỗi cum trong hệ thốngnày lại bao gồm nhiều máy vật lý kết nối lại với nhau thông qua nhiều lớp bộchuyển mạch (Hình 2-2) Mô hình hạ tầng của hệ thống tính toán ngày nay được dé

cap trong [2][20] với 3 lớp mang:

- Lớp 1: Các máy vat lý năm trong cùng một rack sẽ kết nối với nhau

thông qua Top Of Rack switch (TORs).

- Lớp 2: Các TORs sẽ kết nối với nhau thông qua Aggregation switch

(As), băng thông cua As thông thường sẽ lớn hon của các TORs.

- Lớp 3: Các As sẽ kết nói với nhau bằng Core switch (Cs) tao thànhmột hệ thông mạng kết nối tất cả các máy vật lý lại với nhau

CoreSwitchAggregation

SwitchesTop of Rack(TOR) Switch

Hình 2-2 Mô hình mạng kết nối máy vat ly trong hệ thong điện toán đám mây.Một đặc điểm đáng chú ý trong hệ thống mạng trong thực tế là tổng băng thôngcủa các kết nỗi bên dưới sé cao hơn băng thông đường đi ra ngoài Ví dụ trong Hình

Trang 25

2-2, thông thường tông dung lượng băng thông của các máy vật lý tới Top Of RackSwitch sẽ cao hơn băng thông đi ra ngoài (băng thông từ TOR switch đếnAggregation switch) Chính vì thế, đối với những yêu cau dịch vụ từ người dùng tớihệ thống điện toán đám mây có yêu cầu đảm bảo chất lượng băng thông giao tiếpthì kiến trúc hệ thống mạng là một yếu tố cần phải quan tâm.

2.5 Hệ thông định thời cấp phát tài nguyên

Hệ thống định thời cấp phát tài nguyên đảm nhận nhiệm vụ quản lý và chia sẻtài nguyên vật lý trong hệ thống giữa người dùng với nhau

Việc chia sẻ tài nguyên giữa người dùng khác nhau là công việc khó khăn bởi vì

mỗi người dùng có những yêu cầu về tài nguyên khác nhau, mức độ sử dụng khácnhau cũng như thời gian sử dụng khác nhau Có thể nhận ra răng, không một giảithuật định thời cấp phát tài nguyên nào có thé đáp ứng được tất cả các yêu cau từphía người dùng Đề giải quyết van dé này, hệ thống sẽ có nhiều giải thuật định thờikhác nhau tương ứng những nhu cầu sử dụng khác nhau

Khi một người dùng yêu cầu dịch vụ từ phía nhà cung cấp dịch vụ, một “hợpđồng” được lập ra giữa người sử dụng và người cung cấp dịch vụ, người dùng cóthé yêu cầu một số các yêu cau về tài nguyên sử dụng (số lượng cpu, ram cần thiết,băng thông mạng ) và ngược lại nhà cung cấp dịch vụ cũng sẽ có một số điềukhoản dịch vụ (đảm bảo năng lực tính toán tối thiểu, số lượng ram, băng thông tốithiéu, ) Khi hai bên chấp thuận hợp đồng đã đưa ra, hệ thông định thời cấp pháttài nguyên sẽ sử dụng giải thuật định thời tương ứng để tìm ra một cách cấp phát tài

nguyên hiện có cho người dùng mà vân đảm bảo hợp đông đó.

Trang 26

Chương 3 CÁC CÔNG TRÌNH NGHIÊN CỨU LIÊN QUAN

Một datacenter thường bao gồm rất nhiều máy vật lý để đáp ứng nhiều yêu cầutừ phía người dùng, việc gán các yêu cầu của người dùng đến các máy vật lý tronghệ thống được thực thi bởi hệ thống lập lịch Chính vi thé, lập lịch có vai trò rấtquan trọng trong hệ thống điện toán đám mây

Thông thường, chiến lược lập lịch được nhắm tới là tối ưu chỉ phí, tối ưu tàinguyên sử dung các chiến lược khác như đáp ứng QoS, SLA, chia sẻ tài nguyên, lỗi,độ tin cậy, các ràng buộc thời gian thực cũng được xem xét nghiên cứu Hệ thônglập lịch có thể được chia làm hai cấp độ [10]: cấp độ người dùng và cấp độ hệthong Ở cấp độ người dùng, hệ thống lập lịch giải quyết các van dé về dich vụ giữangười dùng va nhà cung cấp như giá cả, cam kết dịch vu, Ở cấp độ hệ thống lậplịch giải quyết các vấn đề về cấp phát tài nguyên đến các máy vật lý bên trong

datacenter nhằm tối ưu về lợi nhuận hay về hiệu suất của hệ thống Trong luận văn

này, chúng tôi tập trung nhiều hơn vào phân tối ưu hiệu suất hệ thong tuy nhiên van

dam bảo một sô cam két dịch vụ dat san với người dùng.

Maximize MaximizeCost-Performance RevenueFinishing Time +` Revenue

J Cost + Utilization

Cloud Cloud

User 1 Request Resources Provider

Hình 3-1 Mô hình chiến lược sử dụng dịch vụ điện toán đám mây

3.1 Giải thuật lập lịch theo hướng tiết kiệm năng lượng

Bài toán quản lý tài nguyên hướng đến năng lượng hiệu quả (Energy-efficientresource management) đặt ra nhiều thách thức trong cộng đồng tính toán hiệu năng

Trang 27

cao và điện toán đám mây [11] [12] Động cơ của điện toán dam mây là tính kinh tẾ.Với chủ sở hữu của hệ thống điện toán đám mây thì họ muốn giảm chi phí hoạtđộng của trung tâm dữ liệu (data center), trong đó hóa đơn tiền điện phải trả cho

công ty điện lực là khoản chi phí không nhỏ Cac data center thường tiêu thụ một

lượng điện rất lớn và tăng mạnh, điều này đồng nghĩa với việc khí thải CO, sẽ thảira môi trường nhiều gây nhiều hậu quả (global warming) Năng lượng là một van décó tính toàn cầu, dưới thực trạng các máy chu trong một data center khi vận hành sẽdùng một lượng lớn điện năng trực tiếp cho hệ thống các máy chủ Một máy chủhoạt động ở trạng thái tải thấp sẽ gây lãng phí điện năng, ví dụ các máy chủ chạykhông tải (mức tải sử dụng bộ xử lý là 0%) thì vẫn dùng một phần công suất nhất

định so với một máy chủ chạy 100% tai của bộ xử lý Quản lý tài nguyên tính toán

hướng đến năng lượng hiệu quả nhăm giảm thiểu sự lãng phí này ở các máy chủ chuyển một số máy chủ về trạng thái tiết kiệm năng lượng (stand-by) hoặc tắtnguôn (power off) là can thiết

-3.2 Giải thuật lập lịch cho các ứng dụng cụ thểMột điểm mạnh của điện toán đám mây là có khả năng thực thi các tác vụ khó,tiêu tốn nhiêu thời gian, tài nguyên hay các ứng dung đắt tiền mà người dùng thôngthường khó có thê triển khai được điển hình là các ứng dụng thiên về xử lý dữ liệu.Với điện toán đám mây, các ứng dung sẽ được dựng sẵn trên hệ thống va ngườidùng chỉ can trả chi phí nhỏ để sử dụng

Hadoop là hiện thực phố biến nhất của mô hình Map-Reduce dùng trong nghiêncứu cũng như thương mại Hadoop hỗ trợ người dùng tạo ra các ứng dụng xử lýsong song trên hàng ngàn máy vật lý với lượng dữ liệu lên đến hàng Petabyte Cácbộ định thời cho ứng dung của người dùng trên hệ thong này đã được nghiên cứu

như FIFO [13], “fair scheduler” [14] và “capacity scheduler” [15] FIFO thực thi

theo thứ tự thời gian đến của các yêu cầu từ người ding “Fair scheduler” tạo ra các“task slots” chia sẻ chung các yêu câu từ người dùng do đó các tác vụ có thời gianthực thi CPU sẽ đều nhau “Capacity scheduler” sử dụng nhiều queues, mỗi queue

chứa một phân tài nguyên hệ thông, môi một tác vụ từ người dùng sẽ được gửi tới

Trang 28

một queue, các tác vụ trong cùng một queue sẽ thực thi trên lượng tài nguyên queueđó năm giữ “Capacity scheduler” cũng hô trợ độ ưu tiên, trong các queue, tac vụnào có độ ưu tiên cao sẽ được thực thi trước.

3.3 Giải thuật lập lich theo hướng tối ưu băng thông hệ thông

Trong hệ thống điện toán đám mây, các máy vật lý được kết nối với nhau bởi hệthống mạng tốc độ cao Đối với các ứng dụng sử dụng mạng, một phần băng thôngcủa hệ thống sẽ được sử dụng để đáp ứng người dùng Chi phí xây dựng cho hệthống mạng chiếm một phan lớn trong chi phí xây dựng ha tầng của điện toán đámmây, các switch tong (core switch, aggregation switch) thông thường rất đắt hơn sovới các máy chủ dùng làm máy vậy ly [2][5][20], chính vi thế, tận dụng tốt băngthông mạng của hệ thống là một trong những yếu tô được quan tâm cho các bộ lập

lịch hiện tại.

3.3.1 Giải thuật lập lịch cho các ứng dụng thiên về truy xuất dữ liệuCác bộ định thời này quan tâm nhiều đến các ứng dụng có sự truy cập dữ liệuthường xuyên từ máy ảo và hệ thống lưu trữ, từ đó tăng tính cục bộ giữa dữ liệu vàcác máy ảo để làm giảm thời gian truy xuất dữ liệu, từ đó tận dụng tốt hơn băngthông hệ thống cũng như giảm thời gian thực thi của tác vụ Eslam Mohammadi [9]đề xuất giải thuật sử dụng khả năng tính toán và băng thông của máy vật lý làm tiêuchí sắp xếp vị trí các máy ảo vào máy vật lý Ngoài ra, các chính sách để đảm bảohiệu suất hệ thông bằng cách di dời các máy ảo đến những máy vật lý khác khi cótình trạng không 6n định về mạng Tuy nhiên, tác giả không quan tâm đến mô hìnhmạng hệ thống đang sử dụng mà chỉ quan tâm băng thông giữa các máy vật lý vớinhau vì chỉ cần một cặp máy vật lý có băng thông thay đổi khi đối chiếu lên mô

hình mạng thì sẽ làm cho toàn bộ những cặp băng thông của các máy vật lý khác

thay đối theo

Trang 29

3.3.2 Giải thuật lập lịch cho các ứng dụng thiên về giao tiếp3.3.2.1 Bộ định thời dùng để chia sẻ băng thông hệ thông giữa các ứng dụng khác nhau

Các nghiên cứu này không tập trung vào các ứng dụng giao tiếp lẫn nhau màquan tâm đến chất lượng dịch vụ mạng cung cấp cho người dùng [8][18][22].Alexader Stage [8] sử dụng chiến lược sắp xếp các máy ảo vào các máy vật lý màđảm bảo khả năng tính toán yêu cầu không vượt quá khả năng của máy vật lý Sauđó, một hệ thống dự đoán tình trạng sử dụng mạng của các máy ảo sẽ đưa ra kết quảcó nghẽn mạng không? Nếu có thì sẽ tiến hành di dời các máy ảo đến các máy vậtlý khác Bài báo tập trung vào việc tối ưu giải thuật di chuyển máy ảo, ngoài ra hệthống dự đoán và di dời máy ảo cũng quan tâm đến kiến trúc mang của hệ thong déđưa ra dự đoán tình trạng mạng cũng như vị trí máy vật lý thích hợp nhất cho việc

di dời Tuy nhiên, việc di dời máy ao trong khi máy ao dang được sử dụng cũng lam

máy ảo ngưng hoạt động trong một thời gian không nhỏ cũng như làm tiêu tốn mộtlượng lớn băng thông trong quá trình di dời So với việc sắp xếp tốt các máy ảongay ban đầu có thé giúp tiết kiệm được rất nhiều thời gian di chuyển máy ảo, băngthông hệ thông cũng như cung cấp được dịch vụ tốt hơn cho người dùng

3.3.2.2 Bộ định thời quan tâm đến giao tiếp giữa các máy do chạy cùng một ứng dụngCác nghiên cứu chính có thé kế đến của Guiyi Wei [7], trong đó tác giả đề xuấtgiải thuật dựa trên “game theory” giải thuật riêng lẻ từng ứng dụng để lựa chọn rađược kết quả tốt nhất về khả năng tính toán mà không tính đến giao tiếp Sau đó giảithuật sẽ tong hợp các kết quả này và kèm theo phan tính toán về giao tiếp dé đưa ralời giải tong thé cho việc sắp sếp các tác vụ lên hệ thông sao cho chi phí tiêu tốnthấp nhất và hiệu năng đạt được ở mức cao có thể chấp nhận được Tuy giải thuật cóthé sắp xếp nhiễu máy ảo lên cùng một máy vật lý nhưng những máy ảo chạy cáctác vụ nhỏ của cùng ứng dụng lại được sắp xếp trên các máy vật lý khác nhau.Chính vì thế, giải thuật không tận dụng tối ưu được tài nguyên hệ thống để giảmthiểu thời gian chạy của ứng dụng Ngoài ra, giải thuật đòi hỏi biết trước thời gianchạy các tác vụ nhỏ của ứng dụng, điều này khó có thể áp dụng trong thực tế Ngoài

ra, còn có chiên lược migrate các máy ao đê tôi ưu thời gian chạy ứng dụng cũng

Trang 30

được nêu ra bởi Nikos Tziritas [24], tuy nhiên, việc di dời máy ảo trong lúc thực thi

hiện tại không những tiêu tốn khá nhiều tài nguyên hệ thống mà còn tiêu tốn một

khoảng thời gian chờ tạm dừng ứng dụng.

Tarun Agarwal [6] đề xuất một giải pháp lập lịch cho các ứng dụng thiên về giaotiếp với nhau sử dụng hai dé thị, một cho yêu cầu của người dùng gọi là “taskgraph” biểu diễn yêu cầu về băng thông giữa các tác vụ theo yêu cầu của ngườidùng, một cho kiến trúc hệ thông gọi là “topology graph” biểu diễn băng thông giữacác máy vật lý có trong hệ thống Một giải thuật heuristic được đưa ra dé sắp xếptác vụ yêu cầu của task graph lên topology graph sử dụng số lượng “hops” mà dữliệu phải đi qua trong hệ thống Tuy nhiên, giải thuật phụ thuộc nhiều vào hàm dựđoán f„„ nên khó có khả năng kiểm nghiệm chính xác độ hiệu quả, ngoài ra, giảithuật chỉ dựa vào lượng băng thông biểu diễn giữa hai máy vật lý với nhau chứ chưathật sự quan tâm đến kiến trúc mạng của hệ thống, chính vì thế, giải thuật sẽ xảy ravấn đề nếu các máy vật lý đi qua nhiều tầng switch để kết nối với nhau và tổng băng

thông downlink của một switch lớn hơn uplink của switch đó.

Một số nghiên cứu đã chỉ ra rằng một số ứng dụng HPC [3] có thể chạy tốt trênnên điện toán đám mây với một số tinh chỉnh bên trong datacenter Ví dụ như nhómnghiên cứu của Abhishek Gupta [5] đã đưa ra kết quả thử nghiệm một số ứng dụngHPC chạy trên các may ảo sử dụng OpenStack, đồng thời nghiên cứu cũng dé ragiải thuật lập lịch cho các ứng dụng này bằng cách gom cụm các máy ảo chạy ứng

dụng HPC vào các máy vật lý, cụm máy vật lý trong cùng một rack Tuy nhiên,

nghiên cứu hiện tại vẫn chưa đưa network topology của hệ thông vào xem xét kỹlưỡng mà chỉ gom nhóm ở dạng rack nên đối với các ứng dụng đòi hỏi số lượngmáy ảo lớn hơn số lượng máy trong một rack thì giải thuật sẽ phát sinh van đề về

nghẽn mạng hay không tận dụng băng thông mạng hiệu quả.

Dutta [4] đề xuất giải thuật lập lịch một yêu cầu của người dùng với dạng“virtual cluster” lên một “network topology” hình cây cho trước bao gồm cácswitch và các máy vật lý Giải thuật giải quyết được trường hợp tối ưu cho ứng

dụng có mô hình “virtual cluster” được đưa ra trong thời gian đa thức Tuy nhiên,

Trang 31

mô hình đã đề xuất Ngoài ra, chi phí sử dụng trong giải thuật cũng chưa hợp lý chocác ứng dụng tính toán hiệu năng cao đã dé ra và có thé gây ra tình trạng nghẽnmạng, làm giảm hiệu suất của hệ thống Trong luận văn, chúng tôi mở rộng một sốtrường hợp khác cho giải thuật này, đồng thời áp dụng các chiến lược lập lịch khácthích hợp hơn cho ứng dụng tính toán hiệu năng cao để tạo ra một bộ lập lịch tốt

hơn cho các ứng dụng này.

Trang 32

Chuong 4 TONG QUAN BÀI TOÁN

4.1 Ứng dung tinh toán hiệu năng cao

Ứng dụng tính toán hiệu năng cao đang phát triển nhanh trong các phòng thínghiệm khoa học, trong lĩnh vực học thuật cũng như trong lĩnh vực kinh tế và phântích Các ứng dụng tính toán hiệu năng cao thông thường đòi hỏi các yêu cầu đặcbiệt [5] để đạt được hiệu suất cao:

- Nang luc tinh toan,

- — Độ trễ thấp,- Băng thông kết nỗi cao.Tuy nhiên, các hệ thong điện toán đám mây được thiết kế dùng dé chạy các ứngdụng kinh doanh hay các ứng dụng web, chính vì thế, để thực thi hiệu quả các ứngdụng tính toán hiệu năng cao với các yêu cầu nêu trên cần phải có một số tinh chỉnhnhất định trong hệ thống điện toán đám mây, đặc biệt các hiệu chỉnh về khả năngkết nối là đặc biệt quan trọng [3][5]

Mục tiêu của virtio là cung cap các API driver luận lý cho toàn bộ các máy ao

chạy trên máy vật lý để giao tiếp một cách nhanh và hiệu quả

Trang 33

DriverKVM § ,

Hinh 4-1 M6 hinh cua virtIO.

Khi người dùng sử dung máy ảo dé thực thi các tác vụ I/O, thông qua virtio,guest kernel sẽ gọi các chức năng tương ứng tới Hypervisor Specifics PV code détương tác với host kernel thông qua backend driver và từ đó giao tiếp với thiết bịngoại vi nếu cần thiết (Hình 4.1) Để kiểm chứng độ hiệu quả của virtio, chúng ta sửdụng hai máy vậy lý để thử nghiệm

- May | đóng vai tro là server# Intel Xeon CPU E5506 @ 2.13GHzm 16GB DDR3-1333 ECC SDRAM= 1 Gbps Network ethernet

- May 2 đóng vai tro là client# Intel Core 17 2600 @ 3 4Ghz"m 4GB DDR3-1333 SDRAM= 1 Gbps Network ethernet

Trên máy server, thử nghiệm tao ra một máy ảo có cầu hình nhỏ như sau:

- 1 CPU

- 2 GB Ram- Virtual network ethernet

Thử nghiệm | sử dung iperf dé do băng thông giữa máy ảo làm server và máyclient sử dụng virtio va kién trtic mang ảo hiện có (e1000) với 3 trường hợp:

Trang 34

1 Do trong 60 giây với TCP window size là 65536 với dữ liệu một

chiều từ client đến server.2 Do trong 60 giây với TCP window size là 65536 với dữ liệu hai chiều

qua lại giữa client và server.3 Đo trong 60 giây với TCP window size là 65536 với dữ liệu được gửisong song từ 4 threads ở client lên server.

Thử nghiệm 1 được đo 3 lần để ra được kết quả trung bình như Bang 4-1 Thửnghiệm | cho ta thay độ hiệu quả cua virtIO rất gan voi bang thong thuc tế của thiết

bị mạng (1O000Mbps).

E1000 virtual network interface Virtio networkinterfaceTrường hop 1 286 Mbps 913 Mbps

313 Mbps 987 MbpsTrường hop 2

(245 Mbps out, 65 Mbps in) (513 Mbps out, 474 Mbps in)

Truong hop 3 312 Mbps 955 Mbps

Bang 4-1 Kết quả thử nghiệm 1.Ngoài ra, dé tìm hiểu độ hiệu quả của virtIO khi dùng để giao tiếp giữa các máy

ảo trên cùng một máy vật lý, thử nghiệm 2 được đưa ra tương tự thử nghiệm | Thử

nghiệm tiến hành tạo ra hai máy ảo cau hình như ở thử nghiệm 1 và cùng chạy trên

máy vật lý 1 va cũng tiến hành 3 loại đo đạc như ở thử nghiệm Ì Kết quả được biểu

diễn ở Bảng 4-2

Virtio networkinterfaceTrường hop 1 8.1 GbpsTrường hop 2 8.4 Gbps

Trường hop 3 8.2 Gbps

Bang 4-2 Kết quả thử nghiệm 2.Do không cần phải đi trực tiếp qua thiết bị mang mà dữ liệu chỉ di chuyền nội bộtrong cùng một máy nên băng thông giao tiếp trong thử nghiệm là rất lớn Tận dụngđược khả năng của virtio sẽ giúp chúng ta tiết kiệm được một phần lớn băng thôngsử dụng trong hệ thống điện toán đám mây Chính vi thế, giải thuật dé xuất trong

Trang 35

luận văn cũng sử dụng virtio như một trong những yếu t6 chính dé cải thiện bộ lậplịch trong hệ thong điện toán đám mây hiện tại.

4.3 Bài toán tổng quát

Gia sử ta có

- Một ứng dung tinh toán hiệu năng cao với các yêu cầu như sau:= Có n tác vụ tương ứng với máy ảo thực thi, mỗi máy ảo v; cần mộtlượng tài nguyên nhất định k cores cpu

"Các máy ảo trong quá trình xử lý cần trao đối dữ liệu với nhau đượcdiễn tả bởi một dé thị vô hướng G, V là tập hợp đỉnh của G tương ứng cácmáy ảo trong ứng dụng, mỗi đỉnh v € V tương ứng một máy ảo trong ứngdụng Mỗi cạnh €¡vj;€ G tương ứng với yêu cầu trao đối dữ liệu giữa haimáy ảo vị và v; Giá tri c của cạnh e tương ứng băng thông giao tiếp yêucầu giữa hai máy ảo

- Mot hé thong điện toán dam may bao gồm:

= Một tập các máy vật ly M, mỗi máy vật lý p;€ M bao gồm:O Số lượng cpu trống x (cpu cores),

O Lượng băng thông hiện có của thiết bị mạng y (Mbps),

O Lượng bang thông giữa các may ao trong cùng một may z

(Mbps) được do bang virtIO." Các may vật lý được kết nối với nhau băng một hệ thống switches

theo mô hình cây T Cac nodes lá trong T là các máy vật lý, các node con

lại là các switch Tap L là tập hợp các cạnh (link) của T, mỗi cạnh / trong T

có giá tri c¡ là băng thông giữa hai node trong T.

© P(p;.p¡) là tập hợp các link / trong T để p; và pj sử dụng để giaotiếp với nhau

- Gọi |] là một cách sắp xếp các máy ảo trong V vào các máy vật lý

trong M |](v¡) là cách đặt máy ảo vị vào máy vật ly trong M, chi phi băng

thông sử dụng trong hệ thông dé giao tiếp giữa hai máy ảo vj và vị là tong băng

Trang 36

thông yêu cầu giữa hai máy ao đi qua đường đi P(p,.pj với pi = [](v) va pj =[1v

Cong(] [(v¡).] v;)) = Lv epIœ,i(y)) Cop)theo yêu cầu vào các máy vật lý M sao cho tối thiêu băng thông tiêu tốn Cong củahệ thống T khi các máy ảo trao đổi dữ liệu với nhau thông qua hệ thống mạng màvẫn đảm bảo các yêu cầu ràng buộc đặt ra để thực thi ứng dụng

Cong = Min 3; ; evi +; Cong([]J(0;), [I(;))

Trang 37

Chương5 GIẢI PHÁP CHO BÀI TOÁN TỔNG QUÁT

Bài toán lập trình tuyến tính có thé được biéu diễn dưới dạng:Maximize CˆX

Subject to Ax <b

And x >0

Bài toán vi du về linear programming: Gia sử một nông dân có một mảnh dat Lkm” để trồng trọt Có 3 cách để trồng là trồng toàn bộ lúa mì, trồng toàn bộ lúamạch hay trồng kết hợp cả 2 Cứ mỗi km2 trồng lúa mì thì cần F, kg phân bón, P¡kg thuốc trừ sâu trong khi mỗi km” trồng lúa mạch F, kg phân bón, P; kg thuốc trừsâu S; là giá của 1 km” lúa mì khi thu hoạch, S› là giá cua 1 km lúa mạch khi thuhoạch Tìm cách trồng tốt nhất dé tối ưu lợi nhuận thu vẻ

Goi Xị, X: là diện tích trồng lúa mi và lúa mạch tương ứng Ta có mồ hình linear

programming như sau:Maximze: ŠS¡*xị + So*x>Subject to:

Xị +X <L (L là tong diện tích)F)*x, + Fa*x¿ < F (F là tong số phân bón)Pi#xi + Ps#x¿ <P (P là tong số thuốc trừ sâu)

X, 2 0, X» = 0

Trang 38

5.2 Mô hình hóa tài nguyên

5.2.1 Mô hình hóa tài nguyên hệ thống

Giả sử ta có tập các máy vật lý khả dụng là P bao gồm M máy vật lý Mỗi máyvật lý P;€ P (1 <i < M) có một tập các tài nguyên (như số lượng cores, Ram )được biểu diễn bởi H? Tap hợp các vector tài nguyên H? gọi là tập tài nguyên hệthống HỶ

P=({P,|1<i<M)

H’ ={H? |1<i<M&& Pe P}

Đối với van dé cần khảo sát, H’ = [{cpu,internal bandwidth}] bao gồm số lượng

cpu cores còn lại và lượng băng thông cục bộ có thé sử dụng của một máy vật lý batkỳ nam trong hệ thống

Đối với kiến trúc mạng của hệ thống, giả sử trong hệ thống mạng có L links (cáclink kết nối giữa các switch với nhau hay các link kết nối máy vật lý đến cácswitch), mỗi link có băng thông hiện có là C¡, ta định nghĩa tập hợp C là tập hợp tatcả các băng thông hiện có trong hệ thống

C={C,|1<1<L}

Ta định nghĩa một tập hợp X bao gồm tat ca đường di giao tiếp giữa hai máy vậtlý bất kỳ năm trong hệ thống mạng

X={X#„|1<1<LU&& 1<mn<M}1 nếu link l nằm trên đường di từ may P,, đến P,Xmn =

mn 0 nếu khác

5.2.2 Mô hình hóa tài nguyên yêu cầu của người dùngGiả sử số lượng máy ảo người dùng yêu cầu là w, tập hợp W biểu diễn các máyảo w¡ được yêu cầu

W = {w;|1<j<w}

Ta định nghĩa S là tập hop các yêu cầu về số lượng cpu Š¡ ứng với từng máy ao

wi <j <w)

S={S,|1<j<w}

Trang 39

Ngoài ra, ta còn định nghĩa ma trận R bao gồm w hàng w cột dùng dé biểu diễngiao tiếp mạng giữa từng cặp máy ảo theo yêu cầu của người dùng Môi phan tửRE R biểu diễn lượng băng thông yêu cầu giữa hai máy ảo w; và Wj.

R=({R,|l<i<w &&1<j<w}

Rj = 0 nếu ¡ =j

5.3 Giải thuật sử dụng ILP cho bài toán tổng quát

Ta gọi tập hợp Z là tập hợp kết quả lập lịch cho một yêu cầu của người dùng.Các phân tử Z i biểu diễn may ảo w; có được đặt trên máy vật lý pm hay không, nếu

có Z¡” sẽ có giá tri là 1, ngược lại là 0.

Z={ZTM|1<m<M,1<i<w}

Zi =[ nếu may ao wi được dat trên may vat lý P,,

U0 nếu ngược lại

Ta gọi r¡ là băng thông tiêu tốn lên link | khi đặt các máy ảo của người dùng vàohệ thống

Mục tiêu của bài toán đặt ra là : Minimize 4°41,

Các ràng buộc của bài toán:- Một máy ao chỉ được đặt lên một máy vat ly

l1 =1,Vi

- Tổng tai nguyên của các máy ảo đặt lên cùng một máy vật lý không

vượt quá tài nguyên cho phép của máy vật lý đó

- Tổng băng thông giao tiếp giữa các máy ảo trong cùng một máy vật lý

không đượ vượt quá băng thông cục bộ của máy vật lý

Lj Rụ * 2" x Z7" < Amo, VM- Tổng băng thông giao tiếp của các máy ảo đi qua một link không

được vượt quá băng thông cho phép của link đó

Yj) Lonny Rij * 2” * 2ƒ” * Xmn SC), VÌ

Trang 40

Biêu diện bài toán dưới dạng linear programming:

Minimize Yin

Subject to

(1) m=12; =1,Vi

(2) i=1 2; * Tưng S = tam vm

(4) dij) umn) Rij * Zi" * Zi" * Xin <(Œ¡, VÌ

And

0<Z”i<1

Ở bất phương trình thứ 4, do linear programming không áp dụng cho các bấtphương trình không tuyến tính nên ta sẽ áp dụng phương pháp tạo biến an dé đưa vềcác biểu thứ tuyến tính Ta đặt biến Qi; sao cho

Biéu diễn bài toán dưới dang Integer Linear ProgrammingMinimize S47

Ngày đăng: 24/09/2024, 07:16

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN