Tổng quan luận án

Luận án tiến sĩ "Tối ưu hóa và đánh giá hiệu năng của tổ chức cache trong hệ thống vi xử lý thế hệ sau" do nghiên cứu sinh Hồ Văn Phi thực hiện tại Trường Đại học Bách khoa Hà Nội năm 2014, dưới sự hướng dẫn khoa học của TS. Hồ Khánh Lâm và TS. Nguyễn Viết Nguyên, thuộc chuyên ngành Kỹ thuật Viễn thông (mã số: 62520208).

Về tính cấp thiết, sự phát triển của công nghệ bán dẫn theo định luật Moore cho phép số lượng transistor trên một inch vuông tăng gấp đôi sau mỗi 18 tháng, thúc đẩy quá trình chuyển dịch cấu trúc vi xử lý từ đơn lõi sang đa xử lý trên một chip (CMP) và đa luồng đồng thời (SMT). Các nhà sản xuất vi xử lý thương mại như Sun, Intel, AMD và IBM đã chế tạo các dòng chip có 2, 4, 6, 8 đến hàng chục lõi, tích hợp hệ thống bộ nhớ cache phân cấp 2 hoặc 3 cấp và mạng liên kết trên chip (OCIN). Tuy nhiên, khi số lượng lõi gia tăng, các cấu hình mạng liên kết truyền thống như Bus chia sẻ, Ring, Crossbar và 2DMesh bộc lộ hạn chế về độ trễ truyền thông, suy giảm băng thông và phát sinh điểm nghẽn cổ chai. Tại Việt Nam, quá trình nghiên cứu và chế tạo vi xử lý đã ghi nhận các kết quả bước đầu từ Trung tâm ICDREC với chip 8-bit SigmaK3 (năm 2008), chip 32-bit VN1632 trên công nghệ 0,13 µm (năm 2010), cùng thỏa thuận hợp tác chế tạo chip MPW công nghệ 65 nm với Công ty RADRIX năm 2013. Khoảng trống nghiên cứu đặt ra là xác định quy mô số lõi, số cấp cache, dung lượng, kích thước dòng cache và cấu hình mạng liên kết phù hợp nhằm tối ưu hóa hiệu năng tổng thể của chip đa xử lý, đa luồng.

Mục tiêu nghiên cứu của luận án được xác định gồm 3 nội dung:

  1. Nghiên cứu phân tích ảnh hưởng của tổ chức cache đa cấp và các chính sách thay thế cache đến hiệu năng của chip đa xử lý, đa luồng.
  2. Xây dựng các mô hình kiến trúc chip đa xử lý, đa luồng, đa cấp cache. Tiến hành phân tích và đánh giá hiệu năng của các kiến trúc để lựa chọn tổ chức cache tối ưu nhằm nâng cao hiệu năng của chip đa xử lý, đa luồng.
  3. Nghiên cứu ảnh hưởng của các mạng liên kết giữa các lõi trên chip đến hiệu năng của chip đa xử lý, đa luồng để từ đó lựa chọn mạng liên kết trên chip phù hợp với kiến trúc chip đa xử lý, đa luồng.

Đối tượng nghiên cứu là tổ chức cache đa cấp trong kiến trúc chip đa xử lý, đa luồng. Phạm vi nghiên cứu tập trung vào các tổ chức cache 2 cấp (L1 riêng cho mỗi lõi, L2 chia sẻ) và 3 cấp (L1, L2 riêng cho mỗi lõi, L3 chia sẻ) trên kiến trúc CMP có 2-lõi, 4-lõi và 8-lõi (mỗi lõi xử lý 8-luồng); áp dụng mô hình mạng xếp hàng đóng đa lớp dạng tích các xác suất (MCPFQN) và thuật toán phân tích giá trị trung bình (MVA); đồng thời khảo sát các cấu hình mạng liên kết trên chip (Ring, 2DMesh, 2DTorus, 3DMesh, 3DTorus) với quy mô từ 8 đến 128 lõi.

Tổng quan tài liệu và vị trí của luận án

Luận án tổng thuật các công trình nghiên cứu về kiến trúc vi xử lý và hệ thống nhớ phân cấp. Tác giả điểm lại phân loại kiến trúc xử lý song song của Flynn (SISD, SIMD, MISD, MIMD), luật Amdahl mở rộng và các mô hình chip đa lõi gồm: chip đa lõi đối xứng (SMC), chip đa lõi bất đối xứng (AMC) và chip đa lõi linh hoạt (DMC) dựa trên đơn vị tương đương lõi cơ sở (BCE). Luận án khảo sát kỹ thuật đa luồng đồng thời (SMT) do Intel phát triển, cho phép nhân bản trạng thái kiến trúc để tạo ra các CPU logic cùng chia sẻ tài nguyên thực thi.

Về cấu trúc phần cứng thương mại, tác giả phân tích các hệ thống vi xử lý tiêu biểu: Sun UltraSPARC T1, T2 (8-lõi), T3 (16-lõi) và Rock (16-lõi); IBM Power4, Power5, Power6 (2-lõi), Power7 (8-lõi) và Cell; AMD Opteron các dòng 2, 4, 6 và 8-lõi; Intel Core 2 Duo, Core 2 Quad, Dunnington (6-lõi), Nehalem Core i5, Core i7 và kiến trúc thử nghiệm Tera-Scale (80-lõi); cùng Tilera Tile64 (64-lõi). Về mạng liên kết trên chip (OCIN), các công trình nghiên cứu trước đã đề cập đến các cấu hình Crossbar, Ring, 2DMesh, Fat Tree, Butterfly, Hypercube, 2DTorus, 3DMesh và 3DTorus. Về cơ chế duy trì tính nhất quán cache trong hệ thống đa lõi, luận án tổng hợp các giao thức chuẩn như MESI và MESIF.

Tại Việt Nam, cơ sở thực tiễn được ghi nhận qua các công bố của Trung tâm ICDREC (Đại học Quốc gia Thành phố Hồ Chí Minh) về chip SigmaK3 và VN1632, việc tiếp cận công nghệ ASIC, các thiết bị logic khả trình PLD, FPGA cùng các ngôn ngữ mô tả phần cứng VHDL và Verilog. Khoảng trống mà luận án lựa chọn giải quyết là thiết lập mô hình toán học giải tích định lượng để đánh giá hiệu năng hệ thống cache phân cấp trong chip đa xử lý, đa luồng; giải quyết hiện tượng nghẽn nút cổ chai tại cache chia sẻ cấp cuối khi số lõi tăng thông qua giải pháp kiến trúc cụm lõi; và xây dựng công thức tính toán trễ truyền thông trung bình nhằm lựa chọn cấu hình mạng liên kết tối ưu khi mở rộng quy mô hệ thống.

Cơ sở lý thuyết và phương pháp nghiên cứu

Luận án sử dụng nền tảng lý thuyết mạng xếp hàng đóng đa lớp có dạng tích các xác suất (Multiclass Closed Product-Form Queuing Network - MCPFQN) dựa trên chuỗi Markov thời gian rời rạc và liên tục (DTMC, CTMC). Để giải mô hình mạng xếp hàng, tác giả áp dụng thuật toán phân tích giá trị trung bình (Mean Value Analysis - MVA), tính toán các chỉ số hiệu năng bao gồm: thời gian chờ đợi tại các nút, thời gian đáp ứng, mức độ sử dụng và thông lượng (throughput) của từng nút cũng như toàn hệ thống.

Về mặt lý thuyết kiến trúc vi xử lý, luận án vận dụng luật Amdahl để biểu diễn tổng mức tăng tốc ($SP$) cho các dạng kiến trúc đa lõi:

  • Chip đa lõi đối xứng: $$SP_{SMC}(f, n, r) = \frac{1}{\frac{1-f}{perf(r)} + \frac{f \cdot r}{perf(r) \cdot n}}$$
  • Chip đa lõi bất đối xứng: $$SP_{AMC}(f, n, r) = \frac{1}{\frac{1-f}{perf(r)} + \frac{f}{perf(r) + n - r}}$$
  • Chip đa lõi linh hoạt: $$SP_{DMC}(f, n, r) = \frac{1}{\frac{1-f}{perf(r)} + \frac{f}{n}}$$ Trong đó, $f$ là tỷ trọng phần công việc có thể thực hiện song song, $n$ là tổng số BCE, và $r$ là số lượng BCE được tích hợp trong một lõi.

Hệ thống nhớ phân cấp được xây dựng trên ba nguyên tắc định vị: vị trí tạm thời, vị trí không gian và vị trí tuần tự. Thời gian trung bình truy nhập bộ nhớ (AMAT) và mức tăng tốc ($SP = MAT / AMAT$) được xác định thông qua thời gian trúng cache (Hit time), tỷ số trượt cache ($M$), và thời gian trượt penalty ($MAT$):

  • Hệ thống 1 cấp cache: $$AMAT_{L1} = L1_{hit_time} + (L1_{miss_rate}) \times MAT$$
  • Hệ thống 2 cấp cache: $$AMAT_{L1L2} = L1_{hit_time} + (L1_{miss_rate}) \times (L2_{hit_time} + L2_{miss_rate} \times MAT)$$
  • Hệ thống 3 cấp cache: $$AMAT_{L1L2L3} = L1_{hit_time} + (L1_{miss_rate}) \times [L2_{hit_time} + L2_{miss_rate} \times (L3_{hit_time} + L3_{miss_rate} \times MAT)]$$

Phương pháp nghiên cứu thực tế là phương pháp định lượng kết hợp mô hình hóa giải tích và mô phỏng trên máy tính. Tác giả xây dựng mô hình mạng xếp hàng tổng quát và mô hình rút gọn cho các kiến trúc CMP đa luồng, sau đó sử dụng công cụ phần mềm chuyên dụng JMT v.0 (Java Modelling Tools) để chạy các kịch bản mô phỏng kiểm chứng. Nguồn tư liệu và dữ liệu đầu vào dựa trên các thông số kỹ thuật thực tế của chip RISC (tần suất thực hiện lệnh và chỉ số CPI), kiến trúc bộ nhớ cache của các họ chip Intel Xeon, Core i7, và các tham số tô pô mạng liên kết trên chip.

Nội dung chính theo từng chương

Chương 1: Tổng quan về kiến trúc chip đa xử lý, đa luồng

Chương 1 trình bày tổng quan cấu trúc của chip CMP đa luồng, mạng liên kết trên chip và tổ chức bộ nhớ phân cấp. Tác giả phân tích lý do phát triển CMP: đặt nhiều lõi trên cùng vi mạch giúp thu nhỏ diện tích bản mạch chính, tăng cường phối hợp giữa các lõi, rút ngắn đường truyền xung tín hiệu, giảm trễ và tiết kiệm điện năng do công suất tiêu thụ tín hiệu trên dây dẫn tỷ lệ với bình phương điện áp chia cho điện trở ($P = V^2 / R$). Luận án giới thiệu xu hướng kiến trúc phân mảnh dạng ma trận ngói lợp (tiled architecture) tiêu biểu như Tile64 (64-lõi) và Tera-Scale (80-lõi).

Chương này trình bày mô hình kiến trúc SMC, AMC, DMC dựa trên đơn vị lõi cơ sở BCE và luật Amdahl tương ứng; phân loại Flynn gồm SISD, SIMD, MISD và MIMD; cùng công nghệ siêu luồng (SMT). Kỹ thuật SMT cho phép mỗi CPU vật lý sở hữu nhiều CPU logic với tập thanh ghi và bộ đếm chương trình (PC) riêng biệt, giúp luân phiên thực thi các chuỗi lệnh độc lập và khai thác các đơn vị chức năng nhàn rỗi.

Về mạng liên kết trên chip (OCIN), chương 1 hệ thống hóa các tham số đánh giá mạng: số liên kết ($L$), cấp độ nút ($d$), cấp độ lớn nhất ($d_{max}$), đường kính mạng ($D$), khoảng cách trung bình ($H$), độ rộng chia đôi ($B$), độ phức tạp sinh trưởng ($G$), độ trễ, băng thông liên kết và băng thông độ rộng chia đôi. Các công thức xác định tham số cho mạng $n$DMesh và $n$DTorus có $N$ nút ($k_i = k$ trên $n$ hướng) được tổng hợp cụ thể: đường kính $D \approx n(N^{1/n}-1)$ đối với Mesh và $D \approx (n/2)N^{1/n}$ đối với Torus; khoảng cách trung bình $H \approx (n/3)N^{1/n}$ đối với Mesh và $H \approx (n/4)N^{1/n}$ đối với Torus.

Về phân cấp hệ thống nhớ, chương 1 phân loại 7 cấp nhớ trong hệ thống đa xử lý:

Cấp nhớ Loại bộ nhớ Công nghệ chế tạo Dung lượng điển hình Thời gian truy nhập
L0 Thanh ghi CPU (Registers) SRAM tích hợp trong lõi Tập thanh ghi bên trong 0,3 - 0,5 ns
L1 Cache sơ cấp (L1I, L1D) SRAM trên chip 8 - 128 KB 1 - 3 ns
L2 Cache thứ cấp SRAM trên chip 256 KB - 3 MB 3 - 10 ns
L3 Cache cấp ba SRAM trên hoặc ngoài chip 2 - 12 MB 10 - 20 ns
L4 Bộ nhớ chính DRAM 4 - 16 GB 50 - 100 ns
L5 Thiết bị nhớ đĩa cứng Từ tính / Ổ đĩa cứng 1 - 16 TB 5 - 10 ms
L6 Thiết bị nhớ trên mạng Hệ thống RAID / LAN Phân tán trên mạng 10 Mb/s - 10 Gb/s

Chương 2: Nghiên cứu tổ chức cache, chính sách thay thế cache trong kiến trúc chip đa xử lý, đa luồng

Chương 2 tập trung phân tích nguyên tắc hoạt động, cấu trúc phần cứng, các tổ chức cache và thuật toán thay thế dòng cache. Cache bao gồm ba thành phần chức năng: khối nhớ dữ liệu (SRAM), thẻ nhớ (TRAM) lưu trữ địa chỉ và bộ điều khiển cache (chịu trách nhiệm thực thi snoop, snarf, cập nhật thẻ, ghi dữ liệu và xác định trạng thái trúng/trượt).

Tác giả so sánh chi tiết ba tổ chức cache:

  • Cache liên kết đầy đủ: Khối nhớ từ bộ nhớ chính có thể nạp vào dòng bất kỳ; trường thẻ $S$ bit được so sánh đồng thời với tất cả các thẻ trong cache. Cấu hình này cho tỷ số trúng cache cao nhất nhưng mạch so sánh phức tạp, thời gian tìm kiếm lâu khi dung lượng tăng, thường chỉ áp dụng cho dung lượng nhỏ dưới 4 KB.
  • Cache sắp xếp trực tiếp: Mỗi khối nhớ chỉ được ánh xạ vào một dòng cố định theo công thức $i = j \bmod C$ (với $j$ là địa chỉ khối, $C$ là số dòng cache). Địa chỉ nhớ chia thành 3 trường: trường thẻ ($S - R$ bit), trường dòng ($R$ bit) và trường từ ($W$ bit). Sơ đồ này có chi phí thấp, tìm kiếm nhanh nhưng dễ phát sinh xung đột hoán đổi liên tục giữa các khối cùng dòng, làm giảm hiệu năng trong môi trường đa nhiệm.
  • Cache liên kết tập hợp: Cache chia thành $S$ tập hợp, mỗi tập có $K$ dòng; ánh xạ khối vào tập theo công thức $s = b \bmod S$. Đây là tổ chức dung hòa ưu điểm của hai dạng trên, giảm xung đột và kiểm soát độ phức tạp mạch điện. Luận án dẫn chứng thực tế: Intel Pentium dùng cache liên kết tập hợp 2-dòng (dòng 32 B); Pentium 4 dùng L2 và L3 liên kết tập hợp 8-dòng (dòng 128 B); Intel Nehalem Xeon và Core i7 sử dụng L1I/L1D 32 KB liên kết tập hợp 4-dòng, L2 256 KB liên kết tập hợp 8-dòng và L3 (8-12 MB) liên kết tập hợp 16-dòng.

Về quy trình thay thế dòng cache khi xảy ra trượt và cache bị đầy, chương 2 khảo sát các chính sách: LRU (Least Recently Used), LFU (Least Frequently Used), FIFO, Random, NRU (Not Recently Used), SRRIP (gồm SRRIP-FP ưu tiên tần suất và SRRIP-HP ưu tiên trúng cache), DRRIP, BIP và BRRIP. Về cơ chế đọc và ghi dữ liệu, luận án phân tích quy tắc ghi thông qua (Write-through), ghi trở lại (Write-back kèm bộ đệm ghi), đọc bên cạnh (Read-aside) và đọc thông suốt (Read-through), cùng các giao thức duy trì tính nhất quán cache MESI và MESIF trong hệ thống đa lõi có cache chia sẻ.

Chương 3: Phân tích đánh giá hiệu năng của tổ chức cache trong kiến trúc chip đa xử lý, đa luồng

Chương 3 xây dựng mô hình toán học giải tích để đánh giá hiệu năng tổ chức cache. Tác giả mô hình hóa kiến trúc CMP đa luồng thành mạng xếp hàng đóng đa lớp có dạng tích các xác suất (MCPFQN) và áp dụng thuật toán phân tích giá trị trung bình (MVA). Mô hình giải tích được triển khai qua hai bước: mô hình tổng quát (chi tiết hóa từng nút xử lý, từng bus và từng khối cache) và mô hình rút gọn (nhóm các nút xử lý và cấp cache có tính chất đối xứng để tối ưu hóa quá trình tính toán).

Luận án khảo sát hai cấu trúc phân cấp:

  • Hệ thống 2 cấp cache: L1 cache riêng cho từng lõi, L2 cache chia sẻ chung cho toàn bộ các lõi.
  • Hệ thống 3 cấp cache: L1 cache và L2 cache riêng cho từng lõi, L3 cache chia sẻ chung cho toàn bộ các lõi.

Các thực nghiệm mô phỏng được thực hiện trên phần mềm JMT v.0 cho các cấu hình vi xử lý 2-lõi, 4-lõi và 8-lõi, với mỗi lõi xử lý đồng thời 8 luồng (tương ứng 16, 32 và 64 luồng trong toàn hệ thống). Bốn thông số hiệu năng chính được đo đạc tại các nút bao gồm: thời gian chờ đợi trung bình, thời gian đáp ứng trung bình, mức độ sử dụng tài nguyên và thông lượng trung bình (thể hiện qua các bảng 3.1, 3.2, 3.3 trong văn bản).

Kết quả mô phỏng cho thấy:

  • Khi số lượng lõi tăng từ 2 lên 4 và 8 lõi, áp lực truy cập lên bộ nhớ chia sẻ cấp cuối gia tăng, làm tăng thời gian chờ đợi và thời gian đáp ứng tại bus điều khiển và bộ nhớ chính.
  • Trong cấu hình 2 cấp cache, L2 cache chia sẻ nhanh chóng đạt ngưỡng bão hòa mức độ sử dụng khi số lõi tăng, dẫn đến hiện tượng trễ hàng đợi tăng cao.
  • Cấu hình 3 cấp cache (với L2 riêng cho từng lõi) giúp lọc phần lớn các yêu cầu truy cập cục bộ, giảm tải lưu lượng gửi tới L3 cache chia sẻ. Do đó, hệ thống 3 cấp cache duy trì thời gian đáp ứng thấp hơn, mức độ sử dụng tại các khối nhớ phân phối đồng đều hơn và thông lượng tổng thể của hệ thống cao hơn đáng kể so với hệ thống 2 cấp cache trên cùng quy mô lõi.

Chương 4: Giải pháp tối ưu hóa hiệu năng của tổ chức cache trong kiến trúc chip đa xử lý, đa luồng

Chương 4 đề xuất hai nhóm giải pháp tối ưu hóa hiệu năng: kiến trúc phân cụm lõi (core cluster) và lựa chọn cấu hình mạng liên kết trên chip (OCIN).

Nhằm khắc phục hiện tượng nghẽn nút cổ chai tại L3 cache chia sẻ tập trung trong các chip 8-lõi, tác giả đề xuất giải pháp kiến trúc cụm lõi: phân chia 8 lõi xử lý thành 2 cụm lõi độc lập, mỗi cụm gồm 4 lõi (mỗi lõi xử lý 8 luồng). Thay vì dùng chung một khối L3 cache duy nhất, mỗi cụm được trang bị một khối L3 cache riêng biệt. Tác giả xây dựng mô hình MCPFQN tổng quát và mô hình rút gọn cho kiến trúc cụm lõi, sau đó mô phỏng trên phần mềm JMT v.0 để so sánh với kiến trúc L3 cache dùng chung truyền thống (Bảng 4.1 trong luận án).

Kết quả mô phỏng cho thấy kiến trúc cụm lõi với L3 cache riêng giúp phân tán lưu lượng truy cập bộ nhớ, giảm áp lực tranh chấp hàng đợi, rút ngắn thời gian chờ đợi và thời gian đáp ứng tại các nút L3 cache, qua đó nâng cao mức độ sử dụng hữu ích và cải thiện thông lượng xử lý của toàn bộ chip 8-lõi.

Ở nội dung thứ hai, luận án nghiên cứu ảnh hưởng của mạng liên kết trên chip đến hiệu năng khi số lượng lõi tăng cao. Tác giả đề xuất công thức tính trễ truyền thông trung bình cho mạng liên kết trên chip dựa trên khoảng cách định tuyến trung bình, chu kỳ xung nhịp và tải lưu lượng truyền thông. Trên cơ sở đó, luận án tiến hành mô phỏng và so sánh 5 cấu hình mạng liên kết: Ring, 2DMesh, 2DTorus, 3DMesh và 3DTorus khi quy mô số lõi thay đổi theo các mức $n = 8, 16, 32, 64, 128$ lõi (Bảng 4.2 trong văn bản).

Kết quả phân tích trễ truyền thông trung bình và mức tăng tốc xử lý ($SP$) chỉ ra:

  • Cấu hình mạng Ring có trễ truyền thông tăng rất nhanh khi số lõi vượt quá 8 lõi, không phù hợp cho các hệ thống quy mô lớn do băng thông chia đôi thấp.
  • Cấu hình 2DMesh cải thiện đáng kể độ trễ so với Ring ở quy mô 16 và 32 lõi, nhưng bắt đầu bộc lộ độ trễ cao ở quy mô 64 và 128 lõi do đường kính mạng lớn.
  • Các cấu hình mạng liên kết 2DTorus, 3DMesh và 3DTorus duy trì khoảng cách định tuyến trung bình ngắn, độ trễ truyền thông thấp và mức tăng tốc xử lý cao ổn định khi số lõi tăng lên 64 và 128 lõi. Trong đó, mạng 3DTorus đạt các chỉ số hiệu năng tối ưu nhất về độ trễ và khả năng mở rộng quy mô.

Kết quả và những đóng góp mới

Luận án tự xác định các đóng góp mới về mặt lý luận khoa học và thực tiễn kỹ thuật như sau:

  1. Về mặt lý luận:
    • Xây dựng thành công khung phân tích giải tích dựa trên lý thuyết mạng xếp hàng đóng đa lớp dạng tích các xác suất (MCPFQN) kết hợp thuật toán phân tích giá trị trung bình (MVA) để mô hình hóa và đánh giá định lượng các thông số hiệu năng (thời gian chờ, thời gian đáp ứng, độ sử dụng, thông lượng) của hệ thống cache phân cấp trong vi xử lý CMP đa luồng.
    • Đề xuất mô hình kiến trúc cụm lõi (core cluster) tích hợp L3 cache riêng biệt cho từng cụm nhằm giảm thiểu tắc nghẽn truy cập tại cache cấp cuối.
    • Đề xuất công thức tính toán trễ truyền thông trung bình cho các cấu hình mạng liên kết trên chip (OCIN), hỗ trợ việc đánh giá mức tăng tốc xử lý của hệ thống đa lõi.
  2. Về mặt thực tiễn:
    • Cung cấp kết quả so sánh định lượng chi tiết khẳng định tính ưu việt của cấu hình 3 cấp cache so với 2 cấp cache, và hiệu quả giảm trễ, tăng thông lượng của kiến trúc cụm lõi trên hệ thống 8-lõi xử lý 8-luồng/lõi.
    • Xác định quy luật biến thiên hiệu năng của các cấu hình mạng liên kết trên chip theo quy mô số lõi, đưa ra khuyến nghị kỹ thuật chuyển đổi từ cấu hình Ring, 2DMesh sang 2DTorus, 3DMesh và 3DTorus khi chế tạo các chip đa xử lý có số lõi lớn từ 16 đến 128 lõi.
    • Xây dựng bộ kịch bản mô phỏng chi tiết trên công cụ JMT v.0, tạo cơ sở phương pháp luận cho việc phân tích, thiết kế và tối ưu hóa hệ thống nhớ vi xử lý.

Về kiến nghị và giải pháp, luận án đề xuất áp dụng giải pháp phân cụm lõi kết hợp tổ chức cache 3 cấp trong thiết kế vi xử lý thế hệ mới; áp dụng các cấu trúc mạng liên kết 2D/3D Torus khi phát triển hệ thống nhiều lõi; và tiếp tục khai thác các công cụ ASIC, FPGA, ngôn ngữ VHDL/Verilog để phục vụ nghiên cứu, đào tạo thiết kế vi mạch tại Việt Nam.

Hạn chế và hướng nghiên cứu tiếp

Về mặt hạn chế, các khảo sát mô phỏng hiệu năng tổ chức cache trong luận án tập trung chủ yếu vào quy mô 2-lõi, 4-lõi và 8-lõi (mỗi lõi 8 luồng); kết quả nghiên cứu dựa trên mô hình hóa toán học giải tích và mô phỏng trên phần mềm JMT v.0, chưa tiến hành chế tạo vật lý trên vi mạch thực tế để kiểm chứng thực nghiệm đo đạc phần cứng; đồng thời các khảo sát mạng liên kết điện tử truyền thống bằng kim loại vẫn chịu hạn chế về mặt công suất tiêu thụ và giới hạn băng thông vật lý.

Hướng nghiên cứu tiếp theo được luận án chỉ ra bao gồm:

  • Mở rộng mô hình MCPFQN và giải thuật MVA để đánh giá hiệu năng cho các chip đa xử lý có quy mô lớn hơn 8 lõi với số luồng xử lý cao hơn.
  • Nghiên cứu khảo sát sâu hơn các giải pháp mạng liên kết trên chip thế hệ mới nhằm thay thế mạng dây kim loại truyền thống, đáp ứng yêu cầu băng thông cao và công suất thấp.
  • Tích hợp và đánh giá thực nghiệm các chính sách thay thế cache động tiên tiến như DRRIP, SRRIP-FP, SRRIP-HP trong kiến trúc cụm lõi.
  • Hiện thực hóa và kiểm tra các thiết kế kiến trúc đề xuất thông qua việc lập trình trên các nền tảng phần cứng mẫu FPGA hoặc chế tạo chip thử nghiệm ASIC.

Giá trị tham khảo

Luận án là tài liệu tham khảo hữu ích cho các nhóm đối tượng:

  • Nghiên cứu sinh, học viên cao học và sinh viên các ngành Kỹ thuật Viễn thông, Điện tử, Kỹ thuật Máy tính và Công nghệ Thông tin nghiên cứu về kiến trúc máy tính, lý thuyết mạng xếp hàng và mô hình hóa hiệu năng vi xử lý.
  • Giảng viên các trường đại học khối kỹ thuật sử dụng làm tài liệu giảng dạy chuyên đề về kiến trúc vi xử lý đa lõi, phân cấp bộ nhớ và mạng liên kết trên chip (OCIN).
  • Các kỹ sư thiết kế phần cứng, chuyên gia phát triển vi mạch tại các viện nghiên cứu và trung tâm thiết kế (như Trung tâm ICDREC) tham khảo trong việc lựa chọn cấu hình cache, chính sách thay thế và tô pô mạng liên kết.

Các phần có giá trị tham khảo chuyên sâu nhất của luận án gồm: phương pháp ánh xạ kiến trúc phần cứng vào mô hình mạng xếp hàng MCPFQN và thuật toán MVA tại Chương 3; bộ kịch bản mô phỏng chi tiết trên công cụ JMT v.0 (trình bày tại phần Phụ lục); và công thức tính toán trễ truyền thông trung bình cho mạng liên kết OCIN tại Chương 4.

Câu hỏi thường gặp

1. Luận án sử dụng công cụ và phương pháp toán học nào để phân tích, đánh giá hiệu năng hệ thống cache?

Tác giả sử dụng lý thuyết mạng xếp hàng đóng đa lớp có dạng tích các xác suất (MCPFQN) kết hợp thuật toán phân tích giá trị trung bình (MVA). Mô hình toán học này được chia thành mô hình tổng quát và mô hình rút gọn, sau đó được hiện thực hóa và mô phỏng kiểm chứng trên máy tính bằng phần mềm chuyên dụng JMT v.0 (Java Modelling Tools).

2. Sự khác biệt về hiệu năng giữa tổ chức 2 cấp cache và 3 cấp cache trong chip 8-lõi (8 luồng/lõi) được thể hiện như thế nào?

Trong cấu hình 2 cấp cache (L1 riêng, L2 chia sẻ), toàn bộ các yêu cầu trượt cache từ 8 lõi đều đổ dồn trực tiếp về L2 cache dùng chung, khiến mức độ sử dụng của L2 tăng vọt, gây nghẽn hàng đợi và làm tăng thời gian chờ đợi cũng như thời gian đáp ứng trung bình. Trong cấu hình 3 cấp cache (L1 riêng, L2 riêng, L3 chia sẻ), L2 riêng của từng lõi đóng vai trò lọc lưu lượng cục bộ, giúp giảm tải đáng kể số lần truy xuất tới L3 cache chia sẻ, từ đó giảm thời gian đáp ứng trung bình và nâng cao thông lượng tổng thể của hệ thống.

3. Kiến trúc cụm lõi (core cluster) do tác giả đề xuất ở Chương 4 có nguyên lý hoạt động ra sao?

Kiến trúc cụm lõi phân chia 8 lõi xử lý thành 2 cụm độc lập, mỗi cụm gồm 4 lõi (mỗi lõi xử lý 8 luồng). Thay vì toàn bộ 8 lõi cùng tranh chấp một khối L3 cache chia sẻ chung duy nhất, mỗi cụm 4 lõi được trang bị một khối L3 cache riêng biệt. Thiết kế này giúp phân tán luồng dữ liệu, giảm thiểu sự tranh chấp trên đường truyền bus nội bộ, hạ thấp thời gian chờ đợi tại cache cấp cuối và tăng thông lượng hoạt động của hệ thống.

4. Khi quy mô vi xử lý tăng từ 16 lên 128 lõi, cấu hình mạng liên kết trên chip nào được khuyến nghị sử dụng?

Kết quả mô phỏng tại Chương 4 chỉ ra rằng mạng dạng Ring và 2DMesh bộc lộ nhược điểm trễ truyền thông tăng rất nhanh khi số lõi tăng cao. Do đó, tác giả khuyến nghị chuyển sang sử dụng các cấu hình mạng 2DTorus, 3DMesh và đặc biệt là 3DTorus. Các mạng này có khoảng cách định tuyến trung bình ngắn và băng thông độ rộng chia đôi lớn, giúp giữ độ trễ ở mức thấp và bảo đảm mức tăng tốc xử lý ($SP$) ổn định khi mở rộng quy mô lên 64 và 128 lõi.

5. Ba nguyên tắc tham chiếu dữ liệu chi phối hoạt động dự đoán của cache trong luận án là gì?

Hoạt động nạp dữ liệu đón đầu của cache dựa trên 3 nguyên tắc tham chiếu:

  • Vị trí tạm thời: Một vị trí nhớ vừa được CPU tham chiếu sẽ có khả năng cao tiếp tục được tham chiếu lại trong tương lai gần.
  • Vị trí không gian: Một vị trí nhớ được CPU tham chiếu thì các vị trí nhớ lân cận với nó có xu hướng sẽ được tham chiếu tiếp theo.
  • Vị trí tuần tự: Các lệnh và dữ liệu của chương trình thường được CPU truy xuất theo trình tự liên tiếp trong không gian bộ nhớ.

Kết luận

Luận án tiến sĩ của tác giả Hồ Văn Phi đã giải quyết bài toán đánh giá và tối ưu hóa hiệu năng hệ thống cache trong vi xử lý đa xử lý, đa luồng bằng phương pháp giải tích mạng xếp hàng đóng đa lớp MCPFQN kết hợp thuật toán MVA và mô phỏng trên phần mềm JMT v.0. Nghiên cứu đã chứng minh định lượng tính ưu việt của cấu hình 3 cấp cache, đồng thời đề xuất thành công giải pháp kiến trúc cụm lõi với L3 cache riêng giúp giảm tắc nghẽn truy cập bộ nhớ. Bên cạnh đó, luận án xây dựng công thức tính trễ truyền thông trung bình cho mạng liên kết trên chip, đưa ra cơ sở kỹ thuật cho việc lựa chọn cấu hình mạng 2D/3D Torus khi mở rộng số lõi từ 16 đến 128 lõi. Các kết quả này cung cấp cơ sở khoa học và dữ liệu thực nghiệm phục vụ công tác nghiên cứu, đào tạo và định hướng thiết kế phần cứng vi mạch tại Việt Nam.