6. Cấu trúc của luận án
1.2.3. Mạng liên kết trên chip
Mạng liên kết trên chip (OCIN) được nghiên cứu nhiều trong tiến trình phát triển công nghệ CMP đa luồng. Hiện nay, có một số cấu hình OCIN được sử dụng
phổ biến trong kiến trúc CMP đa luồng như: mạng giao nhau (Crossbar) được sử dụng trong chip Corei7 của Intel, Power5 của IBM, UltraSPARCT1/2 của Sun [1, 26]; mạng vòng (Ring) được sử dụng trong các chip Power4, Cell của IBM [1, 26, 54]; mạng lưới 2D (2DMesh) được sử dụng trong chip Tile64 64-lõi của Tilera, Tera-Scale 80-lõi của Intel [1, 11, 54, 71]... Ngoài ra, các mạng liên kết như: mạng
cây béo (Fat tree), mạng hình bướm (Butterfly), mạng siêu lập thể (Hypercube)
mạng lưới vòng 2D (2DTorus), mạng lưới 3D (3DMesh), mạng lưới vòng 3D (3DTorus),... cũng được các nhà nghiên cứu và nhà sản xuất chip quan tâm nghiên cứu đến [11, 15, 28, 44, 47, 51, 61, 63, 70, 71].
Cấu trúc OCIN cung cấp một không gian thiết kế rộng bao gồm cả cấu trúc
liên kết mạng, thuật toán định tuyến, và kiến trúc bộ định tuyến, tất cả đều ảnh hưởng đến hiệu năng của CMP đa luồng. Khi số lượng lõi xử lý tích hợp trên chip
càng lớn thì vấn đề mạng liên kết các lõi trên chip càng phức tạp và trễ truyền thông
giữa các lõi qua mạng liên kết là đáng kể, khả năng mở rộng bị hạn chế [28]. Đây là
vấn đề thách thức lớn cho các nhà nghiên cứu.
Để đánh giá ảnh hưởng của các cấu trúc OCIN đến hiệu năng của CMP đa
luồng, các nghiên cứu hiện nay đều dựa vào một số thông số mạng như sau [48, 68]:
- Số liên kết (L): toàn bộ số liên kết trong mạng.
- Cấp độ của nút (d): số kênh liên kết với một nút trong mạng.
- Đường kính của mạng (D): khoảng cách định tuyến dài nhất giữa hai nút trong mạng.
- Khoảng cách trung bình (H): là khoảng cách định tuyến trung bình giữa
tất cả các cặp nút.Thông số này ảnh hưởng đến trễ.
- Độ rộng chia đôi (B): số lượng các liên kết của lát cắt nhỏ nhất mà nó tách mạng thành hai nửa bằng nhau.
- Độ phức tạp sinh trưởng (G): số nút có thể được bổ sung thêm.
- Trễ: thời gian trễ giữa gửi và nhận. Người thiết kế cấu trúc mạng xác định trễ phần cứng: mạng càng rộng thì trễ càng lớn, đó là trễ trên đường dây. Người lập trình quan tâm đến trễ phần mềm: từ chương trình đến chương trình.
- Băng thông của một liên kết: băng thông của một liên kết mạng bằng W×1/t. Trong đó: W là số lượng các đường dây, t là thời gian trên bit. Băng thông thường được đo bằng Gigabytes (GB).
- Băng thông hiệu dụng: thông thường nhỏ hơn băng thông của một liên kết do trễ của gói tin. Băng thông là thông số quan trọng đối với các ứng dụng
với các bản tin kích thước lớn.
- Băng thông của độ rộng chia đôi: là tổng băng thông của tất cả các liên kết qua lát cắt nhỏ nhất mà nó tách mạng thành hai nửa bằng nhau. Hay là băng
thông đi qua phần hẹp nhất của mạng.
Băng thông của độ rộng chia đôi quan trọng đối với các thuật toán mà
trong đó tất cả các CMP đa luồng cần phải truyền thông với nhau. Băng thông
của độ rộng chia đôi có ảnh hưởng đến trễ.
Hình 1.9 trình bày một số cấu hình OCIN phổ biến cho các hệ thống đa xử lý
và CMP đa luồng.
(a): Cây nhị phân (b): Cây béo (c): Vòng (d):2DMesh (e): 2DTorus
(f): Crossbar (g): Supercubes (h):3DMesh (i): 3DTorus Hình 1.9: Một số cấu trúc mạng liên kết đa xử lý [15, 24, 48, 54, 62, 71].
Các thông số của các mạng nDMesh và nDTorus:
1)Tổng số nút:
n -1
i i = 0
2)Đường kính:
1/n
Dn(N 1) đối với mạng nDMesh;
1/ n
D(n / 2)(N ) đối với mạng nDTorus.
Trong đó: ki là số liên kết (hay số nút) ở từng hướng i, và n là số hướng.
3)Khoảng cách trung bình:
1/n
H(n / 3)N đối với mạng nDMesh;
1/n
H(n / 4)N đối với mạng nDTorus.
4)Cấp độ của nút:
d = n đến 2nđối với mạng nDMesh;
d = 2n đối với mạng nDTorus.
5)Cấp độ lớn nhất của nút:
max
d = 2Bn, trong đó: Bn là lấy ở các góc cho cảmạng nDMesh và nDTorus.
6)Độ rộng chia đôi: ( n 1)/n
BN đối với mạng nDMesh;
(n 1)/n
B2N đối với mạng nDTorus.
Trong đó: ki: cơ số lớn nhất. Khi tất cả các hướng đều có cùng cơ số (cùng số
liên kết hay số nút) k = k; i = 0, 1,..., n -1, i khi đó N = k nút, n dmax = 2Bn , Bn: lấy ở các góc chung cho cả mạng nDMesh và nDTorus, băng thông của độ rộng chia đôi ở mạng nDMesh là n -1
Bk , và ở mạng nDTorus là n -1
2Bk .
7)Số liên kết:
1/n 1/n
LnN (N 1) đối với mạng nDMesh;
1/n 1/n
LnN (N ) đối với mạng nDTorus.
Sự gia tăng tính phức tạp của các CMPđa luồng làm cho trễ truyền thông toàn cục trên CMP trở thành vấn đề chính cần phải khắc phục để cải thiện hiệu năng cho CMP đa luồng. Tuy nhiên, do hạn chế băng thông và tiêu thụ công suất cao của các
mạng liên kết kim loại, nên các OCIN điện tử thông thường không thể thỏa mãn yêu cầu hiệu năng và công suất của CMP đa luồng trong tương lai.