Đề XuấT, 2024

Editor Choice

Sự khác biệt giữa UMA và NUMA

Bộ đa xử lý có thể được chia thành ba loại mô hình bộ nhớ dùng chung - UMA (Truy cập bộ nhớ đồng nhất), NUMA (Truy cập bộ nhớ không đồng nhất) và COMA (Truy cập bộ nhớ chỉ bộ nhớ cache). Các mô hình được phân biệt dựa trên cách phân phối tài nguyên bộ nhớ và phần cứng. Trong mô hình UMA, bộ nhớ vật lý được chia sẻ đồng đều giữa các bộ xử lý cũng có độ trễ bằng nhau cho mỗi từ bộ nhớ trong khi NUMA cung cấp thời gian truy cập thay đổi để bộ xử lý truy cập vào bộ nhớ.

Băng thông được sử dụng trong UMA tới bộ nhớ bị hạn chế vì nó sử dụng bộ điều khiển bộ nhớ đơn. Động lực chính của sự ra đời của các máy NUMA là tăng cường băng thông có sẵn cho bộ nhớ bằng cách sử dụng nhiều bộ điều khiển bộ nhớ.

Biểu đồ so sánh

Cơ sở để so sánhUMASỐ
Căn bảnSử dụng bộ điều khiển bộ nhớ duy nhấtBộ điều khiển nhiều bộ nhớ
Loại xe buýt được sử dụngĐơn, nhiều và thanh ngang.Cây và phân cấp
Thời gian truy cập bộ nhớCông bằngThay đổi theo khoảng cách của bộ vi xử lý.
Phù hợp vớiMục đích chung và ứng dụng chia sẻ thời gianỨng dụng thời gian thực và quan trọng
Tốc độChậm hơnNhanh hơn
Băng thôngHạn chếNhiều hơn UMA.

Định nghĩa của UMA

Hệ thống UMA (Truy cập bộ nhớ đồng nhất) là một kiến ​​trúc bộ nhớ dùng chung cho các bộ đa xử lý. Trong mô hình này, một bộ nhớ duy nhất được sử dụng và truy cập bởi tất cả các bộ xử lý có hệ thống đa bộ xử lý với sự trợ giúp của mạng kết nối. Mỗi bộ xử lý có thời gian truy cập bộ nhớ bằng nhau (độ trễ) và tốc độ truy cập. Nó có thể sử dụng một trong hai xe buýt, nhiều xe buýt hoặc chuyển đổi thanh ngang. Vì nó cung cấp truy cập bộ nhớ chia sẻ cân bằng, nó còn được gọi là hệ thống SMP (Bộ xử lý đa đối xứng) .

Thiết kế điển hình của SMP được hiển thị ở trên nơi mỗi bộ xử lý được kết nối đầu tiên với bộ đệm sau đó bộ đệm được liên kết với bus. Cuối cùng, xe buýt được kết nối với bộ nhớ. Kiến trúc UMA này làm giảm sự tranh chấp cho xe buýt thông qua việc tìm nạp các hướng dẫn trực tiếp từ bộ đệm riêng biệt. Nó cũng cung cấp một xác suất bằng nhau để đọc và ghi cho mỗi bộ xử lý. Các ví dụ điển hình của mô hình UMA là máy chủ Sun Starfire, máy chủ Compaq alpha và dòng HP v.

Định nghĩa của NUMA

NUMA (Truy cập bộ nhớ không đồng nhất) cũng là mô hình đa bộ xử lý trong đó mỗi bộ xử lý được kết nối với bộ nhớ chuyên dụng. Tuy nhiên, những phần nhỏ này của bộ nhớ kết hợp lại để tạo thành một không gian địa chỉ. Điểm chính để suy ngẫm ở đây là không giống như UMA, thời gian truy cập của bộ nhớ phụ thuộc vào khoảng cách đặt bộ xử lý có nghĩa là thay đổi thời gian truy cập bộ nhớ. Nó cho phép truy cập vào bất kỳ vị trí bộ nhớ bằng cách sử dụng địa chỉ vật lý.

Như đã đề cập ở trên, kiến ​​trúc NUMA nhằm tăng băng thông khả dụng cho bộ nhớ và sử dụng nhiều bộ điều khiển bộ nhớ. Nó kết hợp nhiều lõi máy vào các nút của máy trong đó mỗi lõi có bộ điều khiển bộ nhớ. Để truy cập bộ nhớ cục bộ trong máy NUMA, lõi lấy bộ nhớ được quản lý bởi bộ điều khiển bộ nhớ bằng nút của nó. Trong khi truy cập bộ nhớ từ xa được xử lý bởi bộ điều khiển bộ nhớ khác, lõi sẽ gửi yêu cầu bộ nhớ thông qua các liên kết liên kết.

Kiến trúc NUMA sử dụng các mạng bus và cây phân cấp để kết nối các khối bộ nhớ và bộ xử lý. BBN, TC-2000, SGI Origin 3000, Cray là một số ví dụ về kiến ​​trúc NUMA.

Sự khác biệt chính giữa UMA và NUMA

  1. Mô hình UMA (bộ nhớ dùng chung) sử dụng một hoặc hai bộ điều khiển bộ nhớ. Đối với, NUMA có thể có nhiều bộ điều khiển bộ nhớ để truy cập bộ nhớ.
  2. Các thanh đơn, nhiều thanh ngang được sử dụng trong kiến ​​trúc UMA. Ngược lại, NUMA sử dụng phân cấp và loại cây của các bus và kết nối mạng.
  3. Trong UMA, thời gian truy cập bộ nhớ cho mỗi bộ xử lý là như nhau trong khi ở NUMA thời gian truy cập bộ nhớ thay đổi khi khoảng cách của bộ nhớ từ bộ xử lý thay đổi.
  4. Mục đích chung và các ứng dụng chia sẻ thời gian phù hợp với các máy UMA. Ngược lại, ứng dụng thích hợp cho NUMA là trung tâm thời gian thực và quan trọng.
  5. Các hệ thống song song dựa trên UMA hoạt động chậm hơn các hệ thống NUMA.
  6. Khi nói đến băng thông UMA, có băng thông hạn chế. Ngược lại, NUMA có băng thông nhiều hơn UMA.

Phần kết luận

Kiến trúc UMA cung cấp độ trễ tổng thể tương tự cho các bộ xử lý truy cập bộ nhớ. Điều này không hữu ích khi bộ nhớ cục bộ được truy cập vì độ trễ sẽ đồng đều. Mặt khác, trong NUMA, mỗi bộ xử lý có bộ nhớ chuyên dụng giúp loại bỏ độ trễ khi bộ nhớ cục bộ được truy cập. Độ trễ thay đổi khi khoảng cách giữa bộ xử lý và bộ nhớ thay đổi (nghĩa là Không đồng nhất). Tuy nhiên, NUMA đã cải thiện hiệu suất so với kiến ​​trúc UMA.

Top