2011-07-12 23 views
5

Tôi đang sử dụng công cụ bộ công cụ để đặt ái lực CPU cho một trong các chương trình của tôi. Làm thế nào để thiết lập các mối quan hệ trên một CPU duy nhất mà thôi - vì tôi đã không chắc chắn về điều này, vì vậy tôi đã làm điều này:Đặt ái lực CPU bằng cách sử dụng tập hợp tác vụ

taskset -c 2-2 tests/prog 1 2 3 

... mong đợi, mà tôi đang lên kế hoạch chương trình để chạy trên CPU # 2 chỉ, theo cách tương tự cho các CPU khác. Ngay cả khi tôi đúng, đây là một cách tồi tệ để thực hiện những gì tôi muốn IMO, tôi có thể nhận được một số trợ giúp?

Cảm ơn bạn,
Sayan

Trả lời

3

taskset -c 2 ... nên làm việc để ghim chương trình để CPU # 2 (đó là CPU thứ ba - CPU được đánh số từ 0).

Ngay cả khi tôi đúng, đây là cách tồi để thực hiện những gì tôi muốn IMO, tôi có thể nhận trợ giúp không?

Phụ thuộc vào những gì bạn muốn. Bạn đang cố gắng để thực hiện?

+0

Tôi đã theo ấn tượng rằng taskset -c 2 sẽ sắp xếp chương trình trên CPU # 0, CPU # 1 và 2 CPU #. Cảm ơn bạn đã làm rõ. Tôi chỉ muốn chạy một chương trình từ một CPU cụ thể tại một thời điểm. BTW, cú pháp của tôi về câu hỏi gốc có đúng không? – Sayan

+1

Chính xác. 'taskset -c 2-2' cũng hoạt động, nó chỉ là không cần thiết. – duskwuff

3

Cách dễ nhất sẽ được sử dụng các mặt nạ CPU như

taskset -p mask pid 

#taskset -p 0x00000001 11587 
pid 11587's current affinity mask: ff 
pid 11587's new affinity mask: 1 
Các vấn đề liên quan