Trên Linux, bạn có thể ghim một tiến trình vào cpu bằng bộ nhiệm vụ
. (Nhìn thấy bộ nhiệm vụ người đàn ông
). (Xem thêm https://unix.stackexchange.com/questions/425065/linux-how-to-know-which-processes-are-pinned-to-which-core)
Bạn cũng có thể dùng cpulimit
(xem người đàn ông cpulimit
) sử dụng các nhóm điều khiển để đặt giới hạn sử dụng cpu trong đó 100 sẽ tương đương với một CPU.
Để sử dụng một trong hai cách này, bạn sẽ phải tìm ra quy trình nào được khởi chạy cho người dùng và nối thêm các lệnh trên. Tôi không quen thuộc với Virtualmin, nhưng nó là nguồn mở, tôi nghi ngờ rằng bạn sẽ có thể tìm ra nơi nó khởi chạy các quy trình này khá dễ dàng, bằng cách lấy mã nguồn.
Thời gian CPU trong giới hạn.conf
là thời gian CPU tính bằng phút như được hiển thị trong cột Thời gian theo hàng đầu
vì vậy nó chỉ là thước đo thời gian quy trình được phép chạy độc quyền.
Giá trị "lõi" tronglimits.conf (xem người đàn ông giới hạn.conf
) đề cập đến kích thước của tệp kết xuất lõi, là tệp kết xuất mà bạn có thể kích hoạt một quy trình nếu nó gặp sự cố, để gỡ lỗi.
Nền tảng của điều này là Linux được thiết kế để thực hiện chính xác điều ngược lại - trải rộng các tác vụ trên các CPU - và nó cực kỳ giỏi trong việc đó. Lý do duy nhất để giới hạn hợp lý các tác vụ đối với CPU trên máy đa lõi là làm điều gì đó với thời gian hoàn hảo - hoặc các cuộc tấn công thời gian.
Các tùy chọn khác là khóa HĐH đối với một số lõi nhất định từ bộ tải khởi động hoặc bạn có thể mô phỏng các bộ chứa CPU đơn lẻ hoặc chạy được ghim vào một số CPU nhất định.