1. Trang chủ
  2. » Công Nghệ Thông Tin

KIẾN TRÚC CÁC HỆ THỐNG TÍNH TOÁN - CHƯƠNG 3 pdf

53 288 1

Đ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

Định dạng
Số trang 53
Dung lượng 3,46 MB

Nội dung

 Trong nhiều kiến trúc xử lý song song hiện tại hoặc đang được đề xuất, một mạng liên kết được sử dụng để thực hiện sự trao đổi dữ liệu giữa các bộ xử lý hoặc giữa các bộ xử lý với các

Trang 2

Lưu ý của tác giả

 Không được tự ý sao chép hay quảng bá bài giảng này khi chưa được sự đồng ý của các tác giả.

 Địa chỉ liên hệ của các tác giả:

Nguyễn Phú Bình

Email: ngphubinh@yahoo.com Mobile: 0983533925

Website: http://phubinh.vicosoft.com/ktmt

Trần Trung Kiên

Email: trankien_bk@yahoo.com Mobile: 0914919392

Bộ môn Kỹ thuật Máy tính

Khoa Công nghệ Thông tin Trường Đại học Bách Khoa Hà Nội C1- P322, Tel: 8696125

Trang 3

Kiến trúc các hệ thống tính toán

Chương 3

MẠNG LIÊN KẾT

(Interconnection Networks)

Nguyễn Phú Bình – Trần Trung Kiên

Bộ môn Kỹ thuật Máy tính, Khoa Công nghệ Thông tin

Trường Đại học Bách Khoa Hà Nội

Trang 4

Nội dung chương 3

3.1 Giới thiệu

3.2 Cấu trúc liên kết mạng

3.3 Lựa chọn thiết kế mạng liên kết

Trang 5

3.1 Giới thiệu

Telephone Network

Chiến lược mạng được ứng dụng lần đầu tiên vào

những năm 1950 bởi nền công nghiệp điện thoại như

Trang 6

Giới thiệu (tiếp)

Computer Network

Nền công nghiệp máy tính

Trang 7

Giới thiệu (tiếp)

 Năng lực của các kiến trúc đơn chip không đáp ứng

được yêu cầu về tốc độ của nhiều ứng dụng

 VD như dự báo thời tiết, xử lý tín hiệu, radar dò tìm, xử lý ảnh.

thành các công việc song song để có thể thực hiện

đồng thời, giảm đáng kể thời gian xử lý của ứng dụng

Trang 8

Giới thiệu (tiếp)

 Bất kỳ hệ thống song song nào sử dụng nhiều hơn một

bộ xử lý (processor) cho một chương trình ứng dụng

phải được thiết kế để cho các bộ xử lý của nó có thể

trao đổi một cách hiệu quả

 Nói cách khác, những ưu điểm của xử lý song song cóthể mất đi nếu sự trao đổi thông tin giữa các bộ xử lý không hiệu quả

Trang 9

Giới thiệu (tiếp)

 Sự thật này đã nhấn mạnh đến tầm quan trọng của

mạng liên kết đối với toàn bộ hiệu suất của hệ thống

song song

 Trong nhiều kiến trúc xử lý song song hiện tại hoặc

đang được đề xuất, một mạng liên kết được sử dụng

để thực hiện sự trao đổi dữ liệu giữa các bộ xử lý hoặc giữa các bộ xử lý với các module nhớ

Trang 10

Nội dung chương 3

3.1 Giới thiệu

3.2 Cấu trúc liên kết mạng

3.3 Lựa chọn thiết kế mạng liên kết

Trang 11

3.2 Cấu trúc liên kết mạng

 Cấu trúc liên kết mạng (Network Topology) đề cập đến

sơ đồ các liên kết (link), bộ chuyển mạch (switch) để

Trang 12

Cấu trúc liên kết (tiếp)

 Có 2 dạng cấu trúc liên kết:

 Các mạng liên kết tĩnh:

 Cung cấp các liên kết cố định giữa các node (nút mạng).

 Một node có thể là một bộ xử lý, một module nhớ hoặc một module vào-ra hay bất cứ sự tổ hợp nào.

 Liên kết giữa các nodes là không thể thay đổi và không dễ dàng

có thể cấu hình lại được.

 Các mạng liên kết động:

 Cung cấp các kết nối có thể cấu hình lại được giữa các node.

 Các bộ chuyển mạch là thành phần cơ bản của mạng liên kết động.

 Các kết nối giữa các node được thiết lập bằng việc cấu hình một

Trang 13

1 Mạng liên kết tĩnh

 Có nhiều loại, được phân biệt bởi bậc của node; bậc của node là số lượng các kết nối nối với node đó

sánh các đặc điểm hoạt động tương đối của các mạng khác nhau

 Đường kính của mạng được xác định là giá trị lớn nhất trong số khoảng cách tối thiểu kết nối giữa 2 node bất

kỳ trong mạng

 Khoảng cách tối thiểu giữa 2 node là số lượng nhỏ

nhất các kết nối – bước nhảy (hop) mà dữ liệu từ một node phải đi qua theo thứ tự để đến được node kia

Trang 14

Một số kiểu mạng liên kết tĩnh

 Bậc 1: shared bus (bus dùng chung)

 Bậc 2: linear array (mạng tuyến tính), ring (mạng vòng)

 Bậc 3: binary tree, fat tree, shuffle-exchange (Cây nhịphân)

 Bậc 4: two-dimensional mesh (llliac, torus) (mạng lưới

2 chiều)

 Bậc thay đổi: n-cube, n-dimensional mesh, k-aryn-cube (siêu khối)

Trang 15

a Bus dùng chung (shared bus)

 Là loại mạng liên kết tĩnh đơn giản nhất

 Bus dùng chung có tất cả các node chia sẻ một mối liên kết truyền thông chung

 Mạng liên kết này có bậc 1, mỗi node có thể truy nhập tới node khác thông qua bus chung

Trang 16

Bus dùng chung (tiếp)

 Mạng chia sẻ bus là loại mạng rẻ nhất để triển khai

 Các node có thể dễ dàng thêm hay loại bỏ khỏi mạng này

 Tuy nhiên, nó yêu cầu một cơ chế cho việc xử lý xung đột khi nhiều node đồng thời yêu cầu sử dụng đường bus chung

 Cơ chế này có thể đạt được thông qua một bộ điều

Trang 17

b Mạng tuyến tính (linear array)

 Mạng tuyến tính (bậc 2) có mỗi node được nối với 2

node bên cạnh (trừ node đầu và node cuối)

 Tính chất tuyến tính của cấu trúc này được xuất phát từ node đầu và node cuối không kết nối với nhau.

 Có cấu trúc đơn giản, thiết kế của nó có độ trễ truyền thông lớn, đặc biệt giữa hai node đầu cuối

 Điều đó là do bất kỳ dữ liệu truyền trên mạng từ một node phải qua một số node để có thể đến được node kia.

 Mạng tuyến tính với N node sẽ có đường kính là N-1

Trang 18

Mạng vòng (ring)

 Mạng vòng có bậc 2, mỗi một node được nối với 2

node bên cạnh, node cuối cùng và node đầu tiên được kết nối với nhau tạo thành một vòng

 Mạng vòng có thể theo 1 hướng hoặc 2 hướng

 Trong mạng vòng 1 hướng, đường kính mạng là N-1

giống như mạng tuyến tính.

 Trong mạng vòng 2 hướng, đường kính mạng chỉ còn

N/2 hoặc nhỏ hơn nếu N chẵn.

Trang 19

Mạng vòng (tiếp)

 Mặc dù đường kính của mạng vòng tốt hơn so với

mạng tuyến tính nhưng cấu hình của nó vẫn gây ra một

độ trễ truyền thông lớn giữa các node cách xa nhau khi

N lớn

 Độ ổn định của mạng vòng 2 hướng được cải thiện nếu

so sánh với mạng tuyến tính Nếu 1 node bị hỏng, 1

hướng bị mất kết nối, hướng kia có thể sử dụng để

hoàn thành việc truyền dữ liệu

 Một khi kết nối bị mất giữa bất kỳ 2 node cạnh nhau,

mạng vòng trở thành mạng tuyến tính

Trang 20

c Cây nhị phân (binary tree)

 Node đầu tiên gọi là gốc (root) Các node ở cuối cùng gọi là node lá (leaf/terminal), phần còn lại gọi là node giữa (intermediate) Mỗi node giữa có 2 node con Bậc của mạng là 3

 Node root có địa chỉ là 1 Địa chỉ của một node con

được xác định bằng thêm vào số 0 và 1 vào địa chỉ của node mẹ; nghĩa là node con của node x được mang

Trang 21

Cây nhị phân (tiếp)

 Một cây nhị phân với N node có đường kính là 2(h - 1), trong đó h =[log2N] và được gọi là chiều cao của cây

 Cây nhị phân có ưu điểm là có thể mở rộng và triển

khai dễ dàng

 Định tuyến dữ liệu đơn giản

 Tuy nhiên, nó vẫn còn gây ra độ trễ lớn giữa các node

lá ở xa nhau

Trang 22

d Cây nhị phân "béo" (fat tree)

 Khắc phục sự tắc nghẽn ở khu vực gần nút gốc bằng cách tăng dần băng thông của các đường link giữa các node gần với gốc

Trang 23

e Mạng tráo đổi (Shuffle-exchange)

 Bậc của mạng là 3

 Liên kết của mạng tráo đổi là sự tổ hợp của hai hàm: Hoán vị (shuffle) và đổi chỗ (exchange)

 Mạng tráo đổi cung cấp kiểu mẫu liên kết phù hợp cho

sự thực hiện các thuật toán song song như phép biến đổi Fourier nhanh (FFT), sắp xếp và biến đổi ma trận

Trang 24

Đích Nguồn

Trang 25

Hàm hoán vị (tiếp)

 Nếu địa chỉ node được thể hiện theo hệ thập phân thìhàm shuffle được tính như sau:

 Giả sử số node N=2n, i là địa chỉ thập phân của node

 Với 0i (N/2) – 1, node i được nối với node 2i

 Với N/2  i  N – 1, node i được nối với node 2i+1-N

 Ví dụ:

 N = 8, các node đánh địa chỉ từ 0 đến 7

 Ta có: 00, 12, 24, 36, 41, 53, 65, 77

Trang 26

Đích Nguồn

Trang 27

Ví dụ

 Cấu trúc mạng Shuffle-Exchange với N = 8

Trang 28

Ví dụ - Tính giá trị của đa thức

 Tính toán đa thức có thể dễ dàng thực hiện trên hệ

thống xử lý song song mà trong đó các node (bộ xử lý) được liên kết theo mô hình mạng Shuffle-Exchange

 VD: sử dụng mô hình mạng ở ví dụ trên để tính giá trịcủa 1 đa thức bậc N=7

a0+a1x+a2x2+a3x3+a4x4+a5x5+a6x6+a7x7

 Trong đó: ai là các hệ số, x là biến

Trang 29

Tính giá trị của đa thức (tiếp)

 Ta sử dụng mô hình mạng Shuffle-Exchange với N=8

3 thanh ghi sau:

 Thanh ghi hệ số (Coefficient register)

 Thanh ghi biến (Variable register)

 Thanh ghi mặt nạ (Mask register)

Thanh ghi hệ số

Thanh ghi biến

Thanh ghi mặt nạ

Trang 30

Tính giá trị của đa thức (tiếp)

 Các bước tiến hành có thể chia làm 2 pha:

 Pha 1: Tính các giá trị aixi – sử dụng hàm Shuffle

 Pha 2: Tính giá trị của đa thức – sử dụng 2 hàm Shuffle và

Exchange.

Trang 31

Pha 1

 Khởi tạo: với node i (i = 0÷7)

 Thanh ghi hệ số = ai

 Thanh ghi biến = x

 Thanh ghi mặt nạ = 0 nếu i chẵn, = 1 nếu i lẻ

 Bước lặp (lặp n=3 lần):

 Với từng node:

 Nếu thanh ghi mặt nạ = 1 thì:

Thanh ghi hệ số := Thanh ghi hệ số x Thanh ghi biến

 Thanh ghi biến := Thanh ghi biến x Thanh ghi biến

 Giá trị của thanh ghi mặt nạ giữa các node được hoán vị cho nhau theo hàm Shuffle.

 Kết thúc pha 1: thanh ghi hệ số của node i chứa a xi

Trang 32

VD: Pha 1 – Bước khởi tạo

Trang 33

VD: Pha 1 – Bước lặp 1

Trang 34

VD: Pha 1 – Bước lặp 2

Trang 35

VD: Pha 1 – Bước lặp 3

Trang 36

Pha 2

 Đầu vào: là đầu ra của pha 1 (thanh ghi hệ số của

node i chứa giá trị aixi)

 Bước lặp (lặp n=3 lần):

 Chuyển giá trị của thanh ghi hệ số ở từng node sang node

khác theo thứ tự được xác định từ hàm Shuffle.

 Cộng thêm vào thanh ghi hệ số ở từng node giá trị của thanh ghi hệ số ở node khác theo thứ tự được xác định từ hàm

Exchange.

 Kết thúc pha 2: thanh ghi hệ số ở từng node chứa giátrị của đa thức

Trang 37

Thực hiện pha 2

Shuffle: 00, 12, 24, 36, 41, 53, 65, 77

Exchange: 01, 10, 23, 32, 45, 54, 67, 76

Trang 38

Bài tập

 Thực hiện từng bước giải thuật trên với đa thức sau:

P = 1 + 2x - 3x2 + 5x3 + 2x4 - 4x5 + 2x7

x = 2

Trang 39

Node 1

-3 x 0

Node 2

5 x 1

Node 3

2 x 0

Node 4

-4 x 1

Node 5

0 x 0

Node 6

2 x 1

Node 7

1 + 2x - 3x2 + 5x3 + 2x4 - 4x5 + 2x7

Trang 40

f Mạng lưới 2 chiều

 Two-dimensional mesh

 Bậc của mạng là 4

 Một lưới 2 chiều bao gồm k1 x k0 node

 ki  2 biểu thị số các node dọc theo chiều i

 Mỗi node trong lưới 2 chiều được nối với các node lân cận

Trang 41

Mạng lưới 2 chiều (tiếp)

Mạng lưới 2 chiều với k0=4 và k1=2

Mạng lưới 2 chiều với k0=k1=4

Trang 42

Mạng lưới 2 chiều (tiếp)

 Đường kính của mạng 2 chiều bằng khoảng cách giữa các node ở hai góc đối diện Như vậy, lưới 2 chiều với

k1 x k0 node có đường kính (k1-1) + (k0-1)

 Trong thực tế, lưới 2 chiều với số node bằng nhau theo

2 hướng thường được sử dụng để kết nối một tập hợp các bộ xử lý

Trang 43

Định tuyến trong mạng lưới 2 chiều

 Thuật toán định tuyến 1 gói tin truyền từ nguồn S đến đích D trong mạng lưới 2 chiều có n2 node:

 Tính khoảng cách hàng: R = (D div n) – (S div n)

 Tính khoảng cách cột: C = (D mod n) – (S mod n)

 Bổ sung giá trị của R và C vào header của gói tin ở node

nguồn.

 Bắt đầu từ node nguồn, gửi gói tin đi R hàng và sau đó là C cột.

Trang 44

Giải thích thuật toán

 Hướng của gói tin tại mỗi node được xác định bởi dấu của giá trị

R và C.

 Khi R (hoặc C) dương, gói tin sẽ đi theo chiều hướng xuống

(hoặc sang phải), ngược lại, gói tin sẽ theo chiều đi lên (hoặc

sang trái).

 Mỗi lần gói tin đi từ một node tới một node liền kề theo hướng

xuống, giá trị R được giảm 1; khi đi theo hướng lên, nó được

tăng 1.

 Khi R bằng 0, gói tin bắt đầu đi theo chiều ngang Mỗi lần gói tin

đi từ một node tới một node liền kề theo hướng bên phải, giá trị C được giảm 1; khi đi theo hướng bên trái, nó được tăng 1.

 Khi C bằng 0, gói tin đã tới đích.

Trang 46

 Trong mạng Illiac có N=n2 node, mối liên kết node j

(0j<N) được xác định bởi 4 hàm sau:

Trang 48

h Mạng khối n chiều (siêu khối)

 n-Cube (hypercube)

 Trong mạng khối n chiều, mỗi node được đánh địa chỉbằng n bit (tương ứng với các số từ 0 đến N-1)

 Một node có địa chỉ nhị phân là d được kết nối với n

node khác có địa chỉ sai khác duy nhất 1 bit so với d

 Đường kính của mạng là n

Trang 49

Ví dụ: Mạng khối 3 chiều

Node 7 (111) được nối với các node 6 (110), 5 (101) và 3 (011)

Trang 50

Định tuyến trong mạng khối n chiều

 Thuật toán định tuyến cho gói tin truyền từ node nguồn

S = (sn-1 s0) tới node đích D = (dn-1 d0)

 Thêm vào header của gói tin ở node nguồn 1 thẻ

T = S  D = tn-1 t0 (kí hiệu  : phép toán XOR)

 Nếu có 1 bit ti = 1 (0in-1) thì gửi gói tin đến node có địa chỉ khác địa chỉ của node hiện tại ở duy nhất bit thứ i, sau đó xóa

ti về 0.

 Lặp lại bước trên cho đến khi tất cả các bit ti = 0 (0in-1)

Trang 51

Ví dụ - Định tuyến trong khối 3 chiều

 Giả sử cần truyền 1 gói tin từ

node 0 (000) tới node 5 (101).

Trang 52

i Mạng lưới n chiều

Trang 53

Kiến trúc các hệ thống tính toán

VẪN CHƯA HẾT CHƯƠNG 3 

Ngày đăng: 09/08/2014, 12:22

TỪ KHÓA LIÊN QUAN

w