Tại sao song song chậm lại sau một thời gian?


1

Tôi đang thực thi 60 tập lệnh với GNU song song (tất cả chúng đều có wgetcác lệnh trong đó) nhưng tôi nhận thấy rằng sau một vài giờ thực thi sẽ làm chậm một chút. Điều gì có thể gây ra điều này?

Tôi đang thực thi song song với lệnh này: parallel -j 60 < listtrong đó "list" chỉ là một tệp có thư mục chứa 60 tập lệnh.

Tôi đang sử dụng máy CentOS 6.5.


1
Vì bạn sử dụng wgetnên nó có thể liên quan nhiều đến các sự cố mạng để thực thi các tập lệnh chậm hơn.
Ramesh

Nếu tôi dừng thực thi tại bất kỳ thời điểm nào và khởi động lại nó, nó sẽ bắt đầu nhanh trở lại, tôi có thể làm gì để xem điều này có liên quan đến sự cố mạng không?
Dominique

Gần đây tôi đã trích xuất hàng tỷ hàng dữ liệu từ internet. Theo hiểu biết của tôi, khi bạn bắt đầu thực thi, không phải tất cả 60 quy trình đều làm tắc nghẽn lưu lượng mạng ban đầu. Tuy nhiên, khi khung thời gian tăng, lưu lượng mạng tăng và băng thông được sử dụng đầy đủ. Ngoài ra, nó có thể liên quan đến việc sử dụng CPU.
Ramesh

Mặc dù lý thuyết là khôn ngoan nhưng có thể chạy nhiều luồng, nó phụ thuộc nhiều vào máy móc. Nếu máy của bạn là lõi đơn và bạn chạy 60 quy trình, không phải tất cả 60 quy trình sẽ diễn ra song song. Tôi không chắc chắn về khái niệm này nhưng đây chắc chắn là một lý do khác cho sự chậm chạp.
Ramesh

@Ramesh trong htopTôi thấy mức sử dụng CPU tối thiểu và mức sử dụng mạng không đổi. VM này (được lưu trữ trên kvm) có 8 luồng và 24GB RAM.
Dominique

Câu trả lời:


1

Từ việc hiểu hạt nhân Linux :

Trong Linux, ưu tiên quá trình là động. Bộ lập lịch theo dõi các quy trình đang làm và điều chỉnh các ưu tiên của chúng theo định kỳ; theo cách này, các quy trình đã bị từ chối sử dụng CPU trong một khoảng thời gian dài được tăng cường bằng cách tăng động ưu tiên của chúng. Tương ứng, các quy trình chạy trong một thời gian dài bị phạt bằng cách giảm mức độ ưu tiên của chúng.


Có cách nào tôi có thể buộc một ưu tiên cao?
Dominique

Sử dụng lệnh renice.
Kyle Jones

Sẽ renicelệnh ảnh hưởng đến các lệnh gọi bởi các kịch bản bash và song song?
Dominique

Nếu bạn làm lại quá trình cha mẹ, tất cả những đứa trẻ sinh ra trong tương lai sẽ chia sẻ giá trị tốt đẹp đó.
Kyle Jones
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.