Tải bản đầy đủ (.pdf) (7 trang)

Tài liệu Làm sao để cho các CPU đa lõi hoạt động trong thiết kế truyền thông nhúng docx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (279.13 KB, 7 trang )

Làm sao để cho các CPU đa lõi hoạt
động trong thiết kế truyền thông
nhúng
Với các mạng thông tin cồng kềnh, đa dạng, và không thể dự đoán trước, các
giải pháp được sử dụng trên mạng đang phải làm việc quá sức. Một kiến trúc
đa l
õi không đồng nhất mới có thể là giải pháp cho vấn đề này.
Kh
ối lượng liên lạc trong cả hệ thống mạng doanh nghiệp và thông tin tăng
lên theo cấp số nhân, mở rộng từ 10 Gbps lên đến 40 Gbps và thậm chí có
khả năng tăng lên tới 100 Gbps trong tương lai gần. Phát triển nhanh chóng
này được kích thích bởi số lượng người d
ùng mạng nhiều hơn, các thiết bị
và đầu cuối (ví dụ như máy tính, máy chủ, điệ
n thoại di động, điện thoại IP
và đầu giải m
ã/set-top box), các ứng dụng khác hình thành do hội tụ mạng
(như VoIP, IPTV, P2P, Web 2.0) và nhu cầu băng thông lớn hơn bởi các
ứng dụng tr
ên.
Các nhà s
ản xuất các thiết bị truyền thông cần phải xây dựng các sản phẩm
hỗ trợ các ứng dụng và dịch vụ theo các yêu cầu cụ thể. Điều này liên quan
đến sự hội tụ ngày hôm nay của nhu cầu về hiệu suất trong khả năng bảo mật
tích hợp, nhận thức nội dung, tính linh hoạt và tính lập trình hóa để xử lý
một danh sách dài các ứng dụng tiến hóa hoặc phát triển theo những hướng
khác nhau.
Thiết kế ứng dụng với nền
tảng dữ liệu thông minh
Hệ thống mạng doanh
nghiệp và mạng dữ liệu bao


g
ồm rất nhiều thiết bị hỗ trợ
vô số các tính năng mạng và
b
ảo mật như duyệt gói sâu
(Deep Packet Inspection), đo
lường v
à thử nghiệm, dịch
vụ bảo hiểm, phòng chống
xâm nhập, chống mất mát dữ
liệu, tường lửa, cân bằng tải,
và nhiều dịch vụ khác.. Bất
kể chức năng cụ thể nào
th
ực hiện những thiết bị này,
chúng thường chia sẻ một số đặc điểm chung sau đây.
Trước hết, các thiết bị tr
ên chuyển tiếp lưu lượng dữ liệu qua mạng dựa
nhiều trên thông tin cơ bản của lớp 2 và lớp 3. Mục đích chính là chạy một
ứng
dụng cơ sở dữ liệu sử dụng thông tin từ lớp 2 đến lớp 7 để xử lý, quyết
định chuyển tiếp dựa tr
ên nội dung hoặc phân tích và đánh giá chất lượng
dòng tải. Có thể nói, những thiết bị này thực chất là các host cho các ứng
dụng có thể tham gia đầy đủ vào quá trình chuyển tiếp gói. Các ứng dụng
này cần có khả năng tính toán với cường độ cao và thường được thiết kế trên
ki
ến trúc x86. Do được triển khai trên dòng mạng, chúng cần phải không gây
ra tác động ti
êu cực thông qua mạng hoặc gây ra trễ.

Để địa chỉ hó
a nhiều điểm trong hệ thống mạng doanh nghiệp và mạng
truyền tải cho các ứng dụng dữ liệu nền tảng, các nhà sản xuất cung cấp khả
năng mở rộng sản phẩm để tối ưu hóa giá cả, hiệu suất, giao diện, mật độ sử
dụng và độ tin cậy (xem hình 1). Những sản phẩm này bao gồm từ các thiết
bị có cấu hình cố định ở tầm thấp, khả năng cấu hình mang tính gia dụng ở
tầm trung cho đến những kết cấu module ở tầm cao. Một mục tiêu kỹ thuật
chung là thường xuyên tăng hiệu suất tr
ên các dòng sản phẩm. Việc phát
triển các dạng ứng dụng khác nhau trên từng thiết bị phần cứng có thể tránh
được bằng cách thực hiện một thiết kế đơn cho toàn bộ d
òng sản phẩm.
Thách thức kĩ thuật: Hiệu suất và Tri thức
Để đạt được thiết kế với hiệu suất cao, các ứng dụng dữ liệu nền tảng thông
minh cân nhắc đến việc sử dụng kiến trúc CPU đa lõi sẽ phải đối mặt với
một số thách thức kĩ thuật quan trọng, bao gồm:
• Tốc độ dữ liệu cao (High Data Rates): Ứng dụng phải có khả năng hoạt
động ở 10 Gbps tại hiện tại và tăng nhanh lên đến 40 Gbps và cao hơn t
hế.
• Cơ sở luồng (Flow-based): Truyền thông ở những tốc độ xử lý phải được
stateful so với gói theo định hướng, yêu cầu phần cứng để đạt được hàng
tri
ệu luồng dữ liệu đồng thời.
• Truyền thông không đồng nhất: Tốc độ gói cao từ hàng trăm luồng đồng
thời sẽ tạo nên dữ liệu ghép kênh không đồng nhất, tác động tiêu cực đến
cache, sử dụng bộ nhớ và sử dụng các thiết bị vào/ra ( I/O ) thông qua các
ứng dụng trên CPU của host.
• Tích hợp bảo mật: Hầu hết các mạng và các ứng dụng bảo mật yêu cầu
một số hình thức xử lý an ninh. Đa số các yêu cầu tăng tốc trong truyền
thông là cho xử lý bảo mật, làm cho quá trình đồng xử lý bảo mật look-aside

r
ất không hiệu quả. Việc xử lý bảo mật riêng biệt bây giờ phải được tích hợp
chặt chẽ trong nền tảng dữ liệu để đáp ứng các yêu cầu về an toàn cho tất cả
lưu lượng truy cập m
à không giảm hiệu suất hoặc tăng độ trễ.
• Độ trễ thấp: Các ứng dụng trực tiếp trên mạng cần phải không gây ra độ
trễ đáng kể ảnh hưởng đến hiệu suất hệ thống trong thời gian thực. Tuy
nhiên, tốc độ dữ liệu cao từ mô hình giao thông không thống nhất có thể gây
ra hiện tượng “đói” chu kì bộ xử lý của máy chủ lưu trữ và làm độ trễ tăng
lên.
• DPI: Với các quyết định chuyển tiếp di chuyển ngoài các tiêu chí đơn giản
của lớp 2 và 3, ứng dụng và nội dung đang sử dụng là cao nhất. Ở tốc độ dữ
liệu rất cao, DPI cũng tạo ra một lớp mới về khối lượng công việc, có thể xử
lý thuế hiệu suất cao nhất-CPU mục đích chung. Mở rộng ra, các công cụ
biểu thức chính quy thường được cần thiết.
• Khả năng ảo hóa: Sự bùng nổ của công việc cụ thể và các thiết bị an ninh
trên mạng đã tạo ra chi phí đáng kể, lượng năng lượng tiêu thụ, và các thách
thức hoạt động. Nhiều nhà điều hành mạng đã lợi dụng các giải pháp ảo hóa
để giảm số lượng các thiết bị mạng.
• Tính Linh hoạt và thích ứng: Với giao thức tiến hóa lớp 2 và lớp 3 cũng
như sự biến đổi cận li
ên tục trong các ứng dụng lớp 4 đến lớp 7, dịch vụ,
giao thức và các thiết kế phần cứng cho nền tảng cơ sở dữ liệu thông minh
cần có khả năng chương trình hóa, cung cấp sự linh hoạt cần thiết để nhanh
chóng thích nghi với những thay đổi này.
T
ổng kết các yêu cầu này, cuối cùng các nhà thiết kế phải đối mặt với ba
thách thức khi sử dụng các CPU đa lõi mục đích chung cho các ứng dụng dữ
liệu nền tảng thông minh. Đầu tiên là để làm cho CPU sử dụng cho mục đích
chung tính toán hiệu quả nhất có thể.

Bất kể số lượng lõi hoặc tốc độ hoạt động của chúng khi có tính đến tất cả
các yêu cầu, nhà thiết kế phải trả lời các câu hỏi như: Hiệu suất thật sự của
hệ thống là gì? Bao nhiêu lệnh cần thiết có thể cho mỗi gói? Sự liên quan
gi
ữa các luồng công việc khác nhau trong mỗi phân vùng đến việc thiết lập
đầy đủ các y
êu cầu để tối đa hóa hiệu suất trong thế giới thực?
Mối quan tâm thứ hai là hiệu quả bộ nhớ. Việc đạt được thông lượng cao
nhất với độ trễ thấp nhất có ảnh hưởng nhiều nhất bởi băng thông bộ nhớ,
hiệu quả bộ nhớ cache, và tránh tình trạng dừng vi xử lý gây ra các chu kì xử
lý dư (còn gọi là thời gian chết).
Cuối cùng, hiệu quả sử dụng năng lượng đóng một vai trò quan trọng trong
thiết kế tổng thể về hiệu suất trên tỷ lệ năng lượng.
Giải pháp: Một kiến trúc đa lõi không đồng nhất
Tổng hợp các thách thức mà thiết bị mạng cần phải đối mặt trong nỗ lực
cung cấp hiệu năng làm việc cao, sự thông minh và tính khả trình đòi hỏi
một kiến trúc vi xử lý đa chip, đa lõi không đồng nhất. Kiến trúc này kết hợp
ứng dụng cơ sở dữ liệu mạng khả tr
ình có hiệu suất làm việc cao nhằm tối
ưu hóa cho xử lý gói ở lớp 2 đến lớp 7 v
à cấu trúc CPU đa lõi ảo hóa trên
n
ền x86 qua giao diện PCI Express ảo hóa. Thiết kế dựa trên kiến trúc này
có th
ể cho phép các nhà cung cấp thiết bị nâng cao hiệu năng, tính linh hoạt,
và các lĩnh vực hóa hệ thống lập trình lên gấp 4 lần so với các giải pháp
x86 đa l
õi sử dụng giao diện card mạng chuẩn.
Từ góc nhìn hẹp của việc phát triển ứng dụng và lưu trữ, không có kiến trúc
vi xử lý nào khác được công nhận rộng rãi hơn hoặc phù hợp hơn so với

x86. Nó cung cấp tùy chọn thích hợp về giá cả, hiệu suất, khả năng hỗ trợ
liên tục, khả năng thay đổi, bao gồm cả các lĩnh vực quan trọng như tính ảo
hóa. Tuy nhiên kết hợp các yêu cầu về hiệu suất cao, độ trễ thấp, và khả
năng xử lý luồng ổn định với các ứng
dụng và nội dung DPI trên lớp 2-lớp 7
cản trở vi xử lý đa lõi đồng nhất ứng dụng hiệu quả trong thực tế.
Một kiến trúc đa lõi không đồng nhất có ba mục tiêu (xem hình 2). Mục tiêu
đầu tiên là để tối ưu mục đích nói chung của bộ vi xử lý đa lõi nhàm cho
phép nó t
ập trung vào các luồng công việc được cho là tốt nhất. Trong các ví
dụ về hệ thống truyền thông nhúng, luồng công việc bao gồm việc lưu trữ
cho phòng chống xâm nhập, tường lửa, phòng chống mất mát dữ liệu, kiểm
tra và đo lường, hoặc ứng dụng tương
tự khác. Những ứng dụng này có thể
tận dụng lợi thế của tăng hiệu suất của đơn lõi cộng thêm với hiệu suất bổ
sung từ bộ xử lý đa lõi, và thậm chí cả lợi ích hơn nữa từ ảo hóa. Điều này
cho phép các nhà phát tri
ển kết hợp để xây dựng một loạt các tiêu chuẩn và
công c
ụ phát triển nguồn nhân lực cho việc phát triển các tính năng một
cách nhanh chóng.

×