Với top
thật dễ dàng để tìm ra bao nhiêu CPU từng công việc sử dụng. Tuy nhiên, tôi muốn tìm một công việc khiến CPU chờ đợi cao. Có cách nào để tìm ra công việc nào bị chặn trên I/O không?Làm thế nào để tìm hiểu đó là quá trình tiêu thụ "chờ CPU" (ví dụ: I/O bị chặn)
Trả lời
iotop và latencytop có thể hữu ích. Không cung cấp chính xác "thời gian chờ CPU gây ra bởi một quá trình" - Tôi không chắc chắn nó thậm chí có ý nghĩa, bởi vì CPU có thể và không đi để phục vụ các quá trình khác trong khi chờ IO - nhưng hai công cụ này cung cấp tổng quan về (tương ứng) hệ thống I/O giao thông và lên lịch sự chậm trễ.
Các quá trình bị chặn trên IO là các quy trình được đánh dấu là D
trong cột trạng thái (S
cột ở trên cùng).
Điều này có lẽ là câu trả lời được chấp nhận ở đây vì nó dễ dàng đạt được như là một trợ giúp để tìm ra thủ tục thủ phạm. –
Để được chính xác hơn, sử dụng lệnh này có thể dễ dàng tìm ra các quy trình đang "ăn" chu kỳ CPU của bạn:
while true; do date; ps auxf | awk '{if($8=="D") print $0;}'; sleep 1; done
url Điều này có thể hữu ích: Linux Wait IO Problem
Làm một đầu, sau đó thay đổi F, sau đó chọn m hoặc n, sẽ sắp xếp danh sách các quá trình theo thời gian CPU được sử dụng.
- 1. Python: Làm thế nào để bạn tìm thấy mức tiêu thụ CPU cho một đoạn mã?
- 2. modrails - rogue ruby quy trình tiêu thụ 100% cpu
- 3. Ví dụ tính toán CPU chuyên sâu?
- 4. Tomcat tiêu thụ CPU cao
- 5. Lệnh để tìm quá trình sử dụng quá nhiều CPU
- 6. Ứng dụng MDI tiêu thụ 100% cpu ở chế độ chờ
- 7. clr.sll! StrongNameSignatureXác minh CPU tiêu thụ
- 8. Một ví dụ đơn giản cho ai đó muốn hiểu Lập trình động
- 9. ví dụ mã để tìm hiểu chương trình phụ trợ LLVM
- 10. Dịch vụ Windows Tăng mức tiêu thụ CPU
- 11. Ví dụ về mục tiêu C tìm kiếm
- 12. Tôi nên sử dụng mô-đun luồng nào để ngăn chặn đĩa IO chặn mạng IO?
- 13. Ví dụ tìm nạp trước?
- 14. Tôi làm cách nào để tìm hiểu mức pin mà ứng dụng Android của mình tiêu thụ trên thiết bị của người dùng?
- 15. Để phân tích mức tiêu thụ CPU của trình bổ sung Firefox trong SO
- 16. Regex cho một tên người dùng tăng tiêu thụ CPU
- 17. Muốn hiểu 6NF với một ví dụ
- 18. Chặn IO và IO không chặn; tìm kiếm các bài viết hay nhất
- 19. Làm thế nào để tìm hiểu những gì mach_msg_trap chờ đợi?
- 20. Làm thế nào để tìm hiểu những gì đang chặn 'method_missing'
- 21. Làm thế nào để giám sát quá trình trong CPU Linux, Bộ nhớ và thời gian
- 22. Tự động giết quá trình tiêu thụ quá nhiều bộ nhớ hay đứng trên linux
- 23. Tìm kiếm ví dụ về chương trình không chặn DTLS (C/C++)
- 24. Đi đâu để tìm hiểu kiến trúc web? Ví dụ về Youtube?
- 25. Làm thế nào để tìm hiểu SOAP?
- 26. Làm thế nào để kiểm tra xem một ví dụ twisted.internet.protocol đã bị ngắt kết nối
- 27. Giết một quá trình và chờ quá trình thoát
- 28. Làm thế nào để tìm hiểu Eclipse đang làm gì trong backround?
- 29. Làm thế nào để chờ quá trình kết thúc bằng IO.popen?
- 30. Băng thông CPU trên Google App Engine có quá đắt hay đó là mã của tôi?
cả hai công cụ đều đẹp, nhưng máy chủ tôi không thể dễ dàng được vá hoặc nâng cấp lên> 2.6.20, vì vậy chúng không hoạt động đối với tôi. nhưng tôi sẽ giữ chúng để tham khảo trong tương lai :) –
Liên kết tới LatencyTOP.org đã chết - không có bản ghi DNS gốc. Dự án dường như đã chết, không có cam kết nào kể từ năm 2009. –