Mô hình hệ thống

Một phần của tài liệu Phân tích ảnh hưởng của trễ truyền thông đến hiệu năng của hệ thống tính toán song song (Trang 105)

6. Bố cục của luận án

4.3.1 Mô hình hệ thống

Để có thể tiến hành mô phỏng trên phần mềm, điều đầu tiên cần phải làm là xây dựng mô hình và biểu diễn hệ thống bằng các ký hiệu của mạng Petri. Công cụ mô phỏng mạng Petri có màu nói chung, phổ biến là CPN Tools (Đại học Aarhus, Đan Mạch) và TimeNet (Armin Zimmermann và Michael Knoke, Đại học kỹ thuật Berlin, CHLB Đức). Trong nghiên cứu này luận án sử dụng công cụ TimeNET 4.0 để thực hiện mô hình hệ thống tính toán song song ghép cụm.

Hệ thống song song ghép cụm với các cấu hình liên kết phổ biến là 2DTorus mà ở đó mỗi một nút xử lý kết nối với 4 nút kề cận (cấp độ của nút bằng 4). Mô hình gồm 5 nút xử lý: nút P0, nối với 4 nút kề cận P1, P2, P3, P4. Cấu trúc và công nghệ của mỗi nút Pi (i=0,1,2,3,4) đều giống nhau (Hình 4.6).

Đối với các liên kết mạng khác, việc mô hình hóa có thể được tiến hành dễ dàng theo cách tương tự.

93

Bảng 4.5 Danh sách các vị trí trong processor

Name Tokenype Tokenlist Queue Meaning

P0_mem0 int 8,16,32,64 Random

Processors: số thẻ ban đầu thể hiện số gói tin, với content =1 đối với P0 (cho biểu thức trên cung ra p = = 1)

CPU0_use int Random CPU thực hiện xử lý gói tin

CPU0_idle int 1 Random CPU rỗi, ban đầu được thiết lập 1 thẻ. P0_outb int Random Output buffer của Processor. Ban đầu

rỗng

P0_inb int Random Input bufer của Processor. Ban đầu rỗng

Danh sách thẻ (Tokenlist) (Bảng 4.5) của processor có nội dung (content) giống nhau cho tất cả các gói tin. Đối với P0: content = 1, P1: content =2, P2: content =3, P3: content = 4 và P4:content = 5.

Bảng 4.6 Các chuyển tiếp có trễ kích hoạt của processor

Name timeFunction localGuard Meaning

CPU0_ser EXP(CPU_service_time) p Thời gian mà CPU xử lý xong gói tin (CPU_service_time)

P0_req_net EXP(net_access_time) p

Thời gian truy yêu cầu truyền thông từ processor truy nhập tới mạng interconnect

Bảng 4.7 Các chuyển tức thời (trễ thời gian 0) của processor

Name Priority weight localGuard Meaning

get_CPU0 1 1.0E0 p Kích hoạt ngay khi có trong memory có gói tin To_mem0 1 1.0E0 p Kích hoạt ngay khi truyền thông từ processors

94

Mô hình mạng liên kết cụm được thể hiện trong Hình 4.7.

(a) SCPN của Interconnect (b) SCPN con của Interconnect

Hình 4.7 SCPN của Interconnect

Bảng 4.8 Danh sách các vị trí trong processor

Name Tokenype Tokenlist Queue Meaning

Net_inb int Random Input buffer của Interconnect Net_use int Random Interconnect thực hiện xử lý gói tin

Net_idle int 1 Random Interconnect rỗi, ban đầu được thiết lập 1 thẻ.

Net_outb int Random Output buffer của Interconnectr. Ban đầu rỗng

Bảng 4.9 Các chuyển tiếp có trễ kích hoạt

Name timeFunction localGuard Meaning

Net_ser EXP(net_server_time) p Thời gian truyền thông qua interconnect (net_server_time)

Bảng 4.10 Các chuyển tức thời (trễ thời gian 0) của Interconnect

Name Priority weight localGuard Meaning

get_net 1 1.0E0 p Kích hoạt khi có yêu cầu truyền thông interconnect

To_P0 1 1.0E0 p Kích hoạt khi output buffer của interconnect có thẻ: chuyển gói tin đến processors

Trong tính toán song song, một nút proccessor thực hiện cục bộ nhiệm vụ tính toán và chuyển kết quả tính toán trung gian cho các processor lân cận (có thể kề cận hoặc ở khoảng các xa tùy thuộc thuật toán song song của ứng dụng). Do đó, thông

95

thường các gói tin từ một processor sẽ gửi đến các processor khác chứ không quay lại chính nó. Vì vậy khi truyền qua mạng liên kết với trễ nhỏ nhất nếu đến các processors kề cận, hoặc với trễ trung bình được tính theo H - khoảng cách định tuyến trung bình đối với từng cấu hình. Ví dụ với 2Dtorus thì H =(1/2)n1/2, n = số nút processors.Ví dụ, P0 chuyển gói tin qua mạng sẽ chỉ có thể đi tới P1, P2, P3, P4.

Hình 4.8 sau đây là SCPN của hệ thống đa xử lý tính toán song ghép cụm sử dụng kết nối 2DTorus.

Hình 4.8 SCPN của hệ thống xử lý tính toán song song ghép cụm 2DTorus.

Trong mô hình này, các vị trí P0_mem (P1_mem, P2_mem, P3_mem, P4_mem) của các nút processors tương ứng (P0, P1, P2, P3 và P4) được thiết lập số lượng các gói tin ban đầu bằng số thẻ (8, 16, 32, 64). Sự kích hoạt ngay lập tức các chuyển tiếp get_CPU0 (get_CPU1, get_CPU2, get_CPU3, get_CPU4) thể hiện các gói tin của ứng dụng được chuyển vào CPU của processor để xử lý.

Trạng thái xử lý của CPU là các vị trí CPU0_use (CPU1_use, CPU2_use, CPU3_use, CPU4_use). Thời gian trễ xử lý CPU_service_time của processors có

96

phân bố mũ và được xác định bằng giá trị EXP (CPU_service_time). Các gói tin cần được gửi qua mạng liên kết đến các processors và được processor chuyển đến output buffer, được thể hiện bởi các vị trí P0_outb (P1_outb, P2_outb, P3_outb, P4_outb).

Từ các output buffer, processors chuyển đến mạng liên kết, được xác định bằng trễ truy nhập Interconnect net_access_time có phân bố mũ, được xác định bằng giá trị EXP(net_access_time). Các yêu cầu truyền thông từ processors được đưa vào input buffer của mạng liên kết, được thể hiện là vị trí Net_inb.

Thông thường mạng liên kết được kết nối bởi các switch/router với các buffers để xử lý định tuyến thông tin. Ngay khi có yêu cầu truyền trông trong Net_inb, chuyển tiếp get_net kích hoạt và mạng liên kết thực hiện truyền thông các gói tin (xác định tuyến, chuyển các gói tin). Trạng thái thực hiện truyền thông của mạng liên kết được thể hiện bởi vị trí Net_use. Chuyển tiếp Net_ser có trễ truyền thông (hay trễ kích hoạt) là net_service_time có phân bố mũ và được xác định bằng giá trị EXP(net_service_time).

Sau trễ truyền thông qua mạng liên kết, các gói tin được chuyển đến output buffer của mạng liên kết và các chuyển tiếp To_P0 (To_P1, To_P2, To_P3, To_P4) kích hoạt ngay chuyển các gói tin đến các input buffer của các nút processors đích tương ứng, được thể hiện bằng các vị trí P0_inb (P1_inb, P2_inb, P3_inb, P4_inb).

Tại các nút processor, sự xuất hiện của thẻ trong các vị trí P0_inb (P1_inb, P2_inb, P3_inb, P4_inb) làm cho các chuyển tiếp To_mem0 (To_mem1, To_mem2, To_mem3, To_mem4) kích hoạt ngay chuyển các gói tin vào các bộ nhớ tương ứng. Đến đây quá trình truyền thông giữa các nút processors trong hệ thống song song hoàn thành với một gói tin. Ở đây không quan trọng kích thước gói tin là bao nhiêu, bởi vì số lượng gói tin được chuyển trong một quãng thời gian xác định cũng là vấn đề ảnh hưởng đến trễ truyền thông. Ngoài ra, số lượng nút xử lý n, cấu hình mạng liên kết, kích thước gói được thể hiện ẩn đến trễ các số đo thời gian: net_access_time, net_service_time, mà luận án sẽ thay đổi trong các kịch bản mô phỏng.

Các hàm <p> trên các cung đảm bảo chuyển các thẻ đúng theo loại nội dung mà các thẻ trong các vị trí processor xác định. Hàm <m> trên cung đảm bảo trạng thái rỗi mới cho các mạng intranet và mạng liên kết. Các hàm new(0) xác định thực hiện xong truyền thông của các yêu cầu từ processors.

Với mô hình này, xác định các thông số hiệu năng như ở Bảng 4.11.

Bảng 4.11 Các thông số hiệu năng

Parameters Value Meaning

Interconnect_utilization #Net_use

Mức độ sử dụng của mạng interconnect: là số thẻ (số yêu cầu truyền thông của processors được phục vụ) trong vị trí Net_use. Mức sử dụng của mạng liên kết càng cao thì trễ truyền thông qua mạng liên kết càng

97

Parameters Value Meaning

lớn và thông lượng giảm.

Request_waiting #Net_inb

Số thẻ có trong vị trí Net_inb thể hiện các yêu cầu truyền thông (số gói tin) từ các processor chờ đợi mạng liên kết tiếp nhận truyền thông

Net_throughput (#Net_inb)*

(1-#Net_use) Thông lượng của Interconnect

Một phần của tài liệu Phân tích ảnh hưởng của trễ truyền thông đến hiệu năng của hệ thống tính toán song song (Trang 105)