Trên một số nền tảng sản xuất, chúng tôi đã quan sát thấy các triệu chứng xuất hiện cho thấy thời gian trong ngày là định kỳ nhảy về phía trước hoặc lùi lại. Các bước nhảy thường khoảng 1 giây, thường là hủy bỏ (nhảy về phía trước rồi lùi lại rất nhanh sau đó) và xảy ra khoảng 50 lần mỗi ngày. Sự trôi dạt này là đáng chú ý nhất trong thời gian sử dụng ứng dụng cao điểm và trong các giai đoạn hoạt động I / O đĩa cao như sao lưu hàng ngày. Những bản thảo này đang ảnh hưởng đến ứng dụng nhạy cảm thời gian thực mềm của chúng tôi.
Các hệ thống là các máy chủ Oracle Netra X4250 và Netra X4270 chạy SLES 11SP2 với kernel mặc định 3.0.58-0.6.6.
$ cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm
$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc
Chúng tôi đã vô hiệu hóa NTP , nhưng điều đó không có bất kỳ ảnh hưởng nào đến việc trôi dạt. Có công cụ nào đo thời gian trôi trong ngày không? Làm thế nào chúng ta có thể tránh điều này?
Đây là những nền tảng sản xuất và chúng tôi không thể tạo lại vấn đề trong phòng thí nghiệm của mình, vì vậy khả năng thử nghiệm của tôi bị hạn chế. Nếu để các thiết bị của riêng tôi, tôi sẽ viết một công cụ để đo độ trôi và có thể thử nghiệm với nguồn đồng hồ HPET .
ntpdate(8)
hoặcntpd(8)
).