2013-10-23 14 views
7

Tôi đang chạy tập lệnh tải các tệp lớn. Tôi chạy cùng một kịch bản trong một máy chủ lõi đơn OpenSuSe và máy tính lõi tứ. Như mong đợi trong máy tính của tôi, nó nhanh hơn nhiều so với máy chủ. Tuy nhiên, kịch bản chậm lại máy chủ và làm cho nó không thể làm bất cứ điều gì khác.Tại sao thời gian CPU hệ thống (% sy) cao?

kịch bản của tôi là

for 100 iterations 
Load saved data (about 10 mb) 

thời gian myscript (trong máy tính)

real 0m52.564s 
user 0m51.768s 
sys 0m0.524s 

thời gian myscript (trong máy chủ)

real 32m32.810s 
user 4m37.677s 
sys 12m51.524s 

Tôi tự hỏi tại sao "sys" là quá cao khi tôi chạy mã trong máy chủ. Tôi đã sử dụng lệnh trên cùng để kiểm tra bộ nhớ và cách sử dụng CPU. enter image description here Dường như vẫn còn bộ nhớ miễn phí, do đó, hoán đổi không phải là lý do. % sy quá cao, có lẽ lý do cho tốc độ của máy chủ nhưng tôi không biết nguyên nhân gây ra% sy quá cao. Quá trình sử dụng phần trăm CPU cao nhất (99%) là "myscript". % wa là số không trong ảnh chụp màn hình nhưng đôi khi nó rất cao (50%).

Khi kịch bản đang chạy, trung bình tải là lớn hơn 1 nhưng chưa bao giờ thấy được cao như 2.

Tôi cũng đã kiểm tra đĩa của tôi:

strt:~ # hdparm -tT /dev/sda 

/dev/sda: 
Timing cached reads: 16480 MB in 2.00 seconds = 8247.94 MB/sec 
Timing buffered disk reads: 20 MB in 3.44 seconds = 5.81 MB/sec 

[email protected]:~> df -h 
Filesystem  Size Used Avail Use% Mounted on 
/dev/sda2  245G 102G 131G 44%/
udev   4.0G 152K 4.0G 1% /dev 
tmpfs   4.0G 76K 4.0G 1% /dev/shm 

Tôi đã kiểm tra những điều này nhưng Tôi vẫn không chắc vấn đề thực sự trong máy chủ của tôi là gì và cách sửa nó. Bất cứ ai có thể xác định một lý do có thể xảy ra cho sự chậm chạp? Điều gì có thể là giải pháp? Hoặc có bất kỳ điều gì khác mà tôi nên kiểm tra không?

Cảm ơn!

+0

"Vấn đề" là gì? Nếu bạn yêu cầu hệ thống thực hiện rất nhiều công việc, nó sẽ khá bận rộn cho đến khi nó được thực hiện. Với một kịch bản điển hình, hầu như tất cả "công việc" sẽ diễn ra trong các tiến trình con (hoặc các nhiệm vụ không gian hạt nhân thay mặt chúng, chẳng hạn như I/O), không phải trong quá trình shell diễn giải kịch bản. –

+0

Khi tập lệnh đang chạy, những người dùng khác trong máy chủ nhận được phản hồi chậm. Tôi muốn chạy tập lệnh nhanh hơn và cũng không làm phiền người dùng khác. Nếu thêm một số tài nguyên là giải pháp, tôi có thể làm điều đó. Nhưng, tôi không biết những gì có thể giúp đỡ. – Abhishek

+0

Nếu bạn đang yêu cầu loại hệ thống nào để mua/nâng cấp để thực hiện hiệu suất tốt hơn, đó có thể là câu hỏi về siêu người dùng.Nếu bạn muốn cố gắng làm cho tác vụ trở nên hiệu quả hơn (các giải pháp kết hợp với nhau có thể có nhiều chỗ để cải thiện), bạn sẽ phải cụ thể hơn về những gì nó thực hiện và cách - mã thực tế hoặc ít nhất một mô tả chức năng gần. –

Trả lời

1

Bạn đang nhận được hoạt động của sys cao vì tải dữ liệu bạn đang thực hiện có các cuộc gọi hệ thống xảy ra trong hạt nhân. Để giải quyết các sự cố chậm chạp của bạn mà không cần nâng cấp máy chủ thì có thể thực hiện được. Bạn có thể sửa đổi mức độ ưu tiên lên lịch. Xem các trang hướng dẫn sử dụng cho các trang đẹp và đổi mới. Xem here và đặc biệt là:

Giá trị độ chính xác dao động từ -20 (ưu tiên cao nhất, thấp nhất) và 19 (ưu tiên thấp nhất, cao nhất).

$ ps -lp 941 F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY LÚC NÀO CMD 4 S 0 941 1 0 70 -10 - 1713 poll_s? 00:00:00 sshd

$ đẹp -n 19 ./test.sh giá trị giá trị nice của tôi là 19

$ renice -n 10 -p 941 941 (process ID) ưu tiên cũ -10, mới ưu tiên 10

Các vấn đề liên quan