Nhịp sống số

Top 20 câu hỏi về Bulldozer

Top 20 câu hỏi về Bulldozer

(chưa tính bonus)

Dù AMD đã công bố bí mật về kiến trúc “Máy Ủi” của mình hồi Hot Chips 22 vừa qua, thì đấy chỉ mới là những thông tin sơ khởi. AMD chỉ “bật mí” những gì họ cảm thấy không cần giữ “bí mật” nữa. Và mới đây, đơn vị chuyên về chip x86 thứ 2 thế giới này, quyết định bật mí thêm “tí ti” thứ liên quan đến Bulldozer, thông qua John Fruehe (JF), giám đốc bộ phận marketing dòng sản phẩm server & workstation của hãng. JF chọn lọc ra 20 câu hỏi được bạn đọc gửi về và chia làm 4 vòng “đấu”. Sau nhiều ngày “chờ đợi”, sau cùng những câu hỏi cuối cùng cũng đã được lên bảng.

Mục lục bài viết

Vòng 1

Waffle911 – Có rất nhiều mập mờ giữa các cộng đồng công nghệ liên quan đến kiến trúc thực sự của CPU, mà ‘module’ hay ‘nhân’ được nhiều người diễn giải khác nhau theo nhiều cách khác nhau.

<>

<>John Fruehe – Vâng, đúng là có những mập mờ về module và nhân. Module là cách riêng của chúng tôi khi mô tả về các phần thấp hơn trong bộ xử lý. Anh sẽ không thấy chúng tôi marketing các module vì chúng hầu như không cảm nhận được với ai trừ các nhà thiết kế.

Lấy ví dụ hệ điều hành (OS), sẽ liệt kê số lượng nhân số nguyên, và nhìn một bộ xử lý Opteron 16 nhân (hiện có tên mã Interlagos) là 16 nhân, không phải 8 module. Module chỉ ảnh hưởng lên một số tính năng riêng của CPU – một buổi thảo luận mà chúng ta sẽ để dành cho bữa nào đó sau này – nhưng nhìn chung chúng tôi sẽ nhằm vào các nhân chứ không phải module.

Lý do mà chúng tôi dùng module là để giúp cắt giảm lượng mạch điện dư thừa trên bộ xử lý. Càng nhiều nhân thì sự lặp lại (các mạch điện) càng nhiều và điều này ngốn nhiều diện tích die chip cũng như tăng thêm lượng điện tiêu thụ. Có nhiều khu vực trong bộ xử lý mà chúng ta có thể dùng chung vì chúng không gây ra ảnh hưởng đáng kể nào lên hiệu năng, đồng thời có những khu vực không chia sẻ được vì chúng sẽ tạo ra tình trạng nghẽn (bottleneck).

Anh sẽ thấy một bảng biểu các thông số kỹ thuật với các thuật ngữ module được nêu ra. Module sẽ không phải là cái tên để “marketing”, chúng chỉ là các module “máy ủi” thôi. Trong thực tế, các module sẽ chỉ ảnh hưởng lên các nhà thiết kế. Khi chúng tôi bắt đầu giới thiệu các thông tin về Bulldozer, chúng tôi chỉ tập trung vào phần kiến trúc dùng chung và nói chuyện ở cấp độ module (vẫn còn quá sớm để chia sẻ hình ảnh die chip). Vì điều này mà có 2 cách hiểu nhầm lẫn giữa :

  • Module là toàn bộ bộ xử lý
  • Module tương đương với một nhân xử lý

Khi nói về các nhân, chúng tôi sẽ luôn dùng định nghĩa được đồng tình nhiều nhất về nhân – các mạch logic số nguyên. Ngày nay đa số các tải công việc là số nguyên với một phần nhỏ là số thực. Đây là lý do tại sao chúng tôi tập trung vào các nhân số nguyên cũng như đây là cách hợp lý nhất để định nghĩa một nhân.

Mỗi nhân số nguyên sẽ có khả năng chạy 1 luồng phần mềm, và các luồng trên có thể được hoàn thành cùng một lúc, không như công nghệ kiểu SMT cho phép 2 luồng dùng chung 1 nhân. Anh có thể tìm thấy công nghệ SMT trên các bộ xử lý có ít nhân hơn, và việc chia sẻ là điều tự nhiên xuất hiện sẽ tạo ra hiện tượng nghẽn, có thể dẫn đến tình trạng thông lượng âm (negative throughput) trong vài trường hợp.

Và để “đếm” các nhân, thì đây là thứ chúng tôi có thể xác nhận vào lúc này :

  • Interlagos – bộ xử lý server 16 nhân
  • Valencia – bộ xử lý server 8 nhân
  • Zambezi – bộ xử lý desktop 8 nhân

Muzaffer Kal – Đâu là lợi thế về mặt ảo hoá của Bulldozer so với kiến trúc hiện tại của AMD cũng như kiến trúc tương ứng về khung thời gian bên Intel ?

<>John Fruehe – Chà, để bắt đầu, vì đối thủ không tiết lộ gì về tính năng ảo hoá của họ tại khung thời điểm đó, nên tôi sẽ đi với cách so sánh bên AMD.

Một trong các so sánh nổi bật và dễ dàng nhất là so về lượng nhân thuần có. Với kinh nghiệm của tôi, ngày nay khách hàng có xu hướng dùng “một máy ảo (VM) cho mỗi nhân”. Tại giai đoạn này, điều đó có nghĩa với 24 máy ảo cho một nền tảng Opteron 6100 2P (12 nhân x 2 bộ xử lý = 24 nhân = 24 máy ảo), rồi sẽ lên 32 máy ảo cho hệ thống Interlagos 2P nền Bulldozer. Hoặc anh có thể chạy một số hệ thống máy ảo với nhiều nhân cực mạnh trên cùng 1 server, lấy ví dụ, anh có thể chạy 8 máy ảo trên 1 hệ thống Interlagos, với mỗi máy dùng đến 4 nhân.

Dù cho chúng tôi chưa phát hành các chi tiết kỹ thuật, một số tính năng mới như làm cho bộ đệm (cache) hiệu quả hơn, duy trì tính tương thích khi trao đổi thực (live migration) giữa các nhân, cùng các thay đổi về mặt quản lý có tính hiệu quả hơn với các máy ảo như tương tác của hypervisor đã được giới hạn lại.

Bên cạnh việc có nhiều nhân hơn, nền tảng “máy ủi” sắp tới sẽ kèm theo bộ đệm L2 được dùng chung giữa các nhân số nguyên. Với các khách hàng thường gắn kết máy ảo kèm theo số nhân, họ sẽ có khả năng tạo ra các máy ảo 2P, và gắn kết nó với 2 nhân có chung bộ đệm L2. Chi tiết này giúp giảm thiểu độ trễ về cache khi 2 nhân của máy ảo nằm liền kề với nhau trong cùng một vị trí duy nhất.

Còn một số cải thiện đáng kể khác với trình điều khiển bộ nhớ (memory controller – MC) của chúng tôi. Đây là đợt đại tu MC đầu tiên tính từ lần giới thiệu bộ xử lý 4 nhân Opteron đầu tiên hồi 2007. Sau đó, mọi người đều nhìn vào ảo hoá, nhưng không có nhiều người đã triển khai nó. Các cải tiến về MC lần này được thiết kế dành cho ảo hoá vì vậy nên có nhiều tối ưu xung quanh quản lý bộ nhớ thiên về ảo hoá.

Vài người cũng từng hỏi về hỗ trợ cho Hyper V và các OS cũ hơn. Chúng tôi lên kế hoạch sẽ hỗ trợ Hyper V trong tương lai, giống như những gì chúng tôi đang làm hôm nay. Với thuật ngữ các OS cũ – có một vài giới hạn vì các OS cũ hơn được phát triển trong giai đoạn bộ xử lý có ít nhân hơn và hỗ trợ ít bộ nhớ hơn. Một OS cũ có thể được chạy như OS khách (guest) trên một máy chủ ảo. AMD đang hợp tác với Microsoft (MS) để đảm bảo các bộ xử lý lý mới được hỗ trợ tốt trong các bản OS mới. Chúng tôi sẽ cung cấp thêm thông tin khi ra mắt sản phẩm.