"clocksource tsc unstable"은 무엇을 의미합니까?


10

Linux 부팅을 볼 때마다 다음 메시지가 표시됩니다.

클럭 소스 tsc 불안정 (델타 = NNNNNNNN ns)

여기서 NNNNNNNN은 매우 큰 수이며 양수이거나 음수 일 수 있습니다.

이 메시지는 무엇을 의미합니까? 이것에 대해 걱정해야합니까?


나는 타임 스탬프 카운터를tsc 참조 생각 합니다 . 도움이된다면.
— Der Hochstapler

또한 온라인에서이 메시지에 대해 찾은 내용을 고려할 때 실제 시스템 또는 가상 시스템에서이 메시지가 표시됩니까? 그와 관련이있는 것 같습니다.
— Der Hochstapler

물리적 및 가상 모두. Linux를 부팅 할 때 여러 다른 시스템에서이 메시지가 나타납니다.
— bwDraco

나는 바로이 메시지 도착 /var/log/message에 "떨어져 ACPI ="옵션을 추가 할 때를 /etc/grub.conf(같은 kernel=옵션). 제거하고 재부팅하면 메시지가 사라졌습니다. 커널이 포함 된 CentOS 6 : .6.32-279.19.1.el6.x86_64

답변:


8

나는 오늘이 메시지를 솔직하게보고 실제로 그것이 무엇을 의미하는지 전혀 모른다.

즉, 타임 스탬프 카운터 에서 Wikipedia 기사를 읽었습니다 ( tsc오류 메시지의 내용). 이 기사는 두 번째 단락에서 TSC와 관련된 문제를 언급합니다.

타임 스탬프 카운터는 최근까지 CPU 타이밍 정보를 얻는 우수한 고해상도 오버 헤드 방식이었습니다. 멀티 코어 / 하이퍼 스레드 CPU, 여러 CPU가있는 시스템 및 "최대 절전"운영 체제의 출현으로 TSC는 정확한 결과를 제공 할 수 없습니다.— 가능한 결함을 수정하기 위해 세심한주의를 기울이지 않는 한 : 틱 속도 및 모든 코어 (프로세서)의 시간 유지 레지스터 값이 동일한 지 여부. 단일 마더 보드에있는 여러 CPU의 타임 스탬프 카운터가 동기화 될 것이라는 약속은 없습니다. 이러한 경우 프로그래머는 코드를 단일 CPU에 고정하여 신뢰할 수있는 결과를 얻을 수 있습니다. 그럼에도 불구하고 OS 또는 BIOS에서 수행 한 절전 조치로 인해 CPU 속도가 변경되거나 시스템이 최대 절전 모드로 전환 된 후 다시 시작될 수 있습니다 (타임 스탬프 카운터 재설정). 후자의 경우, 관련성을 유지하려면 응용 프로그램에 필요한 시간 해상도에 따라 카운터를 정기적으로 다시 교정해야합니다.

요컨대, 현대 시스템에서 TSC는 시간을 정확하게 측정하기 위해 빠릅니다 . 그리고 그것이 메시지가 말하는 것입니다. 시스템에서 TSC는 안정적인 시간 소스가 아닙니다.

는 delta, 내가 생각할 겁니다, TSC의 두 눈금 사이에보고 된 시간 델타는 지적했다. 의미는 TSC가 카운트마다 1, NNNNNNNNN나노초는 통과됩니다. 그래서 그것은 당신이 보통 매우 정확한 시간을 유지할 수있는 방법입니다.

리눅스 커널은이 빈도를 여러 번 점검하여 (소스가 안정적인지 판단하기 위해) 다른 결과를 얻었습니다. 따라서 메시지입니다.


그래서 걱정해야합니까?
나는 솔직히 모른다. 내 이해에 따르면,이 문제는 코어간에 "이동"되는 프로세스 (모든 코어가 다른 TSC 주파수를 가질 수 있음) 또는 코어 주파수를 변경하는 코어 (절전과 같은)에서 발생합니다.

커널이이 문제를 스스로 감지하고 그에 따라 조정하므로 메시지가 인쇄 될 가능성이 높습니다.

그리고 커널 소스 ( arch/x86/kernel/tsc.c) 에서 읽은 내용에서 가정에 너무 멀다고 생각하지 않습니다.

나는 메시지가 중대한 상태를 의미한다고 의심한다. 그리고 나는 그것이 중요하다면 지금까지 알고 있다고 가정합니다.


2
같은 기사에서 인용 한 일부 최신 CPU는 일정한 타임 스탬프 카운터 도 제공합니다 . 최근 인텔 프로세서에는 일정한 속도 TSC (Linux의 / proc / cpuinfo에서 constant_tsc 플래그로 식별)가 포함되어 있습니다. 이러한 프로세서를 사용하면 TSC는 실제 CPU 실행 속도에 관계없이 프로세서의 최대 속도로 읽습니다.
— scai

tsc 대신 hpet을 사용하도록 권장합니까?
— CMCDragonkai

1
정보를 추가하고 싶습니다. 오늘 나는 우리의 마이크로 서버 중 하나 에서이 문제에 직면했습니다. OS는 RHEL 6.5이며 동일한 메시지를 제공합니다. 이 서버는 현재 달팽이 속도로 크롤링하고 있습니다. 한 시간이 지났으며 부팅이 아직 완료되지 않았습니다. 다음 단계는 복구 모드로 이동하여 카운터를 변경하고 grub.conf 파일에 정보를 추가하는 것입니다. 단일 사용자 모드도 작동하지 않기 때문에
— OmiPenguin
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.