Làm thế nào để Thiết kế Chip GPU
Chapter 12 Future Trends and Emerging Technologies Gpu Design

Chương 12: Xu hướng tương lai và công nghệ mới nổi trong thiết kế GPU

Khi kiến trúc GPU tiếp tục tiến hóa để đáp ứng nhu cầu ngày càng tăng của các tải công việc tính toán song song, nhiều xu hướng và công nghệ mới nổi đang sẵn sàng định hình tương lai của thiết kế GPU. Trong chương này, chúng tôi khám phá một số xu hướng chính này, bao gồm tính toán dị nguyên và gia tốc, thiết kế dựa trên xếp chồng 3D và chiplet, kiến trúc dành riêng cho AI và học máy, và các vấn đề nghiên cứu mở và cơ hội trong kiến trúc GPU.

Tính toán dị nguyên và gia tốc

Tính toán dị nguyên, kết hợp các loại bộ xử lý hoặc gia tốc khác nhau để đạt được hiệu suất và hiệu quả năng lượng cao hơn, đã trở nên phổ biến hơn trong những năm gần đây. GPU đã đi đầu trong xu hướng này, thường được kết hợp với CPU để tăng tốc các tải công việc song song. Tuy nhiên, cảnh quan của các gia tốc đang phát triển nhanh chóng, với các loại phần cứng chuyên dụng mới đang được phát triển cho các lĩnh vực ứng dụng cụ thể.

Một ví dụ đáng chú ý là sự nổi lên của các gia tốc AI, chẳng hạn như Tensor Processing Units (TPU) của Google [Jouppi et al., 2017], được thiết kế cụ thể để tăng tốc các tải công việc học máy. Những gia tốc này thường sử dụng số học độ chính xác giảm, phân cấp bộ nhớ đặc biệt và kiến trúc luồng dữ liệu để đạt được hiệu suất và hiệu quả năng lượng cao cho các tác vụ AI.

Một lớp gia tốc mới nổi khác tập trung vào xử lý và phân tích đồ thị. Các tải công việc xử lý đồ thị, chẳng hạn như những công việc trong phân tích mạng xã hội, hệ thống khuyến nghị và mô phỏng khoa học, thể hiện những mẫu truy cập bộ nhớ không đều và đồng bộ hóa mịn, có thể là thách thức đối với các kiến trúc CPU và GPU truyền thống. Các gia tốc xử lý đồ thị chuyên dụng, như Graphicionado [Ham et al., 2016] và Intelligence Processing Unit (IPU) của GraphCore [GraphCore, 2020], nhằm giải quyết những thách thức này bằng cách cung cấp hỗ trợ phần cứng cho hiệu quả xử lý đồ thị.Dưới đây là bản dịch tiếng Việt của tệp Markdown này. Đối với phần mã, chỉ dịch các bình luận, không dịch mã:

Khám phá việc di chuyển đồ thị, đồng bộ hóa và cân bằng tải.

Khi sự đa dạng của các bộ gia tốc ngày càng tăng, thách thức trong việc tích hợp chúng thành một hệ thống thống nhất trở nên phức tạp hơn. Các kiến trúc hệ thống dị chủng, như Kiến trúc Hệ thống Dị chủng (HSA) của AMD [AMD, 2015] và Bộ nhớ Thống nhất CUDA của NVIDIA [NVIDIA, 2020], nhằm mục đích cung cấp một mô hình lập trình và không gian bộ nhớ thống nhất trên các loại bộ xử lý và bộ gia tốc khác nhau. Những kiến trúc này cho phép sự hợp tác trôi chảy giữa CPU, GPU và các bộ gia tốc khác, cho phép các nhà phát triển tập trung vào thiết kế thuật toán thay vì các chi tiết của việc di chuyển dữ liệu và đồng bộ hóa giữa các thiết bị khác nhau.

Nghiên cứu trong lĩnh vực này khám phá các chủ đề như việc phân chia và lập lịch nhiệm vụ hiệu quả trên các thiết bị dị chủng, quản lý bộ nhớ thống nhất và các liên kết tốc độ cao cho các hệ thống dị chủng. Khi cảnh quan của các bộ gia tốc tiếp tục phát triển, thiết kế của GPU có khả năng sẽ bị ảnh hưởng bởi nhu cầu tích hợp một cách trơn tru với các loại phần cứng chuyên dụng khác.

Thiết kế dựa trên Xếp chồng 3D và Chiplet

Xếp chồng 3D và thiết kế dựa trên chiplet là những công nghệ đóng gói mới nổi, cung cấp những cơ hội mới cho sự sáng tạo kiến trúc GPU. Những công nghệ này cho phép tích hợp nhiều die hoặc lớp trong cùng một gói, cho phép băng thông cao hơn, độ trễ thấp hơn và cung cấp điện năng hiệu quả hơn so với đóng gói 2D truyền thống.

Xếp chồng 3D, chẳng hạn như qua các lỗ dẫn silicon (TSV) hoặc công nghệ khối bộ nhớ hybrid (HMC) [Jeddeloh và Keeth, 2012], cho phép tích hợp theo chiều dọc nhiều lớp logic hoặc bộ nhớ. Công nghệ này đã được sử dụng trong bộ nhớ băng thông cao (HBM) [Lee và cộng sự, 2014], cung cấp băng thông bộ nhớ đáng kể cao hơn và mức tiêu thụ điện năng thấp hơn so với bộ nhớ GDDR truyền thống. Các GPU, như Radeon R9 Fury X của AMD và Tesla P100 của NVIDIA, đã áp dụng HBM để giải quyết các rào cản băng thông bộ nhớ trong các tải công việc yêu cầu bộ nhớ nhiều.Thiết kế dựa trên chiplet, từ góc độ khác, liên quan đến tích hợp nhiều bản chết nhỏ hơn (chiplet) trong một gói đơn lẻ bằng cách sử dụng các liên kết mật độ cao, chẳng hạn như trung gian silicon hoặc cầu nối đa die tích hợp (EMIB) [Demir et al., 2018]. Phương pháp này cho phép kết hợp và phù hợp các công nghệ quy trình khác nhau, cho phép tối ưu hóa mỗi chiplet cho chức năng cụ thể của nó. Ví dụ, các chiplet yêu cầu tính toán nhiều có thể được sản xuất bằng các nút quy trình tiên tiến, trong khi các chiplet yêu cầu bộ nhớ nhiều có thể sử dụng các nút quy trình cũ hơn, hiệu quả hơn về chi phí.

Bản chất módun của các thiết kế dựa trên chiplet cũng cho phép các kiến trúc GPU linh hoạt và có thể mở rộng hơn. Ví dụ, số lượng chiplet tính toán có thể được thay đổi để tạo ra các GPU với các đặc điểm hiệu suất và công suất khác nhau, mà không cần thiết kế lại hoàn toàn GPU. Phương pháp này cũng có thể tạo điều kiện thuận lợi cho việc tích hợp các bộ gia tốc hoặc công nghệ bộ nhớ chuyên dụng cùng với các chiplet tính toán GPU.

Nghiên cứu trong lĩnh vực này khám phá các chủ đề như kiến trúc GPU 3D xếp chồng, thiết kế GPU dựa trên chiplet và các công nghệ liên kết mới cho tích hợp đa die. Khi công nghệ quy trình trở nên khó khăn và tốn kém hơn, xếp chồng 3D và các thiết kế dựa trên chiplet cung cấp một hướng đi đầy triển vọng để tiếp tục cải thiện hiệu suất và hiệu quả năng lượng trong các kiến trúc GPU.

Kiến trúc dành riêng cho AI/ML

Sự gia tăng nhanh chóng của các ứng dụng trí tuệ nhân tạo (AI) và học máy (ML) đã thúc đẩy sự phát triển của các kiến trúc dành riêng cho lĩnh vực này, được tối ưu hóa cho các tải trọng công việc này. Trong khi GPU đã là nền tảng chính cho gia tốc AI/ML trong những năm gần đây, xu hướng ngày càng tăng hướng tới phần cứng chuyên dụng hơn, có thể cung cấp hiệu suất và hiệu quả năng lượng cao hơn cho các tác vụ AI/ML cụ thể.

Một ví dụ về phần cứng chuyên dụng như vậy là đơn vị xử lý thần kinh (NPU), được thiết kế cụ thể để gia tốc mạng neural sâu (Suy diễn và huấn luyện DNN. NPU thường sử dụng số học độ chính xác giảm, hệ thống bộ nhớ đặc biệt và kiến trúc luồng dữ liệu được thiết kế riêng để phù hợp với đặc điểm độc đáo của các tải trọng DNN. Ví dụ về các NPU bao gồm Tensor Processing Units (TPU) của Google [Jouppi và cộng sự, 2017], Nervana Neural Network Processors (NNP) của Intel [Rao, 2019] và Ascend AI processors của Huawei [Huawei, 2020].

Một xu hướng nổi lên khác trong kiến trúc chuyên dụng cho AI/ML là việc sử dụng tính toán trong bộ nhớ và kỹ thuật tính toán tương tự. Các kiến trúc tính toán trong bộ nhớ nhằm mục đích giảm năng lượng và độ trễ liên quan đến di chuyển dữ liệu bằng cách thực hiện các phép tính trực tiếp trong bộ nhớ. Các kỹ thuật tính toán tương tự, như những kỹ thuật được sử dụng trong các gia tốc memristor-based [Shafiee và cộng sự, 2016], khai thác các đặc tính vật lý của thiết bị để thực hiện các phép tính theo một cách tiết kiệm năng lượng hơn so với các mạch số.

Khi các tải trọng AI/ML tiếp tục phát triển và trở nên đa dạng hơn, nhu cầu về các kiến trúc chuyên dụng linh hoạt và có thể lập trình, có thể thích ứng với các yêu cầu thay đổi, ngày càng tăng. Một cách tiếp cận để đạt được sự linh hoạt này là thông qua việc sử dụng các kiến trúc có thể định cấu hình lại ở mức thô (CGRAs) [Prabhakar và cộng sự, 2017], cung cấp một mảng các phần tử xử lý có thể lập trình, có thể được định cấu hình lại để hỗ trợ các mô hình luồng dữ liệu và thuật toán khác nhau.

Nghiên cứu trong lĩnh vực này khám phá các chủ đề như các kiến trúc gia tốc AI/ML mới, các kỹ thuật tính toán trong bộ nhớ và tương tự, và các kiến trúc có thể lập trình và định cấu hình lại cho AI/ML. Khi GPU tiếp tục đóng vai trò quan trọng trong gia tốc AI/ML, việc thiết kế các kiến trúc GPU trong tương lai có khả năng sẽ chịu ảnh hưởng bởi nhu cầu tích hợp nhiều phần cứng chuyên dụng hơn và thích ứng với các yêu cầu đặc thù của những tải trọng này.

Các vấn đề nghiên cứu mở và cơ hội

Mặc dù đã có những tiến bộ đáng kể trong kiến trúc GPU và tính toán song song trong những năm gần đây, vẫn còn nhiều vấn đề nghiên cứu mởĐây là bản dịch tiếng Việt của tệp Markdown:

và cơ hội để đổi mới thêm. Một số thách thức và cơ hội này bao gồm:

  1. Hiệu quả năng lượng: Khi hiệu suất và độ phức tạp của GPU tiếp tục tăng lên, việc cải thiện hiệu quả năng lượng trở nên ngày càng quan trọng. Các cơ hội nghiên cứu trong lĩnh vực này bao gồm các kỹ thuật mạch và kiến trúc mới để giảm mức tiêu thụ điện năng, chẳng hạn như tính toán gần ngưỡng, ngắt nguồn điện và điều chỉnh điện áp và tần số động.

  2. Khả năng mở rộng: Cho phép GPU có thể mở rộng lên các lõi và luồng lớn hơn nhiều trong khi vẫn duy trì hiệu suất và khả năng lập trình cao là một thách thức lớn. Nghiên cứu trong lĩnh vực này có thể khám phá các chủ đề như kiến trúc GPU phân cấp và phân tán, hệ thống bộ nhớ có thể mở rộng và các mô hình lập trình có thể khai thác hiệu quả sự song song của các GPU tương lai.

  3. Độ tin cậy và khả năng chịu lỗi: Khi GPU được sử dụng ngày càng nhiều trong các ứng dụng quan trọng về sứ mệnh và an toàn, việc đảm bảo độ tin cậy và khả năng chịu lỗi của chúng trở nên vô cùng quan trọng. Các cơ hội nghiên cứu trong lĩnh vực này bao gồm các kỹ thuật chịu lỗi và sửa lỗi mới, chẳng hạn như dung sai dựa trên thuật toán, cơ chế kiểm tra điểm và khôi phục, và thiết kế kiến trúc chịu lỗi.

  4. Ảo hóa và đa người dùng: Cho phép chia sẻ hiệu quả các tài nguyên GPU giữa nhiều ứng dụng và người dùng là điều cần thiết cho các môi trường máy tính đám mây và trung tâm dữ liệu. Nghiên cứu trong lĩnh vực này có thể khám phá các chủ đề như các kỹ thuật ảo hóa GPU, quản lý chất lượng dịch vụ (QoS) và các thuật toán phân bổ và lập lịch tài nguyên cho các hệ thống GPU đa người dùng.

  5. Mô hình lập trình và công cụ: Phát triển các mô hình lập trình và công cụ có thể khai thác hiệu suất của các kiến trúc GPU tương lai một cách hiệu quả trong khi vẫn duy trì năng suất lập trình là một thách thức liên tục. Các cơ hội nghiên cứu trong lĩnh vực này bao gồm các ngôn ngữ lập trình và trình biên dịch dành riêng cho GPU, các khung tự động điều chỉnh và tối ưu hóa, và các công cụ gỡ lỗi và phân tích hiệu suất cho các hệ thống GPU song song.Here is the Vietnamese translation of the provided markdown file, with the code comments translated and the code itself left untranslated:

GPU架构不断发展,新的应用领域不断涌现,研究人员和工程师需要解决这些挑战并释放并行计算的全部潜力。通过探索新的架构设计、编程模型和软件工具,研究界可以帮助塑造GPU计算的未来,并推动科学计算、人工智能和数据分析等领域的新突破。

进一步阅读

对于那些对本章所涵盖的主题感兴趣的人,我们建议以下资源:

  1. Jouppi, N. P., Young, C., Patil, N., Patterson, D., Agrawal, G., Bajwa, R., ... & Yoon, D. (2017). 在数据中心内部分析张量处理单元的性能。在第44届年度国际计算机体系结构学术讨论会论文集 (第1-12页)。https://dl.acm.org/doi/abs/10.1145/3079856.3080246 (opens in a new tab)

  2. Ham, T. J., Wu, L., Sundaram, N., Satish, N., & Martonosi, M. (2016). Graphicionado: 一种高性能和高能效的图形分析加速器。在2016年第49届IEEE/ACM国际微架构研讨会 (第1-13页)。IEEE。https://ieeexplore.ieee.org/abstract/document/7783759 (opens in a new tab)

  3. AMD. (2015). AMD异构系统体系结构 (HSA)。https://www.amd.com/en/technologies/hsa (opens in a new tab)

  4. NVIDIA. (2020). CUDA统一内存。https://developer.nvidia.com/blog/unified-memory-cuda-beginners/ (opens in a new tab)

  5. Jeddeloh, J., & Keeth, B. (2012). 混合内存立方体:新的DRAM架构提高了密度和性能。在2012年VLSI技术研讨会 (第87-88页)。IEEE。https://ieeexplore.ieee.org/abstract/document/6243767 (opens in a new tab)

  6. Lee, J. H., Lim, D., Jeong, H.,Đây là bản dịch tiếng Việt của tệp Markdown được cung cấp:

Kim, H., Song, T., Lee, J., ... & Kim, G. (2014). Một bộ nhớ DRAM xếp chồng băng thông cao (HBM) 1,2 V 8 Gb 8-kênh 128 GB/s với các phương pháp kiểm tra hiệu quả I/O microbump sử dụng quy trình 29 nm và TSV. Trong Tóm tắt Hội nghị Mạch điện tử Rắn Quốc tế IEEE 2014 (ISSCC) (tr. 432-433). IEEE. https://ieeexplore.ieee.org/abstract/document/6757501 (opens in a new tab)

  1. Demir, Y., Pan, Y., Song, S., Hardavellas, N., Kim, J., & Memik, G. (2018). Galaxy: Một kiến trúc đa chip hiệu suất cao và tiết kiệm năng lượng sử dụng các liên kết quang. Trong Thủ tục của Hội nghị Quốc tế ACM lần thứ 28 về Tính toán Siêu máy tính (tr. 303-312). https://dl.acm.org/doi/abs/10.1145/2597652.2597664 (opens in a new tab)

  2. Rao, T. (2019). Bộ xử lý Mạng Nơ-ron Intel Nervana (NNP) Định nghĩa lại Silicon AI. [https://www.intel.com/content/www/us/en/artificial-intelligence (opens in a new tab)