Thông tin liên hệ
- 036.686.3943
- admin@nguoicodonvn2008.info
Xử lý đa lõi có thể mang lại nhiều lợi ích và cả những hạn chế. Đôi khi bạn cần chỉ định thủ công lõi CPU cho các chương trình để đạt được hiệu suất tốt nhất. Trong Linux, công cụ chính cho mục đích này là taskset. Điều này nghe có vẻ đáng sợ, nhưng bài viết sẽ chia nhỏ thành các bước để đơn giản hóa quy trình.
Việc sử dụng taskset có thể được chia thành hai phần: Mối quan hệ của CPU với các chương trình sẽ được khởi chạy và với những chương trình đã chạy. Việc khởi chạy chương trình dễ dàng hơn, vì vậy hãy bắt đầu từ đó. Lệnh khởi chạy có dạng như sau:
taskset -c số-lõi-cpu ứng-dụng
Trước khi bạn nhập số lõi CPU muốn chỉ định, đừng quên rằng lược đồ đánh số Unix thường bắt đầu từ 0, vì vậy lõi đầu tiên của bạn sẽ là 0, lõi thứ hai là 1, v.v... Như vậy, máy lõi kép sẽ có lõi 0 và 1, còn máy lõi tứ sẽ có lõi 0, 1, 2 và 3.
Giả sử bạn muốn chạy Audacity trên hệ thống lõi kép và bạn muốn nó chạy trên lõi thứ hai. Lệnh sẽ là:
taskset -c 1 audacity
Trên một trong các máy thử nghiệm, Chrome đôi khi sẽ gặp hiện tượng drop frame khi phát trực tuyến video nhưng sẽ không sao nếu được gán cho 2 lõi. Nếu bạn muốn thử điều tương tự trên hệ thống lõi tứ và muốn gán Chrome cho lõi 3 và 4, lệnh sẽ là:
taskset -c 2,3 google-chrome
Bạn không phải chỉ định CPU theo tuần tự mà có thể chọn ngẫu nhiên bất kỳ lõi nào. Giả sử bạn có một máy 6 lõi và muốn sử dụng Chrome trên lõi 2 và 6. Bạn sẽ nhập lệnh:
taskset -c 1,5 google-chrome
Bạn cũng có thể sử dụng dấu gạch ngang để trải rộng một ứng dụng trên một số lõi. Ví dụ, nhiều chương trình cũ hoặc các chức năng hệ thống sẽ mặc định nằm trên lõi đầu tiên. Điều gì sẽ xảy ra nếu bạn muốn để lõi đầu tiên càng trống bao nhiêu càng tốt, trong khi trải rộng một ứng dụng lớn trên tất cả các lõi khác?
Giả sử bạn có một hệ thống 8 lõi và muốn chạy Steam từ lõi thứ 2 đến lõi thứ 8. Lệnh đó sẽ là:
taskset -c 1-7 steam
Taskset không chỉ giới hạn ở việc khởi chạy ứng dụng. Bạn cũng có thể thay đổi lõi CPU cho một chương trình đã chạy. Tuy nhiên, trước khi có thể thay đổi lõi cho ứng dụng, trước tiên bạn cần biết ID tiến trình của ứng dụng đó (gọi tắt là PID).
Để tìm ra PID của ứng dụng, bạn có thể thử sử dụng công cụ System Monitor của desktop, nhưng cách nhanh nhất là sử dụng top.
top
Tên của tất cả các lệnh đang chạy nằm ở phía bên phải của màn hình. Các ID tiến trình tương ứng nằm ở bên trái.

Ghi lại PID vì bạn sẽ sử dụng nó trong giây lát. Đối với ví dụ này, bài viết sẽ sử dụng VLC, đang phát video Matroska độ nét cao trên PC cũ có 6 lõi. Các lõi CPU khác nhau đang được thử nghiệm để có được hiệu suất tốt nhất từ VLC.
Để thay đổi mối lõi cho một tiến trình hiện có, cú pháp trông giống như sau:
taskset -cp core-numbers PID
Như bạn có thể thấy ảnh chụp màn hình ở trên, thì ID tiến trình của VLC là 20485. Ví dụ sẽ thử chạy VLC trên lõi thứ 4, thứ 5 và thứ 6, theo đánh số Unix sẽ là 3-5. Vì vậy, lệnh sẽ là:
taskset -cp 3-5 20485
Nhưng nếu bạn muốn kiểm tra lõi hiện có trước khi thay đổi nó thì sao? Để làm điều đó, đừng nhập bất kỳ số lõi nào và taskset sẽ cho bạn biết lõi nào được chỉ định. Lệnh thay đổi thành:
taskset -cp 20485
Nó cho thấy rằng VLC trải rộng trên tất cả các lõi.

Hãy thử lại điều đó với một chương trình khác. Giả sử ví dụ chạy một Matroska lớn với SMPlayer để thay thế và SMPlayer đã được khởi chạy. Top cho biết PID là 16058.

Nhưng trước tiên ta muốn biết lõi hiện có của nó. Sử dụng lệnh với switch -cp nhưng không có số lõi, bạn có thể thấy chương trình đang trải rộng trên tất cả các lõi.

Bây giờ, bạn có thể thử trải rộng SMPlayer trên 3 lõi giống như thử nghiệm VLC bằng lệnh:
taskset -cp 3-5 16058
Nguồn tin: Quantrimang.com
Ý kiến bạn đọc
Những tin mới hơn
Những tin cũ hơn
Cách kết nối ChatGPT với Google Sheets
Sự khác biệt giữa tự động hóa và AI Agent
Prompt xây dựng bài giảng hoàn chỉnh theo GDPT 2018
Xây dựng agent trong Copilot Studio
Jasper vs Copy.ai: Công cụ AI nào tốt hơn?
5 công cụ AI trong Photoshop tuyệt vời cho người mới bắt đầu chỉnh sửa ảnh
Prompt tạo infographic khoa học về các loài động vật hoang dã
Tìm hiểu về Seedream 5.0 Pro: Mô hình xử lý hình ảnh AI của ByteDance với khả năng chỉnh sửa dựa trên layer
Prompt tạo ảnh chân dung phong cách bìa tạp chí nghệ thuật tối giản
ChatGPT, Claude hay Gemini làm tốt hơn khi trợ giúp build PC?
Hướng dẫn dịch nội dung trên Notion AI
15 prompt quản lý công việc bằng Notion AI
Các mô hình AI tốt nhất cho Agentic Workflow năm 2026
Power Automate vs UiPath: Nên chọn công cụ nào?
Tìm hiểu về Muse Spark 1.1: LLM cạnh tranh mới của Meta
Hướng dẫn lựa chọn và xây dựng đề tài SKKN
3 lỗi thường gặp khi sử dụng Claude Code Skills
Hướng dẫn xây dựng công tác chủ nhiệm đầu năm học từ A đến Z
Cấu hình chi tiết và hướng dẫn cho agent trong Copilot Studio
AgentsView là gì?