Tôi đang thực hiện một nghiên cứu giữa các profilers chủ yếu là thiết bị đo đạc và lấy mẫu. Tôi đã nảy ra các thông tin sau:Profilers Instrumenting Vs Sampling
- lấy mẫu: đình chỉ thi hành chương trình, hãy PC và do đó suy ra là chương trình là
- instrumenting: thêm một số mã overhead cho chương trình vì vậy nó sẽ tăng một số gợi ý để biết chương trình
Nếu thông tin trên sai chính xác.
Sau này, tôi đã xem xét thời gian thực hiện và một số cho rằng thiết bị mất nhiều thời gian hơn so với lấy mẫu! điều này có đúng không?
nếu có, tại sao vậy? trong việc lấy mẫu, bạn phải trả giá chuyển đổi ngữ cảnh giữa các quy trình trong khi trong cùng chương trình, bạn không mất chi phí
Tôi có thiếu gì đó không?
cổ vũ! =)
Cho biết chương trình đang làm gì bằng cách lấy mẫu PC giống như cố gắng biết thời gian bằng cách lấy mẫu chỉ giây. Áp dụng cho phần mềm thực, thông thường nó nói chương trình "là" ở đâu đó vô nghĩa trong hạt nhân. Các mẫu ngăn xếp có ích hơn vì chúng cho biết * tại sao * nó ở trong đó. Dụng cụ giống như cố gắng kể thời gian trên một chiếc đồng hồ mà một số chữ số đã bị xóa, giống như nó nhảy từ 2:00 đến 7:00. Đó là bởi vì nó lần chức năng nhưng không phải là dòng mã. Nhấn một chức năng lớn và bạn trở lại để đoán. –