Laptop Acer



Phân tích kiến trúc AMD Zen 5 - Cải tiến lớn nhất kể từ Zen 'đời đầu' (phần 2)

Lư Thế Nghĩa
30/8/2024 13:34Phản hồi: 27
Phân tích kiến trúc AMD Zen 5 - Cải tiến lớn nhất kể từ Zen 'đời đầu' (phần 2)
Tiếp tục những phân tích về kiến trúc AMD Zen 5. Ở phần 1, mình đã đi qua về những thử thách cũng như cách mà AMD tạo ra Zen 5 nhờ tầm nhìn của lãnh đạo như thế nào, trong phần 2, mình sẽ nói sâu hơn về kiến trúc Zen 5, từ front-end tới back-end và những kết luận sơ bộ. Mình sẽ tham khảo kết quả thử nghiệm của các kênh nước ngoài, đáng tiếc là ở Việt Nam, mình không có đủ thời gian và số lượng sản phẩm thử nghiệm nên hẹn các bạn dịp khác.

Front-end


Do đã nói nhiều decoder ở phần 1 nên mình không nhắc lại nữa. Ngoài decoder ra thì các thành phần như Bộ đệm Tập lệnh (L1I Cache), Bộ tiên đoán rẽ nhánh (BPU), Bộ đệm Vi lệnh (Op Cache) cũng có vai trò rất quan trọng. Đáng chú ý là các thành phần này dường như đều được x2 để đáp ứng cho phù hợp bộ decoder đôi đã nói trước đó.

Zen 5 Arch 04.jpg
Front-end Zen 5 có nhiều bộ phận x2 theo decoder

Trong cấu tạo vi xử lý, BPU có vai trò gần giống CEO của công ty. Nó tiên đoán trước những nhánh công việc tiếp theo cần làm để từ đó, lên sẵn danh sách các tập lệnh cần thiết cho chu kỳ tính toán sau xử lý. Dĩ nhiên nếu BPU tiên đoán sai thì những tập lệnh mà nó gửi xuống sẽ thành vô nghĩa và quá trình tính toán trở thành công cốc, gây thiệt hại cho hiệu quả công việc. Trên Zen 5, bộ BPU mới cho phép tiên đoán có điều kiện theo cơ chế zero-buble. Nó được nâng cấp bộ L1 BTB lớn hơn đáng kể so với Zen 4 - từ 1.5K lên tới 16K! Bộ stack địa chỉ trả về cũng được mở rộng hơn (32 vs. 52 entry). Kết quả là BPU Zen 5 cho phép đoán trước tới 3 cửa sổ/chu kỳ (BPU Zen 4 chỉ có 2).


Do có 2 decoder nên nhân Zen 5 cũng có tới 2 Op Cache. Chi tiết thú vị là tổng độ dài Op Cache Zen 5 cũng tới 12-wide (2x 6-wide), ngang bằng Lion Cove của Intel. Như vậy sơ sơ thì bên tám lạng, bên nửa cân. Vai trò của Op Cache chủ yếu chứa các tập lệnh được dùng lại nhiều lần, giúp giảm tải công việc cho decoder, giúp quá trình gửi lệnh (fetch) xuống dưới diễn ra liên tục, ít bị gián đoạn giữa chừng. Op Cache Zen 5 có dung lượng tới 6K vi lệnh, cho băng thông tối đa 12 vi lệnh/chu kỳ (tăng từ 9 so với Zen 4). Năng lực liên kết bộ nhớ Op Cache Zen 5 cũng cao hơn thế hệ trước, từ 12-way lên 16-way.

L1I Cache là thành phần dường như không đổi so với trước, dung lượng vẫn 32 KB, liên kết nhớ 8-way, hiệu suất 2x 32 bit/chu kỳ (có vẻ tương ứng với 2 decoder phía dưới).

Về tổng quan, front-end Zen 5 cho phép gửi đi (Dispatch) 8 vi lệnh/chu kỳ, hoặc cho nhân số nguyên (INT) hoặc số thực (FPU), tương đương với Front-end Lion Cove.

Xử lý số nguyên


Execution có lẽ là phần mà AMD bắt đầu khác biệt so với Intel. Nếu như Intel có thêm một lớp OoO để phân loại chia tách các vi lệnh INT/FPU thì AMD sự phân loại đi theo chu kỳ (hoặc INT hoặc FPU). Sau đấy tuỳ là INT hay FPU mà mỗi bên sẽ có Bộ chia lịch (Scheduler) hay Sửa tên (Rename) riêng. Ở đây, phần Rename INT cũng có bề rộng 8-wide tương ứng với Dispatch ở trên.



Zen 5 Arch 05.jpg
INT Zen 5 có 6 ALU và 4 AGU

Tuy vậy, INT Zen 5 "chỉ có" 6 ALU và 4 AGU, tăng lên từ 4 ALU và 3 AGU trên Zen 4. Nhưng Decoder Zen 4 là 4-wide, nên Execution của Zen 4 là "dư" so với Front-end. Nên có thể thấy INT Zen 5 có phần "hụt hơi" so với Front-end. Bù lại thì đặc tính chia vi lệnh theo chu kỳ nên khi INT đang "bận" thì Front-end có thể gửi việc cho FPU và ngược lại. Vả lại trong thiết kế chip, những thế hệ kiến trúc đầu tiên sẽ không bao giờ hoàn hảo mọi thứ, sẽ luôn có vấn đề để khắc phục ở các phiên bản sau. Lý do là vì "quỹ" transistor có hạn, các kỹ sư buộc phải đánh đổi không cái này thì cái khác. Dù sao bên Lion Cove cũng chỉ có 6 ALU INT nên Zen 5 cũng xem là "ngang kèo".

Quảng cáo



Dĩ nhiên, khi thay đổi số lượng ALU/AGU thì các thành phần hỗ trợ chúng cũng sẽ thay đổi theo. Scheduler INT ALU nay được tách riêng với Scheduler INT AGU (trên Zen 4 gộp chung). Scheduler ALU Zen 5 hỗ trợ tới 88 entry, AGU là 56 entry (tổng 144 entry, so với tổng Zen 4 là 4x 24 = 96 entry). Thanh ghi (register file) INT Zen 5 tăng lên 240/192 entry (Zen 4 là 224/126 entry). Bộ đệm ROB INT Zen 5 tăng tới 448 entry (Zen 4 là 320 entry).

Xử lý số thực


Trong khi số nguyên là những thứ chúng ta thường dùng hàng ngày, số thực lại là những công việc có tính "nặng nhọc", ví như render, decode/encode video, 3D gaming, tính toán AI… Nhưng vì thế FPU cũng là thành phần tương đối ngốn nhiều transistor, có lẽ chỉ sau Cache (phần lớn transistor vi xử lý ngày nay là dùng cho bộ nhớ). Trên Zen 5, FPU được đầu tư tương đối kỹ và có lẽ trong tầm nhìn của Lisa Su, CPU vẫn là nòng cốt để "combat" với Intel lẫn NVIDIA trên mặt trận server/HPC (siêu máy tính).

Chi tiết thú vị và cũng gần như quan trọng nhất trên FPU Zen 5 chính là năng lực xử lý AVX-512. Đây là điểm rất khôi hài với mình =)))) Vì AVX-512 là thứ mà Intel đã dồn bao nhiêu tâm huyết để đầu tư, cũng như xây dựng hệ sinh thái cho nó (bắt đầu từ 2013, từ những con chip Knight Landing chỉ dành cho server). Có rất nhiều chuyện "chìm nổi" giữa Intel và AVX-512. Cha đẻ Linux từng "nguyền rủa" AVX-512 nên "chết đau đớn" (I hope AVX-512 dies a painful death), lý do vì sự phân mảnh mà Intel tạo ra chỉ trong nội bộ các tập lệnh con cho AVX-512 khiến cho việc tích hợp chúng gặp nhiều khó khăn. Đặc biệt việc xử lý AVX-512 rất ngốn điện và toả nhiều nhiệt, phần lớn chip Intel phải giảm xung khi kích hoạt chế độ AVX-512 để không bị quá nhiệt.

Zen 5 Arch 06.jpg
FPU Zen 5 với năng lực tính toán AVX-512

Đây cũng là lý do mà những thế hệ chip Intel dành cho người dùng phổ thông (Core) gần đây, các tập lệnh AVX-512 đã bị bỏ (chúng vẫn có mặt trên dòng Xeon cho server). Song Lisa Su dường như có quan điểm khác...

Quảng cáo



Zen 5 và 5c hỗ trợ đầy đủ AVX-512, ngay cả phiên bản chip phổ thông như Ryzen cũng có AVX-512. Lý do? Chính là AI. Trong những năm tháng "đau thương" của mình, Intel đã phát triển AVX-512 theo hướng tính toán AI thông qua các tập lệnh VNNI 512-bit. Tính tới hiện tại, hệ sinh thái AI dựa trên AVX-512 tương đối hoàn thiện nên nếu bỏ qua AVX-512 thì quả là sai sót cho AMD. Vậy nên… đúng người đúng thời điểm chính là đây.

Dĩ nhiên, hỗ trợ 512-bit không phải chuyện đơn giản. Các thế hệ FPU Zen trước đây chỉ hỗ trợ các vector 256-bit. Nếu muốn xử lý 512-bit, FPU Zen 4 phải "chẻ đôi" thành 2 đoạn, xử lý trong 2 chu kỳ. Với Zen 5 thì tất cả có thể làm trong 1 chu kỳ, trên lý thuyết là nhanh x2 thế hệ trước. Mỗi chu kỳ FPU Zen 5 thực hiện được 2 lệnh nạp (load) và 1 lệnh chứa (store) 512b. Một phép toán FADD tốn 2 chu kỳ.

FPU Zen 5 được tăng lên 4 ống lệnh, nghĩa là ngang cơ FPU Lion Cove (tăng lên từ 3 ống lệnh của Zen 4). Kích thước register file FPU Zen 5 tăng lên gấp đôi (từ 192 lên 384 entry). Scheduler FPU Zen 5 tăng lên tới 3 đơn vị, mỗi đơn vị hỗ trợ 38 entry (Zen 4 có 2 Scheduler, mỗi cái 32 entry).

Back-end


Dĩ nhiên khi một nhà máy mở rộng sản xuất, tăng thêm số dây chuyền làm việc… thì kho chứa hàng cũng phải mở rộng hơn. Phần thay đổi nhiều nhất ở Back-end Zen 5 là L1 Data Cache, vì đây là nơi nhận "hàng" từ cả INT lẫn FPU "làm ra". Tuy dung lượng L1D Zen 5 chỉ tăng "nhẹ" lên 48 KB so với 32 KB của Zen 4, nhưng số liên kết nhớ (associativity) của nó đã tăng từ 8-way lên 12-way. Số liên kết nói lên khả năng "giao hàng" của bộ nhớ đó với các bộ phận khác. Một cách dễ hình dung là càng có nhiều cao tốc liên kết 2 thành phố/bến cảng thì hàng hoá lưu thông càng dễ dàng. AMD cho biết L1D Zen 5 có độ trễ 4 chu kỳ, rất là ấn tượng vì L0 của Lion Cove cũng có độ trễ tương đương và cùng mức dung lượng. Xưa nay, AMD thường không bằng Intel ở tốc độ cache.

Zen 5 Arch 07.jpg
L1, L2 Cache được nâng cấp mạnh khả năng liên kết nhớ

Năng lực nhập/chứa dữ liệu Zen 5 cũng cao hơn Zen 4, từ 3/1 lên 4/2 ống lệnh. Bộ TLB hỗ trợ L1/L2 cũng tăng từ 72/3072 (Zen 4) lên 96/4096 entry (Zen 5). Đáng chú ý nếu toán tử là 512b thì năng lực nhập/chứa giảm còn 2/1 lệnh/chu kỳ. Ngoài ra, 4 ống lệnh nạp INT có thể được chập đôi lại thành 2 ống FP khi cần thiết.

Sang L2 Cache (chứa cả dữ liệu và tập lệnh), dung lượng vẫn giữ nguyên ở mức 1 MB, nhưng độ liên kết tăng lên 16-way (gấp đôi 8-way trên Zen 4), cho phép nó đạt băng thông 64b/chu kỳ. Dữ liệu từ L1I hoặc L1D đều có thể copy sang L2 theo hình thức victim với tốc độ 64b/chu kỳ.

Zen 5 Arch 09.jpg
Mô hình trao đổi dữ liệu giữa L1I, L1D, L2 và L3 Cache của Zen 5

Tuy vậy, khi copy từ L2 Cache sang L3 Cache (dùng chung giữa 8 nhân Zen 5) thì băng thông này giảm còn 32b/chu kỳ. Và từ L3 Cache sang các nơi khác cũng 32b/chu kỳ. L3 Cache có dung lượng 32 MB (trung bình 4 MB/nhân), liên kết 16-way.

Và tới đây, chúng ta có 1 die CCD Zen 5 cơ bản, gồm 8 nhân Zen 5, L3 Cache 32 MB, SMU quản lý toàn bộ khối CCD cùng bộ liên kết Infinity Fabric để liên kết với các chiplet khác (I/O die, CCD, GDC). Trừ trường hợp monolithic như Strix Point, các sản phẩm Ryzen/EPYC khác của AMD cũng sẽ dựa trên việc ghép LEGO die CCD này với các die CCD và I/O khác. Trong đó, nhân Zen 5/5c là "linh hồn" của tất cả.

Zen 5 Arch 10.jpg
Cấu tạo cơ bản một chip Ryzen Zen 5 dành cho desktop

Những benchmark sơ bộ và lời kết


Như vậy là chúng ta đã tìm hiểu cơ bản kiến trúc Zen 5 của AMD. Đây là một trong những thay đổi lớn nhất của AMD kể từ Zen 1 cũng như là từ Bulldozer. Trước các biến động của thị trường công nghệ, Zen 5 không chỉ phải đối đầu với riêng Lion Cove của Intel mà còn cả từ Snapdragon của Qualcomm (và có thể cả MediaTek, Samsung, Huawei…). Tới nay, các benchmark sơ bộ của Zen 5 lần lượt đã có, gồm cả Windows và Linux. (Lưu ý rằng những kết quả này được thực hiện thử nghiệm lúc chưa có bản cập nhật mới của Windows 11)

SPEC CPU 2017 1T.png
SPEC CPU 2017 1T INT.png
SPEC CPU 2017 1T FPU.png
So sánh hiệu năng đơn luồng của Zen 4, Zen 5 và Raptor Lake

Trên thực tế AMD có công bố IPC của Zen 5 cao hơn Zen 4 16%. Nếu thoạt nhìn chênh lệch decoder thì con số này khá… tệ (4-wide và 8-wide). Tuy nhiên bạn cần chú ý Zen 4 là ở "cuối đường" của 4-wide, hiệu năng của nó cao hơn Zen 1 rất nhiều. Còn Zen 5 mới là khởi điểm của 8-wide, thế nên khoảng cách Zen 4 và Zen 5 là có thể hiểu được. Zen 6 trở về sau chắc chắn sẽ có sự cải thiện IPC cao hơn thế hệ này, nhưng sẽ là câu chuyện ở thì trong lai.

Ngoài ra khi so sánh với Intel, nhất là hiệu năng đơn luồng, các con chip nền tảng Raptor Lake (thế hệ 13/14) có cấu trúc 6-wide decoder cho thấy chúng đã yếu hơn Zen 5. Dĩ nhiên khi benchmark đa luồng có sự kết hợp của cả P-core và E-core thì mọi thứ trở nên khó phân biệt hơn.

Performance Summary.png
Game Tests 720p.png
Tổng quan sức mạnh Zen 5 trên Windows

Có một tình huống hết sức đáng chú ý với mình đó là Linux. Dường như Zen 5 vận hành hiệu quả hơn trên hệ điều hành này. Theo ghi nhận của Phoronix, 2 con chip 6 nhân (9600X) và 8 nhân (9700X) Zen 5 của AMD dường như chỉ kém hơn 2 con chip desktop đắt tiền nhất hiện nay bên Intel gồm 13900K và 14900K (24 nhân với 8 nhân P)! Thậm chí chúng còn "đe doạ" cả "gà nhà" Ryzen Zen 4! Một số trang cho hay do quy định TDP 65W nên khi benchmark, các chip Ryzen Zen 5 đã bị "trói chân trói tay", chúng không được tự do turbo boost nhất là lúc chạy đa luồng. Nhưng khi được "tháo gông" PBO thì mọi thứ rất khác, nói kiểu nôm của racer là được "mở" ECU...

Tất nhiên khi turbo, con chip sẽ ngốn điện hơn. Dù vậy do được sản xuất trên tiến trình TSMC N4P, về cơ bản Ryzen Zen 5 vẫn đỡ ngốn điện hơn các đại diện Core 13/14 nhà Intel. Thắc mắc của mình lúc này là Arrow Lake được gia công ở TSMC sẽ ngốn điện đến mức nào? Xem chừng cuộc đấu PC 2024 vẫn còn nhiều điều thú vị phía trước.

Linux Benchmark Performance copy.jpg
Linux Benchmark Power copy.jpg
Tổng quan sức mạnh Zen 5 trên Linux

Tổng kết chung, Zen 5 cho thấy AMD đang có những bước đi đúng đắn. Một kiến trúc mạnh mẽ hơn, khai thác tốt hơn những nơi cần khai thác (AVX-512, AI), và vẫn còn nhiều dư địa để cải tiến về sau. Đây chắc chắn là một bước đà tốt cho những sản phẩm về sau của công ty này.

Phân tích kiến trúc AMD Zen 5 - Cải tiến lớn nhất kể từ Zen 'đời đầu' (phần 1)
27 bình luận
Chia sẻ

Xu hướng

Bán đắt thế làm sao phổ biến ở VN được, trong khi intel bảo hành 5 năm giá lại rẻ hơn.
GLES
TÍCH CỰC
một tháng
@khoaslim thì nguyên tắc thị trường ko lỗi thì giá cao, còn lỗi cả mớ thì giá rẻ thôi, mà ai rảnh hơi đi đổi hoài vậy
@GLES Đang nói là price list bằng nhau mà giá ở VN khác nhau, ban đầu có ai biết nó lỗi đâu.
@Nguyễn Chí Danh04 Này trên Amazon bên Mỹ Đế mà bạn???
@khoaslim Ban đầu không biết Intel lỗi thì giờ biết. Intel lỗi nhiều quá nên phải tăng thời hạn bảo hành lên 5 năm.

Mua hàng Intel giá cũng chả rẻ, cpu giá cao, main phải mua hàng xịn giá cao, tản nhiệt cũng phải khủng (giá cũng rất cao). Sau đó phải cập nhật bios để giảm giảm hiệu năng, lại không dám chạy nặng sợ chết con chip. Mà xui nó chết thì mất công, mất sức đi bảo hành.

Thằng ngu nào đó nói đi bảo hành nhẹ như không là nó ngu đến mức không biết suy nghĩ rằng đang yên đang lành, phải tháo dây rồi chở cả cái thùng máy nặng trịch đi bảo hành thì không có thoải mái nhẹ nhàng gì hết. Hên thì được bảo hành ngay, cũng phải mất ít nhất thời gian test máy, làm thủ tục giấy tờ các thứ, không có chuyện vác cái thùng máy nặng trịch đó đến phát là đổi ngay. Còn xui thì phải mất vài ngày. Cay đắng nhất là công việc, dự án đang làm phải bỏ dở... Sếp chửi, khách hàng chửi thì Intel fan có nghe dùm cho không?

//Đem con chuột, bàn phím đi bảo hành đã chán không muốn đi rồi chứ đừng nói đi bảo hành con CPU.

Đó là trường hợp "hên" là con CPU đó nó chết ngay để mà còn được đi bảo hành. Giả sử nó không chết, nó cứ ngắc ngoải, chơi game là nó bsod, chạy nặng là nó bsod, thỉnh thoảng nó bsod, ... (bỏ nhiều tiền ra để rồi làm không được, chơi cũng không xong) thì sao? Có được bảo hành không? Ai bị vậy mà được bảo hành thì xác nhận nhé?

Nói tóm lại là bỏ tiền ra mua bực vào người thì chỉ có thằng ngu mới làm. AMD có đắt (Thực ra nếu so tiền main và tản nhiệt thì rẻ hơn Intel nhiều) thì nó cũng là đồ tốt, trên toàn thế giới người ta tranh nhau mua, cháy hàng liên tục. https://tinhte.vn/thread/ben-trung-quoc-co-quan-net-171-may-toan-i9-14900k-cu-mo-game-choi-la-crash.3821546
Với đa phần user bình thường ko xài hết nhân cpu thì số lượng nhân cpu amd hiện nay cũng hợp lí. Tương lai nên tăng số lượng core lên 24 cho xx50 là ngon, bằng với 14900k intel dù nó spam ecore. Mấy con threadripper mắc tiền quá.
Intel đã xem
không biết hiệu năng ntn chứ mình xác nhận AMD nó mát hơn vc. trước mình dùng Nvidia 2070 toàn 80-90 đội trở lên chuyển quan AMD 6600 tầm 60-70 quay đầu cũng game cùng thể loại FPS nhỉn hơn tầm 5fps cpu chưa trải nghiệm
@Nha.tranthanh 6600 thì nó có tiếng là nhẹ điện và mát rồi. Hiệu năng so với giá thành thì cũng ổn.
@dualshoсk trước dung bao nhiêu card Nvidia toàn 90+ mát 80 hơn. nghe đồn nên mình cũng đổi sang AMD dùng thử mát hơn thật quanh 50-60 cũng lắm lên 70. sự hiệu năng cũng oke nữa.
s có nhu cầu đỏi mainboard mình sẽ đổi sang cả CPU AMD dùng thử.
Mua 7800x3D lúc 8tr rồi. Chờ cuối vòng đời AM5 thì nâng cấp phát nữa.
@Pooctox Thường thì main die chứ chip chưa kịp die.
@elgato Main chip đều ko die đâu. Upgrade để xài tính năng mới thôi.
Tiện đây ae cho hỏi, zen 5 r5k thì dùng main b450 ok rồi nhỉ, vd steel legend
@Kall4Me Sài được, nhớ update bios trước khi gắn cpu nha
@Kall4Me b450 là socket am4, zen 5 là am5 rồi, tiết kiệm thì chơi con b650m hdv cân tốt ryzen 7, ryzen 9 vẫn ok
@Dũng flop Đúng rồi bro, mình quên mất, lên am5 phải update lại linh kiện nhiều quá, dùng kiểu chơi chơi khỏi update
@Kall4Me only game thì mua 5700x3d cũng ok r

Xu hướng

Bài mới










  • Chịu trách nhiệm nội dung: Trần Mạnh Hiệp
  • © 2024 Công ty Cổ phần MXH Tinh Tế
  • Địa chỉ: Số 70 Bà Huyện Thanh Quan, P. Võ Thị Sáu, Quận 3, TPHCM
  • Số điện thoại: 02822460095
  • MST: 0313255119
  • Giấy phép thiết lập MXH số 11/GP-BTTTT, Ký ngày: 08/01/2019