Có giải pháp nào có thể hạn chế việc sử dụng CPU của một quá trình không?


70

Tôi đang sử dụng một máy tính xách tay cũ và xử lý nặng cần sử dụng CPU cao trong một thời gian dài (~ 30 phút - 2 giờ). Khi quá trình đặt tải nặng lên CPU trong một thời gian dài, CPU sẽ quá nóng và máy tính tắt. Tôi không muốn sử dụng máy làm mát / giá đỡ vì tôi mang theo máy tính xách tay này và làm việc bên ngoài nhà.

Có cách nào / ứng dụng mà tôi có thể giới hạn việc sử dụng CPU của một tiến trình trong Windows không?

Lưu ý: Đặt mức độ ưu tiên của quy trình từ trình quản lý tác vụ không hoạt động.

Lưu ý 2: Quạt sạch sẽ.


6
Việc thuê 3 giờ thời gian CPU trên EC2 có khả thi không? Tôi sẽ tưởng tượng rằng sẽ làm việc tốt hơn rất nhiều cho hầu hết các trường hợp.
Digitxp

bạn có thể chỉ định phiên bản Windows nào và máy tính xách tay cũ nào không? Nếu có lõi kép bên trong, bạn chỉ có thể chỉ định ứng dụng chỉ chạy trên một lõi, giữ cho nó ở mức 50% và do đó temps mát hơn.
Joris Meys

4
@digitxp: Hiện tại tôi là nghiên cứu sinh, nếu là vì mục đích kinh doanh, tôi đã mua một chiếc máy tính xách tay mới hoặc sử dụng một máy tính để bàn mạnh mẽ nào :)
nimcap

Câu trả lời:


64

Một tìm kiếm trên mạng mang lại một số chương trình có thể giúp đỡ. Chúng đều là phần mềm miễn phí .

BES - Bộ mã hóa trận chiến Shirase

BES là một công cụ nhỏ giới hạn việc sử dụng CPU cho một quy trình được chỉ định: ví dụ: bạn có thể giới hạn mức sử dụng CPU của quy trình sẽ sử dụng CPU 100%, xuống tới 50% (hoặc bất kỳ tỷ lệ phần trăm nào bạn muốn). Với điều này, bạn có thể sử dụng các chương trình khác một cách thoải mái trong khi thực hiện một cái gì đó thâm dụng CPU trong nền. Bằng cách giới hạn tải CPU, bạn cũng có thể hạ nhiệt CPU ngay lập tức khi nó quá nóng. Tất nhiên tốc độ xử lý sẽ chậm lại theo tỷ lệ nếu bạn giới hạn mức sử dụng CPU, nhưng sẽ tốt hơn nhiều so với sự cố do nhiệt hoặc (trong trường hợp xấu nhất) khiến máy tính của bạn bị hỏng CPU.

Quy trình xử lý

Process Tamer là một tiện ích nhỏ (140k) và siêu hiệu quả cho Microsoft Windows XP / 2K / NT / Vista / Win7 chạy trong khay hệ thống của bạn và liên tục theo dõi việc sử dụng cpu của các quy trình khác. Khi nó thấy một quá trình đang làm quá tải cpu của bạn, nó sẽ giảm mức độ ưu tiên của tiến trình đó tạm thời, cho đến khi việc sử dụng cpu của nó trở về mức hợp lý.

Quy trình Lasso

Process Lasso là một công nghệ mới độc đáo sẽ cải thiện khả năng phản hồi và độ ổn định của PC trong thời gian tải CPU cao. Windows, theo thiết kế, cho phép các chương trình độc quyền CPU của bạn mà không bị hạn chế - dẫn đến đóng băng, treo và vi trễ. Công nghệ ProBalance (Cân bằng quy trình) của Lasso điều chỉnh một cách thông minh các ưu tiên của các chương trình đang chạy để các quy trình có hành vi xấu sẽ không ảnh hưởng tiêu cực đến khả năng đáp ứng của PC của bạn.


10
trong số ba BES có vẻ như đặt cược tốt nhất. hai giá trị còn lại sử dụng các giá trị ưu tiên không hoạt động theo câu hỏi
RobotHumans

4
BES là lựa chọn của tôi. Nó rất nhẹ và làm những gì chúng ta phải làm.
nimcap

1
BES không thể giới hạn Windows Live Mesh (MOE.exe); nó tiếp tục sử dụng 95% bất kể cài đặt nào. Những người khác có thể không thể giúp đỡ vì nó đã được đặt thành ưu tiên nhàn rỗi. Làm cho toàn bộ hệ điều hành rất chậm.
RomanSt

Đúng. BES là trình giới hạn% cpu duy nhất. Tại sao ở vị trí thứ 3 ?? :(
erm3nda

Từ trang web của BES: "có, BES là một công cụ định kỳ khiến mục tiêu ngủ trong một thời gian rất ngắn".
nhạc chuông

15

Giải pháp đơn giản nhất tôi tìm thấy là hạn chế sức mạnh của Bộ xử lý.

  1. Chuyển đến Bảng điều khiển.
  2. Phần cứng và âm thanh
  3. Tùy chọn năng lượng
  4. Chỉnh sửa cài đặt kế hoạch
  5. Thay đổi cài đặt nguồn nâng cao
  6. Quản lý năng lượng bộ xử lý
  7. Trạng thái bộ xử lý tối đa và hạ thấp nó xuống 80% hoặc bất cứ điều gì bạn muốn. Sử dụng phần mềm đo nhiệt độ CPU như 'Quạt tốc độ', bạn sẽ thấy nhiệt độ giảm xuống.

Bạn cũng có thể điều chỉnh chính sách làm mát ở đó chế độ thụ động có thể giúp ích
CrandellWS

9

Chắc chắn đây là một câu hỏi cũ nhưng tôi ngạc nhiên chưa ai đề xuất điều này:

Giảm tốc độ CPU của bạn.

Thực tế tất cả các máy tính xách tay và Windows đã tích hợp sẵn các cơ chế để điều chỉnh linh hoạt tốc độ bộ xử lý để phù hợp với tải. Bạn có thể ghi đè hành vi này - ví dụ: trong Bảng điều khiển => Tùy chọn nguồn => Nâng cao, bạn có thể đặt tốc độ xử lý tối đa dưới 100%. Bộ xử lý của bạn sau đó sẽ được giới hạn ở tốc độ thấp hơn và do đó tạo ra ít nhiệt hơn, định nghĩa những gì bạn đang làm.

Điều này không yêu cầu phần mềm bổ sung và quan trọng hơn là giảm tốc độ CPU giúp bộ xử lý của bạn hiệu quả hơn , do đó, là một giải pháp tốt hơn so với việc hạn chế sử dụng CPU của bạn trong Windows. Sử dụng 50% bộ xử lý ở mức 2.0Ghz sẽ sử dụng nhiều năng lượng hơn đáng kể so với 100% bộ xử lý ở mức 1.0Ghz. Ít năng lượng = ít nhiệt.


5

Tôi muốn thêm ứng dụng mà tôi đã sử dụng trước đây để hạn chế sử dụng CPU thành công. Tôi đã sử dụng threadmaster nhiều lần trong quá khứ.

http://threadmaster.tripod.com/


5

Trong Windows 10, 8 và 7:

  1. Đi đến Trình quản lý tác vụ.
  2. Nhấp chuột phải vào quá trình hạn chế sử dụng CPU. Nhấp vào Đi đến chi tiết .
  3. Bây giờ, tab chi tiết sẽ xuất hiện. Nhấp chuột phải vào quy trình cụ thể, chọn thiết lập mối quan hệ và chọn các lõi mà bạn sẽ cho phép quy trình cụ thể sử dụng.

1
Trong Windows 7, bấm chuột phải vào một quy trình trong trình quản lý tác vụ sẽ hiển thị menu ngữ cảnh và một trong các tùy chọn là "Đặt mối quan hệ" hoạt động như bạn mô tả.
David Richerby

Quá trình tôi muốn hạn chế sử dụng CPU có màu xám. Các chi tiết đi đến màu xám.
Santosh Kumar

3

Thay vì tải xuống một chương trình để làm điều đó, nếu bạn vào trình quản lý tác vụ và đi đến chi tiết, bạn sẽ thấy một danh sách các quy trình bạn đang chạy. Nếu bạn nhấp chuột phải và sử dụng tùy chọn "thiết lập mối quan hệ" thay vì "đặt mức độ ưu tiên", bạn có thể chọn số lượng lõi đang được sử dụng bởi một chương trình riêng lẻ do đó hạn chế mức độ sử dụng CPU của chương trình.


Hầu hết các chương trình đều là một luồng đơn, do đó, việc đặt mối quan hệ thành 1 lõi sẽ không giúp ích gì cho bạn cả. (Các chương trình đơn luồng chỉ có thể sử dụng một lõi cpu duy nhất và không sử dụng nhiều hơn một lõi ở vị trí đầu tiên.)
CausingUnderflowsEverywhere

3

Một cách rất thuận tiện khác để đặt mối quan hệ của một thực thi nhất định khi nó khởi chạy là sử dụng lệnh start .

ví dụ: "bắt đầu / ái lực F iexplore.exe". Nếu có một ứng dụng duy nhất mà bạn muốn bắt đầu như vậy, bạn có thể tạo một lối tắt với lệnh này. Lưu ý rằng ái lực được đặt theo giá trị thập lục phân, có thể yêu cầu một số thử nghiệm và lỗi. Kiểm tra quá trình trong trình quản lý tác vụ để xem kết quả mối quan hệ thực tế!

Xem thêm tại đây: http://bloss.msdn.com/b/santhoshonline/archive/2011/11/24/how-to-launch-a- Process-with-cpu-affinity-set.aspx


2

Ngày nay, giải pháp tốt nhất là hạn chế sử dụng CPU trên mỗi quá trình bằng cách giới hạn ái lực của CPU (lõi mà quá trình có quyền truy cập). Bạn có độ chính xác thấp hơn (chỉ có thể giới hạn ở một tỷ lệ phần trăm nhất định), nhưng đây là một hoạt động tự nhiên hơn so với cố gắng định kỳ đình chỉ và tiếp tục các luồng xử lý. Process Lasso thực hiện công việc tốt với các mối quan hệ CPU mặc định (liên tục). Tuy nhiên, nó cũng có giới hạn kiểu BES "cứng", mặc dù điều đó không được khuyến khích vì đó là một hành động không tự nhiên.


1

Việc giải nén CPU sẽ cho phép bạn đạt được tốc độ CPU chậm hơn, giảm nhiệt sinh ra. Bạn có thể cần trải nghiệm nâng cao nếu bo mạch chủ hoặc CPU của bạn không có phương tiện sửa đổi tốc độ xung nhịp bằng chương trình có thể tải xuống. (Tìm kiếm các tiện ích ép xung cho CPU hoặc bo mạch chủ của bạn (chỉ từ nhà sản xuất CPU và bo mạch chủ của bạn), chỉ cần lưu ý rằng bạn sẽ quan tâm đến việc ép xung.)

Trong trường hợp không có tiện ích nào có sẵn, bạn sẽ cho bạn vào BIOS máy tính của bạn và sửa đổi tốc độ xung nhịp của bộ xử lý. Cách dễ nhất là bằng cách đặt số nhân thành số thấp hơn. Vui lòng không chạm vào điện áp vì điều này có thể làm hỏng CPU của bạn nếu nó quá cao hoặc gây ra lỗi khi quá thấp. Thường xuyên không nên sửa đổi, chỉ là số nhân. Để trở về cài đặt mặc định, hãy đọc hướng dẫn BIOS của bạn để xác định phím cần nhấn để khôi phục cài đặt mặc định. (Hoặc chỉ kiểm tra màn hình BIOS cẩn thận, đặc biệt là màn hình thoát.)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.