Vietnamese (machine translation)

Lưu ý

Mục đích của file này là để độc giả tiếng Việt có thể đọc và hiểu tài liệu nhân kernel dễ dàng hơn, không phải để tạo ra một nhánh tài liệu riêng. Nếu bạn có bất kỳ nhận xét hoặc cập nhật nào cho file này, vui lòng thử cập nhật file tiếng Anh gốc trước. Nếu bạn thấy có sự khác biệt giữa bản dịch và bản gốc, hoặc có vấn đề về bản dịch, vui lòng gửi góp ý hoặc patch cho người dịch của file này, hoặc nhờ người bảo trì và người review tài liệu tiếng Việt giúp đỡ.

Bản gốc:

Fake NUMA For CPUSets

Người dịch:

Google Translate (machine translation)

Phiên bản gốc:

8541d8f725c6

Cảnh báo

Tài liệu này được dịch tự động bằng máy và chưa được review bởi người dịch. Nội dung có thể không chính xác hoặc khó hiểu ở một số chỗ. Khi có sự khác biệt với bản gốc, bản gốc luôn là chuẩn. Bản dịch chất lượng cao (được review) được đặt trong thư mục vi_VN/.

30.4. NUMA giả cho CPUSets

Tác giả:

David Rientjes <rientjes@cs.washington.edu>

Sử dụng numa=fake và CPUSets để quản lý tài nguyên

Tài liệu này mô tả cách sử dụng tùy chọn dòng lệnh numa=fake x86_64 kết hợp với cpusets để quản lý bộ nhớ thô. Sử dụng tính năng này, bạn có thể tạo các nút NUMA giả đại diện cho các khối bộ nhớ liền kề và gán chúng cho cpusets và các tác vụ kèm theo của chúng. Đây là một cách để hạn chế lượng bộ nhớ hệ thống có sẵn cho một loại tác vụ nhất định.

Để biết thêm thông tin về các tính năng của CPUset, hãy xem Tài liệu/admin-guide/cgroup-v1/cpusets.rst. Có một số cấu hình khác nhau mà bạn có thể sử dụng cho nhu cầu của mình. cho thêm thông tin về tùy chọn dòng lệnh numa=fake và các cách khác nhau của nó định cấu hình các nút giả, xem Tài liệu/admin-guide/kernel-parameter.txt

Với mục đích của phần giới thiệu này, chúng tôi sẽ giả sử một NUMA rất nguyên thủy thiết lập mô phỏng “numa=fake=4*512,”. Điều này sẽ chia bộ nhớ hệ thống của chúng tôi thành bốn phần bằng nhau, mỗi phần có dung lượng 512M mà giờ đây chúng ta có thể sử dụng để gán cho bộ vi xử lý. Như bạn trở nên quen thuộc hơn với việc sử dụng sự kết hợp này để kiểm soát tài nguyên, bạn sẽ xác định một thiết lập tốt hơn để giảm thiểu số lượng nút bạn phải xử lý với.

Một máy có thể được phân chia như sau với “numa=fake=4*512,” theo báo cáo của dmesg:

Giả mạo nút 0 tại 00000000000000000-0000000020000000 (512MB)

Giả mạo nút 1 tại 0000000020000000-0000000040000000 (512MB) Giả mạo nút 2 tại 0000000040000000-0000000060000000 (512MB) Giả mạo nút 3 tại 0000000060000000-0000000080000000 (512MB) ...

Trên tổng số trang của nút 0: 130975

Trên tổng số trang của nút 1: 131072 Trên tổng số trang của nút 2: 131072 Trên tổng số trang của nút 3: 131072

Bây giờ hãy làm theo hướng dẫn để gắn hệ thống tập tin cpusets từ CPUSETS, bạn có thể chỉ định các nút giả (tức là bộ nhớ liền kề không gian địa chỉ) vào từng CPUset:

[root@xroads /]Bộ ví dụ # mkdir

[root@xroads /]# mount -t cpuset không có bộ ví dụ nào [root@xroads /]Bộ ví dụ/ddset# mkdir [root@xroads /]Bộ ví dụ/ddset# cd [root@xroads /exampleset/ddset]# echo 0-1 > cpu [root@xroads /exampleset/ddset]# echo 0-1 > mems

Bây giờ cpuset này, ‘ddset’, sẽ chỉ cho phép truy cập vào các nút giả 0 và 1 đối với cấp phát bộ nhớ (1G).

Bây giờ bạn có thể phân công nhiệm vụ cho các bộ xử lý này để hạn chế tài nguyên bộ nhớ có sẵn cho họ theo các nút giả được chỉ định là mems:

[root@xroads /exampleset/ddset]# echo $$ > nhiệm vụ

[root@xroads /exampleset/ddset]# dd if=/dev/zero of=tmp bs=1024 count=1G [1] 13425

Lưu ý sự khác biệt giữa mức sử dụng bộ nhớ hệ thống theo báo cáo của /proc/meminfo giữa trường hợp cpuset bị hạn chế ở trên và trường hợp không bị giới hạn trường hợp (tức là chạy lệnh ‘dd’ tương tự mà không gán nó cho NUMA giả bộ xử lý):