14 điểm bởi xguru 2021-01-08 | 5 bình luận | Chia sẻ qua WhatsApp

"Lõi đơn của M1 xử lý bộ nhớ song song qua hơn 28 giai đoạn"

  • Truy cập bộ nhớ tốn kém hơn tác vụ tính toán

  • Về mặt lý thuyết, mô hình ngây thơ cho rằng khi truy cập x thì có thể đọc miễn phí các giá trị gần đó như x+1 nghe cũng có vẻ hợp lý, nhưng lại không thể dự đoán hiệu năng

  • Khi nào việc dự đoán hiệu năng này thất bại? Lõi CPU sẽ đồng thời thử truy cập nhiều vùng nhớ khác nhau

  • Nếu thực hiện đồng thời 7 lần truy cập bộ nhớ thì chắc chắn sẽ chậm hơn so với chỉ truy cập 1 lần, nhưng liệu có chậm hơn gấp 7 lần không?

  • Thông qua chương trình benchmark để kiểm tra có thể thực hiện bao nhiêu truy cập đồng thời (lane, các quy trình dò theo con trỏ độc lập)

→ Từ mức mà hiệu năng truy cập đồng thời bắt đầu suy giảm, có thể suy ra số lượng lane

  • Người ta suy đoán rằng một lõi của Apple M1 có 28 lane, vì hiệu năng bắt đầu giảm khi vượt quá 28 lane

→ Vì vậy, do mức độ xử lý song song cao này, việc ước tính chi phí theo mô hình ngây thơ nói trên sẽ thất bại

5 bình luận

 
ffdd270 2021-01-09

Mỗi khi nhắc đến câu chuyện về CPU

https://ridibooks.com/books/443000037

cuốn sách này lại giúp ích rất nhiều. Nếu có ai muốn theo dõi từ đầu, thì có lẽ nếu đọc cuốn sách này trước rồi đọc tiếp, sẽ dễ theo kịp hơn đôi chút.

 
ffdd270 2021-01-09

Để tránh bị coi là quảng bá cho Ridibooks(...), tên sách là: Câu chuyện về CPU đa lõi mà lập trình viên chưa từng biết. Sở dĩ lại là Ridibooks vì bản sách giấy đã ngừng phát hành. Còn ebook thì cửa hàng duy nhất còn lại chỉ có Ridibooks, nên tôi đành đăng như vậy.

 
galadbran 2021-01-09

Thì ra anh Kim Min-jang cũng viết cả những cuốn sách như thế này... Mới đó mà đã 10 năm rồi, thời gian trôi thật vô thường ^^;

 
godrm 2021-01-08

Đây đúng là phần khá khó. Vì rất khó để khái quát hóa. Nhưng trong bối cảnh kiến trúc CPU ngày nay và xử lý song song ngày càng nhiều, có vẻ nó có thể khá hiệu quả. Cũng khiến người ta thấy rằng đang có rất nhiều thử nghiệm cải tiến cấu trúc phần cứng được tiến hành.

 
xguru 2021-01-08

Có lẽ vì là giáo sư ngành khoa học máy tính viết nên bài chỉ ghi lại đúng những gì bản thân ông ấy đã xác định được..

Nếu kết hợp các bình luận của bài đó với bình luận trên HN thì có thể thấy: https://news.ycombinator.com/item?id=25659615

Về cơ bản, có thể hiểu rằng M1 nhờ khả năng song song hóa từ 28 tác vụ trở lên và kích thước của bộ nhớ đệm L1, nên vẫn cho thấy hiệu năng rất tốt ngay cả khi truy cập ngẫu nhiên vào nhiều vị trí.