

Mặc dù Meteor Lake (MTL) là một bộ vi xử lý đa thành phần (SoC), nhưng sức mạnh CPU vẫn được xem như "linh hồn" của một hệ thống PC. Trong bài viết này, chúng ta sẽ khám phá sâu hơn về kiến trúc P-Core Redwood Cove và E-Core Crestmont trên con chip mới nhất của Intel, vừa có màn ra mắt ấn tượng tại triển lãm CES 2024 hồi đầu năm.
Trước hết, vấn đề liên quan đến Windows 10 (và các phiên bản trước) không phải mới xuất hiện với MTL. Khi Intel chuyển sang thiết kế hybrid tương tự big.LITTLE của ARM, nó đã gặp phải sự không tương thích với kernel của Windows 10. Thực tế, việc Microsoft cho ra mắt Windows 11 có nhiều nguyên do liên quan đến Intel. Nếu không có sự "tác động" từ Intel, Microsoft có thể vẫn sẽ do dự, mặc dù từng tuyên bố rằng Windows 10 sẽ là phiên bản cuối cùng.
Các dòng chip Core thế hệ 12 (Alder Lake hay ADL), thế hệ 13/14 (Raptor Lake hay RTL) và hiện tại là Core Ultra (MTL) đều đã xuất hiện. Rõ ràng, Windows 11 đã ra đời như một hệ quả tất yếu. Hiện nay, chúng ta còn nghe đồn về sự xuất hiện của Windows 12 vào năm 2024, nhưng đó sẽ là một câu chuyện khác (dù sao thì bản cập nhật tiếp theo cũng chưa chính thức mang tên Windows 12).

Nếu bạn là người thích "nghịch" máy tính, chắc hẳn bạn đã từng thử cài đặt Windows vài lần. Bạn sẽ thấy rằng vấn đề liên quan đến Windows 10 trên ADL, RTL (và mới đây là MTL) không nghiêm trọng như truyền thông thường nói. Những chip này vẫn hoạt động tốt với Windows 10, bạn vẫn có thể sử dụng một cách bình thường. Vậy rốt cuộc, vấn đề ở đây là gì?

Về cơ bản, Windows 10 (cùng các phiên bản trước) không được thiết kế để phân biệt giữa các kiến trúc CPU khác nhau trong cùng một hệ thống. Bạn cấp bao nhiêu nhân, nó sẽ sử dụng hết bấy nhiêu, không phân biệt thế hệ cũ hay mới, lớn hay nhỏ, mạnh hay yếu. Vì vậy, thực tế bạn vẫn có thể sử dụng Windows 10 bình thường với các thiết kế hybrid của Intel, nhưng hiệu suất sẽ không được tối ưu hóa tốt nhất.
Trong một số trường hợp, hiệu suất trên Windows 10 thậm chí có thể giảm đi vì kernel của hệ điều hành này giao việc cho các nhân yếu. Đã từng có mẹo để "tắt" bớt các nhân E-core trong BIOS nhằm tránh giảm hiệu suất do đặc điểm này! Nhưng nhìn chung, nếu bạn mua CPU mới mà phải tắt E-core, thì thà chọn AMD còn hơn…

Để tận dụng tối đa kiến trúc hybrid, Microsoft buộc phải cho ra mắt hệ điều hành mới, và nhiệm vụ của Windows 11 (và các phiên bản sau) là "hiểu" thêm một thành phần mới của Intel - Thread Director. Chức năng của Thread Director là đứng giữa kernel OS và các nhân CPU để điều phối công việc. Trước đây, nhiệm vụ sẽ do kernel OS quản lý, nhưng giờ đây mọi thứ phải thông qua Thread Director. Điều này có thể giải thích phần nào về sự không ổn định của hiệu suất Windows 11 trên các chip Zen của AMD, vì AMD không có thiết kế này.
Nhưng nếu Windows 10 vẫn có thể chạy trên MTL, thì câu hỏi đặt ra là gì? Khác với ADL hay RTL, Thread Director trên MTL không phân chia công việc từ P-core xuống E-core (E-core tồn tại hay không không quan trọng), mà từ E-core trở lên (E-core là bắt buộc). Thậm chí tình hình còn tệ hơn khi MTL có đến 3 cấp core - LP E-core trên SoC (nhận việc đầu tiên), E-core và P-core trên die CPU. Điều này có nghĩa là bạn không thể "tắt" chúng như trước đây với ADL hay RTL. Vậy nên nếu "cố chấp" dùng Windows 10, người thiệt thòi sẽ chính là bạn…


Trở lại với chủ đề chính, khi ra mắt MTL, Intel đã tuyên bố "đây là cuộc cách mạng chip lớn nhất trong 40 năm qua". Đây là lần đầu tiên công ty này tập trung thiết kế vào die SoC thay vì die CPU. Mọi tác vụ đầu tiên sẽ được xử lý tại SoC, sau đó mới được "phân phối" tới từng die chức năng riêng. Đáng chú ý là trên die SoC sẽ có sẵn 2 nhân E-core tiết kiệm điện. Khi hai nhân này "bị quá tải", chúng sẽ chuyển công việc lên die CPU ở trên. Bây giờ, chúng ta hãy bắt đầu với nhân P-core Redwood Cove.
Thực tế, Intel không nói nhiều về P-core này, ngoại trừ một slide rất đơn giản với cái tên và vài dòng chữ nhàm chán... May mắn thay, ảnh chụp diagram Redwood Cove cho thấy nó tương tự như Golden Cove (ADL) hoặc Raptor Cove (RTL). Dựa trên những gì đã biết, Raptor Cove chỉ là phiên bản làm mới của Golden Cove, với L2 Cache tăng lên 2 MB (so với 1.25 MB của thế hệ trước). Sự khác biệt chính ở đây là ADL/RTL được xây dựng trên tiến trình 10 nm (hoặc Intel 7), còn die CPU MTL là 7 nm (hoặc Intel 4).

Mặc dù không thể khẳng định chắc chắn 100%, nhưng chúng ta có thể tạm thời kết luận rằng Intel vẫn tiếp tục sử dụng kiến trúc P-core từ RTL cho MTL. Nếu bạn chưa rõ về P-core của dòng chip Core thế hệ 13/14, hãy cùng tìm hiểu.
Căn bản, một kiến trúc CPU thông thường gồm ba phần: front-end, execution và back-end. Quá trình làm việc có thể được ví như việc bạn đặt hàng qua mạng. Ở front-end, khi nhận yêu cầu, hệ thống sẽ tạo đơn và đưa vào danh sách chờ. Đến giai đoạn execution, cửa hàng nhận đơn, kiểm tra hàng hóa, nguyên liệu, và nhân lực có đủ để thực hiện đơn hàng. Cuối cùng, ở back-end, sản phẩm đã hoàn tất và được chuyển đến tay bạn.


Golden Cove đánh dấu một bước chuyển mình lớn về kiến trúc so với thế hệ trước (Sunny Cove/Cypress Cove). Trước tiên, ở front-end, bộ phận giải mã lệnh đã được mở rộng lên 6-wide (so với 4-wide ở thế hệ cũ). Đối với kiến trúc x86, đây là một bước đi khá táo bạo, bởi với độ dài biến thiên của các lệnh, việc mở rộng decoder trở nên phức tạp hơn so với các kiến trúc RISC như ARM. Nếu không thiết kế cẩn thận, việc mở rộng này có thể gây ảnh hưởng tiêu cực đến hiệu suất chip. Đáng chú ý, cả bốn thế hệ kiến trúc Zen của AMD vẫn duy trì decoder 4-wide. Theo một số tin đồn, Zen 5 có thể thay đổi triết lý này, nhưng đó là một câu chuyện khác.

Tất nhiên, việc mở rộng decoder sẽ trở nên vô nghĩa nếu các thành phần hỗ trợ không được cải tiến. Cụ thể, iTLB hiện hỗ trợ tối đa 256 entry (tăng từ 128) cho các lệnh 4K, và 32 entry (tăng từ 16) cho các lệnh 2M/4M. Dung lượng I-Cache trên Redwood Cove đã được nâng lên 64 KB (so với 32 KB của Golden Cove). Vai trò của µOP Cache cũng trở nên quan trọng hơn, giúp giảm tải điện năng cho decoder. Intel cho biết 80% thời gian hoạt động của decoder là "ngắt mạch" (gated) vì phần lớn vi lệnh được lấy từ µOP Cache. µOP Cache trên Golden Cove có khả năng chứa tới 4K entry (tăng từ 2250), cho phép đạt năng suất 8 vi lệnh/chu kỳ (tăng từ 6). Mục tiêu là nâng cao hiệu suất decode từ 16 byte/chu kỳ lên 32 byte/chu kỳ. Tất cả các lệnh được "xé lẻ" thành vi lệnh sẽ được đưa vào µOP Queue để chờ xử lý tiếp theo.

Trước khi dữ liệu rời khỏi front-end để vào giai đoạn execution, Intel đã bổ sung một khu vực "đệm" để phân loại, sàng lọc, đánh giá và sắp xếp các vi lệnh, gọi là Out of Order Engine. Lưu ý rằng Engine này cũng đã được mở rộng lên 6-wide (tăng từ 5). Do đó, lý thuyết cho thấy Golden Cove/Redwood Cove có thể đạt hiệu suất 6 IPC (kết hợp với decoder 6-wide), nhưng ở đây chúng ta sử dụng vi lệnh (µOP) thay vì tập lệnh (instruction).

Với việc mở rộng đáng kể ở front-end, phần execution cũng không thể giữ nguyên như trước. Golden Cove có đến 12 pipeline xử lý số nguyên (tăng từ 10), trong đó 5 pipeline dành riêng cho ALU (tăng từ 4) và 7 pipeline cho AGU (tăng từ 6). Một chi tiết thú vị trong sơ đồ Redwood Cove của Intel là pipeline 11 và 10 hoán đổi cho nhau, điều này có thể là một nhầm lẫn trong quá trình đánh máy. Các thông số còn lại vẫn giữ nguyên như cũ.

Để đảm bảo đủ "đầu việc" cho 12 pipeline, kích thước bộ đệm re-order buffer (ROB) của Golden Cove cũng phải tăng lên đáng kể, đạt 512 entry (tăng từ 352). Đây là con số rất lớn, có lẽ chỉ đứng sau các chip M của Apple (khó hiểu vì kiến trúc ARM dễ mở rộng hơn x86). Bộ đệm này sẽ gửi công việc đến các đơn vị xử lý số thực (FPU) cạnh bên các đơn vị số nguyên (INT). Tuy nhiên, khác với INT, FPU trên Golden Cove không tăng thêm số pipeline mà chỉ bổ sung tính năng FADD (so với Sunny Cove), hỗ trợ tập lệnh AVX-512 cùng toán tử FP16 cho thuật toán AI. Số lượng thanh ghi FPU cũng tăng lên 332 entry (tăng từ 224) để đáp ứng các thay đổi này.

Việc ưu tiên INT so với FPU là điều dễ hiểu, bởi vì thiết kế của INT đơn giản hơn và tiêu tốn ít silicon hơn so với FPU. Hơn nữa, FPU thường được sử dụng trong các ứng dụng chuyên sâu như HPC hoặc siêu máy tính, trong khi INT lại phổ biến hơn trong cuộc sống hàng ngày.

Dựa trên hai phần front-end và execution đã thảo luận, không khó để nhận thấy rằng back-end của Golden Cove cũng cần được mở rộng để có thể xử lý khối lượng dữ liệu lớn phát sinh từ kiến trúc mới. Nếu như Sunny Cove chỉ có 2 cổng Load dữ liệu, thì Golden Cove đã nâng con số này lên 3 cổng (số cổng Store vẫn giữ nguyên ở 2). Đối với các tập lệnh liên quan đến dữ liệu 256-bit, mỗi chu kỳ có thể thực hiện tối đa 3 lần Load. Với dữ liệu AVX-512, hiệu suất đạt 2 lần Load mỗi chu kỳ.


Về dung lượng cache, L1 vẫn giữ nguyên so với thế hệ trước, ở mức 48 KB. Trong khi đó, L2 Cache đã tăng lên 1.25 MB (Golden Cove) hoặc 2 MB (Raptor Cove/Redwood Cove), so với mức "khiêm tốn" 512 KB của Sunny Cove. Sự gia tăng đáng kể này giữa Golden Cove và Raptor Cove cho thấy sự chuyển đổi từ 4 IPC lên 6 IPC đã tạo ra một lượng dữ liệu lớn đến mức phần back-end phải "chạy đua" để theo kịp front-end và execution.
Ngoài ra, bên cạnh các tập lệnh đã có trên Sunny Cove, Golden Cove còn bổ sung nhiều tập lệnh mới như AVX-VNNI, AVX512-FP16 và TSX. Do Intel không cung cấp thêm thông tin về Redwood Cove, có thể hiểu rằng MTL sẽ giữ nguyên các tập lệnh tương tự ADL hoặc RTL.
Cuối cùng, mình sẽ cập nhật thêm thông tin về E-core Crestmont và E-core Gracemont sau.

Deeptalk là một bài viết phân tích sâu sắc, nội dung chất lượng cao với hình ảnh bắt mắt, mang lại trải nghiệm thú vị cho người đọc. Hình ảnh trong bài Deeptalk được mở rộng tối đa, giúp bạn chiêm ngưỡng và tiếp nhận thông tin theo cách hoàn toàn mới mẻ. Hãy pha cho mình một ly cà phê thơm ngon, vừa nhâm nhi vừa thưởng thức bài viết Deeptalk nhé, chắc chắn sẽ rất tuyệt vời!
