UltraSPARC T1

Một phần của tài liệu mô hình và phân tích hiệu năng của các tổ chức cache trong các kiến trúc vi xử lý đa lõi (Trang 30)

UltraSPARC T1 (hỡnh 1.18) là bộ vi xử lý dựng cho mỏy server. Chip này cú 8 lừi, mỗi lừi cú thể xử lý 4 luồng song song. UltraSPARC T1 sử dụng cache L2 chia sẻ cho tất cả cỏc lừi và hệ thống bus giao nhau.

31

Hệ thống đạt hiệu quả cao do khả năng xử lý được từng lớp luồng TLP (lớp cụng việc). Nhưng do làm việc trong cỏc vựng hẹp của L2 chia sẻ nờn hiện tượng Cache Miss cao do đú hiệu suất giảm. Việc thực hiện song song cỏc lệnh là rất chậm làm tăng cache “miss” và làm tăng khả năng khú dựđoỏn dẫn đến thiếu chớnh xỏc. Hệ thống này hiệu quả phụ thuộc vào tốc độ truy nhập của bộ nhớ.

1.3.3.UltraSPARC T2

UltraSPARC T2 cũn gọi là Niagara II (hỡnh 1.18). UltraSPARC là một chip đơn 8 lừi, tất cả cỏc lừi đều sử dụng chung cache L2 chia sẻ, mỗi lừi cú thể xử lý 8 luồng song song. UltraSPARC cú thể quản lý được xấp xỉ 20000 trạng thỏi nờn nú là một loại mỏy tớnh được sử dụng trong y tế để hỗ trợ cỏc ca phẫu thuật. Ngoài ra UltraSPARC T2 cũn được dựng trong cỏc trường hợp đũi hỏi tốc độ cao như cỏc trũ chơi điện tử trực tuyến hoặc cỏc dich vụ Multimedia…

Hỡnh 1.18: Sun T5120 Eight Cores x Eight Threads

1.3.4.Intel core 2 i7 (Nehalem)

Bộ nhớđệm L3 trong cỏc BXL Nehalem (hỡnh 1.19) hoạt động với tần số độc lập và cú hệ thống cấp nguồn riờng biệt với cỏc nhõn để đảm bảo độ ổn định và giảm xỏc suất lỗi. Ưu điểm của thiết kế cache L3 này là giỳp việc trao đổi dữ liệu giữa cỏc nhõn hiệu quả hơn mà khụng cần thụng qua cỏc cache bờn trong của mỗi nhõn. trong vi kiến trỳc Nehalem tớch hợp trong BXL một chip điều khiển năng lượng PCU (Power Control Unit) để hiện thực cụng nghệ mới Turbo Boost. Chip PCU này sẽ dựa trờn cỏc cảm ứng được thiết lập tại cỏc nhõn xử lý để thực hiện

32

giỏm sỏt về nhiệt độ, điện ỏp trờn nhõn. Nehalem được dựng trong cỏc hệ thống cú diện tớch nhỏ laptop…

Hỡnh 1.19: Kiến trỳc Nehalem 8 lừi với cache L1, L2, L3 của Intel Dưới đõy là bảng so sỏnh giữa cỏc bộ vi xử lý được đưa ra ở trờn.

Bộ xử lý Số lừi Số luồng L1, L2, L3 Chia sẻ AMD’s Dual core 2 x 2 = 4 4 x 2 = 8 L1,L2 Khụng UltraSPARC T1 1 x 8 = 8 8 x 4 = 32 L1, L2 Chia sẻ L2 UltraSPARC T2 1 x 8 = 8 8 x 8 = 64 L1, L2 Chia sẻ L2 Intel core 2 i7 2 x 4 = 8 8 x 2 = 16 L1, L2, L3 Chia sẻ l3

33

CHƯƠNG II

Mễ HèNH HểA VI XỬ Lí ĐA LếI

Đặc trưng cơ bản của mạng viễn thụng là lưu lượng, dung lượng và chất lượng. Lưu lượng phỏt sinh trờn mạng là một đại lượng ngẫu nhiờn trong khi dung lượng là một đại lượng hữu hạn cũn chất lượng mạng thỡ phụ thuộc vào lưu lượng, dung lượng và cỏc quỏ trỡnh điều khiển kết nối trờn mạng. Với mạng đa dịch vụ cung cấp nhiều loại hỡnh cụng việc với cỏc yờu cầu khỏc nhau về chất lượng, tốc độ và mức độ ưu tiờn thỡ phương phỏp mụ hỡnh húa phõn tớch một hệ thống mạng theo lý thuyết hàng chờ là phương phỏp tổng quỏt nhất được sử dụng để xử lý lưu lượng và quản lý tài nguyờn.

Trong nhiều hoạt động sản xuất kinh doanh cũng như trong đời sống chỳng ta ỏp dụng cỏc hệ dịch vụ đỏm đụng hay hệ phục vụ cụng cộng, chỳng cú tờn gọi chung là hệ thống hàng chờ. Cỏc xớ nghiệp sửa chữa mỏy múc, cỏc cửa hàng, cỏc bến xe, bến cảng, trạm tổng đài, cỏc hệ thống điện tử viễn thụng, Internet,... là cỏc vớ dụ về hệ thống hàng chờ. Trong một mạng mỏy tớnh cỏc cụng việc được chuyển từ nguồn tới đớch và đi qua một số lượng cỏc nỳt trung gian. Tại cỏc nỳt này, hàng chờ xuất hiện để phục vụ quỏ trỡnh lưu tạm thụng tin của hệ thống.

2.1.Mạng xếp hàng đúng nhiều lớp cụng việc 2.1.1. Mụ hỡnh xếp hàng

Lý thuyết hàng chờ là một cụng cụ toỏn học mạnh dựng để phõn tớch, ước lượng trong cỏc hệ thống viễn thụng và cỏc mạng mỏy tớnh. Trong cỏc hệ thống hàng chờ thường xuyờn diễn ra hai quỏ trỡnh: quỏ trỡnh nảy sinh cỏc yờu cầu và quỏ trỡnh phục vụ cỏc yờu cầu (một yờu cầu được coi là một tớn hiệu cần được phục vụ hay là một cụng việc). Nhưng nhiều khi trong quỏ trỡnh phục vụ của cỏc hệ thống, do nhiều nguyờn nhõn khỏc nhau, thường xảy ra cỏc tỡnh trạng như quỏ trỡnh phục vụ khụng đỏp ứng cỏc yờu cầu, do đú dẫn đến kết quả là nhiều yờu cầu phải chờ để được phục vụ, hoặc ngược lại trong một số tỡnh huống, khả năng phục vụ của hệ thống vượt quỏ số yờu cầu cần được phục vụ, với kết quả là

34

hệ thống khụng sử dụng hết phương tiện phục vụ. Nhiều bài toỏn thực tế trong cỏc lĩnh vực hệ thống dịch vụ, kỹ thuật, viễn thụng … đó được giải quyết thành cụng nhờ ỏp dụng phương phỏp mụ phỏng mụ hỡnh hàng chờ.

Mụ hỡnh hàng chờ M/M/1

Hàng đợi M/M/1 cú nhón λ tương ứng với tốc độ đến của cỏc khỏch hàng cũn nhón μ tương ứng với tốc độ đi khỏi của khỏch hàng sau khi được phục vụ xong (trừ trạng thỏi 0), tớn hiệu đến và đi theo phõn phối hàm mũ (chuỗi Markov). Hệ thống này chỉ cú một server và hàng đợi cú kớch thước vụ hạn (hỡnh 2.1). Cỏc trạng thỏi được biểu diễn bằng cỏc vũng trũn, số hiệu trong vũng trũn là toàn bộ số khỏch hàng trong mạng bao gồm cả khỏch hàng đang chờ trong hàng đợi và khỏch hàng đang được phục vụ. Hỡnh 2.1: Hàng chờ M/M/1 • Mụ hỡnh hàng chờ M/M/1/K Hàng chờ M/M/1/K chỉ cú một server nhưng hệ thống chỉ cú thể chứa K khỏch hàng (hỡnh 2.2). Nếu hệ thống đó cú K khỏch hàng thỡ khỏch hàng mới đến sẽ bị loại khỏi hệ thống. Hệ thống này tất nhiờn sẽ bị giới hạn bởi dung lượng nhớ của hàng chờ.

35 • Mụ hỡnh hàng chờ M/M/m

Hàng chờ M/M/m cú thời gian giữa cỏc lần đến λ và thời gian phục vụ của tớn hiệu μ là phõn phối hàm mũ (chuỗi Markov). Hàng chờ M/M/m cú m server giống nhau và song song. Hỡnh (2.3)

Hỡnh 2.3: Hàng chờ M/M/m • Mụ hỡnh hàng chờ M/G/1

M: quỏ trỡnh đến là quỏ trỡnh Poisson tốc độ λ

G: là phõn bố xỏc suất chung của biến xtựy tiện – là thời gian phục vụ khỏc hàng G(x)=P[service_timex]. Phõn bố chung cú thể là rời rạc hay liờn tục.

1: là chỉ cú một server nguyờn tỏc phục vụ là FIFS

Số lượng khỏch hàng N(t) trong hệ thống khụng phải là quỏ trỡnh Markov Như vậy, hệ thống M/G/1 cú phõn bố chung của thời gian phục vụ tựy tiện mà trong đú ớt nhất giỏ trị trung bỡnh của tốc độ phục vụ μ và giỏ trị chờnh lệch sẽ được tớnh theo cỏc moment và cỏc chờnh lệch. Nhưng để cho đơn giản ta sẽ chỉ khảo sỏt hệ thống với phõn bố chung rời rạc

2.1.2. Mạng xếp hàng

Mạng xếp hàng là một mụ hỡnh quan trọng và là một phương phỏp cụ thể được sử dụng đểđỏnh giỏ phõn tớch mụ hỡnh một hệ thống mỏy tớnh đa lừi. Một bộ vi xử lý đa lừi cựng với cỏc tổ chức cache được coi như là một mụ hỡnh mạng gồm cú cỏc nỳt là CPU, L1, L2, L3, memory… cựng với cỏc hàng chờ tại mỗi nỳt.

Vi xử lý và mạng xếp hàng mở

Trong mạng mở cỏc cụng việc cú thểđược gửi đến từ một hay nhiều nguồn. Mỗi nỳt trong mạng cú thể tiếp nhận bất cứ cụng việc từ một nỳt bất kỳ. Cỏc cụng việc 1 μ μ μ λ 2 m

36

sau khi được phục vụ xong cú thể ra khỏi hệ thống bằng một hoặc nhiều lối ra (hỡnh 2.4). Cỏc cụng cụ thực hiện việc điều khiển mạng xếp hàng mở bao gồm việc quyết định khi nào nờn chấp nhận luồng cụng việc mới, khi nào thỡ bỏ qua cỏc cụng việc và bỏ qua cụng việc nào. Tất cả cỏc cụng cụ trờn đều cú đặc điểm chung là chỳng đưa ra cỏc quyết định mà khụng quan tõm đến trạng thỏi hiện hành của mạng.

Do nhu cầu xử cần xử lý xuất phỏt từ con người luụn thay đổi nờn bộ vi xử lý về bản chất là một mạng xếp hàng mở, số lượng cụng việc là rất lớn và vượt qua khả năng của mỏy tớnh, nhưng nếu mụ hỡnh vi xử lý đa lừi là mạng loại này thỡ việc tớnh toỏn rất phức tạp, cú nghĩa là chỳng ta rất khú kiểm soỏt được hoạt động của hệ thống vi xử lý.

Hỡnh 2.4: Mạng xếp hàng mở • Vi xử lý và mạng xếp hàng đúng

Mạng được gọi là xếp hàng đúng nếu khụng cú khỏch hàng nào từ bờn ngoài đi vào mạng hoặc từ trong mạng đi ra ngoài. Do bị hạn chế bởi tập lệnh và dung lượng nờn một bộ vi xử lý chỉ xử lý được một số lệnh hoặc một số luồng nhất định, vỡ vậy bộ vi xử lý được mụ hỡnh húa thành một mạng xếp hàng đúng.

Hỡnh 2.5: Mạng xếp hàng đúng

Với mạng xếp hàng đúng, cỏc lệnh hay luồng lệnh sau khi được tỡm kiếm và xử lý chỉ cú thể truyền giữa cỏc nỳt trong hệ thống. Cỏc xử lý là liờn tiếp giữa một số cặp nỳt bất kỳ như giữa CPU và L1, giữa cache L1 và L2 cache hoặc giữa L2 và bộ nhớ... Vỡ là mạng đúng nờn cỏc lệnh khụng thể ra khỏi vi xử lý và cũng khụng cú

37

thờm bất cứ một xử lý nào lớn hơn tổng số lệnh tham gia thờm vào hệ thống. (hỡnh 2.5)

Mạng xếp hàng kết hợp

Hệ thống kết hợp là hệ thống đúng đối với một số khỏch hàng nhưng lại mở với một số khỏch hàng khỏc. Hệ thống này trờn lý thuyết cú vẻ gần gũi với thực tế, nhưng trong một bộ vi xử lý đểđỏnh giỏ hiệu năng chỳng ta cần phải chọn một mụ hỡnh mang tớnh tổng quỏt và thuận lợi trong quỏ trỡnh đỏnh giỏ hệ thống.

2.1.3.Vi xử lý và cụng việc trong hệ thống.

Vi xử lý đơn lừi với một lớp cụng việc duy nhất.

Một hệ thống mạng chỉ xử lý được cỏc cụng việc với điều kiện duy nhất được gọi là mạng đơn lớp. Cũng như vậy, một bộ vi xử lý đơn lừi chỉ xử lý được cỏc lệnh hay luồng lệnh…với điều kiện là tất cả cỏc lệnh hoặc luồng lệnh bằng nhau về thời gian xử lý, bằng nhau vềđộ dài lệnh, giống nhau về tớnh chất và giống nhau về nội dung cụng việc… Do đú vi xử lý đơn lừi được coi là mạng một lớp cụng việc. Bộ vi xử lý đơn lừi thực hiện mỗi giai đoạn của lệnh trong một khoảng thời gian bằng nhau. Một hệ thống vi xử lý đơn lừi được mụ hỡnh như một mạng xếp hàng đúng hoặc mở với cỏc hàng đợi gồm duy nhất một CPU, L1, L2, memory bus, RAM ...và cỏc hàng đợi tương ứng. Mạng xếp hàng đơn lớp chỉ xử lý cỏc cụng việc một cỏch tuần tự với cỏc khoảng thời gian cho mỗi cụng việc là như nhau, đõy là hạn chế của mạng cũng như là hạn chế của cỏc vi xử lý đơn lừi cú tốc độ thấp và khụng cú khả năng xử lý song song do khụng tận tận dụng được thời gian rỗi của CPU, đặc biệt đối với cỏc phần mềm được xõy dựng bằng kiến trỳc đa luồng thỡ vi xử lý đơn lừi gần như khụng thểđỏp ứng được.

Vi xử lý đa lừi và cỏc lớp cụng việc

Mạng xếp hàng cũng tỡm thấy ứng dụng trong mụ hỡnh phõn tớch của cỏc hệ thống mỏy tớnh xử lý song song. Hiện tượng bựng nổ khụng gian trạng thỏi trong hệ thống này được giới hạn do sử dụng phương phỏp phõn tớch hiệu quả chuỗi Markov dựa vào hoạt động của cỏc mạng xếp hàng đúng cửa. Trong hệ thống này cụng việc

38

khi đưa vào được chia thành cỏc lớp khỏc nhau về thời gian phục vụ (theo độ dài, tớnh chất và nội dung) nờn được gọi là mạng đa lớp.

2.2.Mạng cú nghiệm dạng tớch xỏc suất (PFQN)

Hoạt động bộ vi xử lý được mụ tả bởi sự thay đổi cỏc trạng thỏi xảy ra ở bất kỳ thời gian nào trong hệ thống, lỳc này sẽ tồn tại một vector xỏc suất của cỏc trạng thỏi gọi là vector trạng thỏi bền vững, cỏc vector này độc lập với vector trạng thỏi ban đầu. Hệđẳng thức xỏc định vector trạng thỏi bền vững π được cho bởi πQ=0, biểu thị sự cõn bằng xỏc suất của cỏc cụng việc trong vi xử lý, trong đú Q là ma trận phỏt sinh của sự thay đổi trạng thỏi xảy ra bất kỳ. Điều kiện cõn bằng của xỏc suất trong toàn bộ vi xử lý là đẳng thức: ∑ ∑ ≠ ≠ = j i ij i ji j i jq π q π (2.1) Hay πQ=0

Trong đúπiqij là luồng xỏc suất chuyển từ trạng i đến trạng thỏi j (cũn gọi là tần số chuyển trạng thỏi từ trạng thỏi i đến trạng thỏi j), với điều kiện bỡnh thường húa là: ∑ =1 i i π . Đối với hệ thống vi xử lý nếu sử dụng tớnh toỏn theo điều kiện cõn bằng trờn thỡ gọi là cõn bằng toàn cục, nghĩa là số lượng cụng việc đến hệ thống cõn bằng với số cụng việc ra khỏi hệ thống khi hệ thống ở trạng thỏi i. Cỏc hệ thống tỡm được nghiệm của cỏc đẳng thức cõn bằng toàn cục được gọi là mạng cú nghiệm dạng cỏc tớch xỏc suất PFQN (Product Form Queuing Network), cỏc nghiệm này là cỏc thừa số liờn quan đến mỗi nỳt trong toàn hệ thống. Để thỏa món sự cõn bằng xỏc suất trong vi xử lý thỡ phải tỡm được nghiệm của đẳng thức trờn nhưng số lượng cụng việc tớnh toỏn là rất lớn.

Nếu tất cả cỏc nỳt của hệ thống (CPU, L1, L2...) đều cú một chỉ số riờng liờn quan đến cỏc phõn bố của cỏc thời gian xử lý, giữa cỏc lệnh đến và nguyờn tắc xếp hàng thỡ cú thể tỡm được cỏc đẳng thức cõn bằng cụ thể mụ tả hoạt động của hệ thống một cỏch rừ ràng hơn. Những đẳng thức này được đơn giản húa, mỗi đẳng thức đơn liờn quan đến từng nỳt, cỏc đẳng thức này là điều kiện cõn bằng cục bộ cũn được gọi là điều kiện cõn bằng cho từng nỳt. Nghĩa là số lượng cụng việc đến

39

một nỳt cõn bằng với số cụng việc ra khỏi nỳt đú khi nỳt ở trong trạng thỏi i. Mở rộng cho hệ thống vi xử lý đa lừi thỡ cõn bằng toàn cục là thỏa món tốc độ của lệnh hay luồng lệnh thuộc lớp r từ nỳt i bằng tốc độ đến của lệnh hay luồng lệnh tiếp theo thuộc lớp r đến nỳt i này.

2.2.1.Mạng PFQN Jackson

Mạng Jackson là một mạng mở PFQN cú K nỳt và một lớp cụng việc. Trong mạng này tất cả cỏc nỳt cú hàng đợi mụ hỡnh M/M/m, nguyờn tắc phục vụ ưu tiờn FCFS. Số lượng cụng việc trong mạng Jackson khụng bị giới hạn, số lượng cụng việc trong mỗi nỳt là ni, i=1,2,...,Kđộc lập với nhau.

Cụng việc đến từng nỳt trong mạng Jackson được phõn bố theo xỏc suất Poisson với λ0,λ1,λ2,...,λK, λi là tốc độ trung bỡnh nỳt i. Trong mạng Jackson tốc độ cụng việc đến mỗi nỳt bằng tốc độ cụng việc vừa dược phục vụ xong tại nỳt đú. Đối với mạng Jackson thời gian phục vụ cỏc cụng việc đều cú phõn bố số mũ. Mỗi server tại nỳt i cú thời gian phục vụ cụng việc độc lập so với nỳt khỏc và độc lập với cỏc quỏ trỡnh đến. vỡ là mạng mở nờn mỗi cụng việc cú thể rời khỏi mạng từ bất kỳ một nỳt nào trong mạng. 2.2.2.Mạng PFQN Gordon Newell Một mạng gồmK nỳt được gọi là mạng PFQN Gordon-Newell nếu thỏa món ƒ Là một mạng đúng

ƒ Tất cả thời gian phục vụđược ở tất cả cỏc nỳt phõn bố mũ và theo nguyờn tắc phục vụ FIFO (FCFS)

ƒ Một khỏch hàng được phục vụ xong ở nỳt isẽ chuyển đến một số nỳt j

Một phần của tài liệu mô hình và phân tích hiệu năng của các tổ chức cache trong các kiến trúc vi xử lý đa lõi (Trang 30)

Tải bản đầy đủ (PDF)

(74 trang)