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
Prompt AI tạo poster Art Deco phong cách thập niên 1920
3 Chrome extension giúp NotebookLM hoạt động tốt với các công cụ khác
10 prompt hữu ích cho giáo viên Hóa học
Vì sao Claude Code vẫn là công cụ được sử dụng nhiều nhất, ngay cả với những người hoàn toàn không biết lập trình?
Những công cụ miễn phí làm NotebookLM trở nên hữu ích gấp đôi
Prompt tạo tranh màu nước nghệ thuật bằng AI cực đẹp
Tại sao nút Copilot biến mất khỏi ứng dụng Office của bạn?
Thử nghiệm mô hình mới Claude Fable 5 trong thực tế: Liệu nó có xứng đáng với kỳ vọng?
Thử nghiệm mô hình mới Claude Fable 5 trong thực tế: Liệu nó có xứng đáng với kỳ vọng?
Cách kiểm tra hoạt động AI trên Windows theo ứng dụng
Karaoke Nước mắt hạnh phúc - Beat Midi
Cách cài WARP 1.1.1.1 trên máy tính để tăng tốc vào web
Physical AI là gì? phân biệt Physical AI với các thuật ngữ AI hiện đại
Cấu trúc prompt tạo bài viết chuẩn SEO hoàn chỉnh bằng AI
Cách tái cấu trúc mã nguồn với Claude Code
Thử nghiệm Claude Code, Codex và Antigravity trên một dự án điện tử thực tế: Kết quả ra sao?
10 prompt giúp bạn viết nội dung hay và chuyên nghiệp
4 thay đổi cần thực hiện trước khi mở một Obsidian vault mới
Perplexity vs ChatGPT: So sánh chi tiết hai trợ lý AI hàng đầu
Hướng dẫn kết nối Gmail với n8n qua Google Cloud Console