요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
Kernel driver k8temp
====================
Supported chips:
* AMD Athlon64/FX or Opteron CPUs
Prefix: 'k8temp'
Addresses scanned: PCI space
Datasheet: https://www.amd.com/system/files/TechDocs/32559.pdf
Author: Rudolf Marek
Contact: Rudolf Marek <[email protected]>
Description
-----------
This driver permits reading temperature sensor(s) embedded inside AMD K8
family CPUs (Athlon64/FX, Opteron). Official documentation says that it works
from revision F of K8 core, but in fact it seems to be implemented for all
revisions of K8 except the first two revisions (SH-B0 and SH-B3).
Please note that you will need at least lm-sensors 2.10.1 for proper userspace
support.
There can be up to four temperature sensors inside single CPU. The driver
will auto-detect the sensors and will display only temperatures from
implemented sensors.
Mapping of /sys files is as follows:
============= ===================================
temp1_input temperature of Core 0 and "place" 0
temp2_input temperature of Core 0 and "place" 1
temp3_input temperature of Core 1 and "place" 0
temp4_input temperature of Core 1 and "place" 1
============= ===================================
Temperatures are measured in degrees Celsius and measurement resolution is
1 degree C. It is expected that future CPU will have better resolution. The
temperature is updated once a second. Valid temperatures are from -49 to
206 degrees C.
Temperature known as TCaseMax was specified for processors up to revision E.
This temperature is defined as temperature between heat-spreader and CPU
case, so the internal CPU temperature supplied by this driver can be higher.
There is no easy way how to measure the temperature which will correlate
with TCaseMax temperature.
For newer revisions of CPU (rev F, socket AM2) there is a mathematically
computed temperature called TControl, which must be lower than TControlMax.
The relationship is following:
temp1_input - TjOffset*2 < TControlMax,
TjOffset is not yet exported by the driver, TControlMax is usually
70 degrees C. The rule of the thumb -> CPU temperature should not cross
60 degrees C too much.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
AMD K8 지원 CPU와 접근 방식
1-17`k8temp` 드라이버는 AMD Athlon64/FX와 Opteron CPU를 지원하며 PCI 공간에서 센서를 찾습니다. 접두사는 `k8temp`, 데이터시트는 원문 AMD 링크이며 작성자와 연락처는 Rudolf Marek입니다.
지원 프로세서와 자료입니다.
PCI 기능에서 구현된 센서만 게시합니다.
Kernel driver k8temp
====================
Supported chips:
* AMD Athlon64/FX or Opteron CPUs
Prefix: 'k8temp'
Addresses scanned: PCI space
Datasheet: https://www.amd.com/system/files/TechDocs/32559.pdf
Author: Rudolf Marek
Contact: Rudolf Marek <[email protected]>
K8 센서 배치와 측정 범위
18-46드라이버는 AMD K8 계열 CPU 내부의 온도 센서를 읽습니다. 공식 문서는 K8 코어 리비전 F부터 동작한다고 하지만 실제로는 처음 두 리비전 SH-B0과 SH-B3을 제외한 모든 K8 리비전에 구현된 것으로 보입니다. 사용자 공간 지원에는 최소 lm-sensors 2.10.1이 필요합니다.
CPU 하나에는 최대 네 온도 센서가 있을 수 있습니다. 드라이버가 자동 감지해 실제 구현된 센서의 온도만 표시합니다.
`temp1_input`은 Core 0·place 0, `temp2_input`은 Core 0·place 1, `temp3_input`은 Core 1·place 0, `temp4_input`은 Core 1·place 1의 온도입니다.
온도는 섭씨 1도 분해능으로 측정되고 1초마다 갱신됩니다. 유효 범위는 -49도 C부터 206도 C입니다. 향후 CPU는 더 높은 분해능을 가질 것으로 예상된다고 원문은 설명합니다.
코어와 place 조합을 sysfs 속성에 대응시켰습니다.
구현 센서만 탐색해 주기적으로 게시합니다.
Description
-----------
This driver permits reading temperature sensor(s) embedded inside AMD K8
family CPUs (Athlon64/FX, Opteron). Official documentation says that it works
from revision F of K8 core, but in fact it seems to be implemented for all
revisions of K8 except the first two revisions (SH-B0 and SH-B3).
Please note that you will need at least lm-sensors 2.10.1 for proper userspace
support.
There can be up to four temperature sensors inside single CPU. The driver
will auto-detect the sensors and will display only temperatures from
implemented sensors.
Mapping of /sys files is as follows:
============= ===================================
temp1_input temperature of Core 0 and "place" 0
temp2_input temperature of Core 0 and "place" 1
temp3_input temperature of Core 1 and "place" 0
temp4_input temperature of Core 1 and "place" 1
============= ===================================
Temperatures are measured in degrees Celsius and measurement resolution is
1 degree C. It is expected that future CPU will have better resolution. The
temperature is updated once a second. Valid temperatures are from -49 to
206 degrees C.
TCaseMax와 TControl 관계
47-62리비전 E까지의 프로세서에는 TCaseMax가 규정되어 있습니다. 이는 히트 스프레더와 CPU 케이스 사이의 온도이므로 드라이버가 제공하는 CPU 내부 온도가 더 높을 수 있습니다. 내부 온도와 TCaseMax에 직접 대응하는 온도를 쉽게 측정할 방법은 없습니다.
리비전 F와 Socket AM2 같은 새 CPU에는 수학적으로 계산한 TControl이 있으며 TControlMax보다 낮아야 합니다. 관계식은 `temp1_input - TjOffset*2 < TControlMax`입니다.
TjOffset은 아직 드라이버가 노출하지 않습니다. TControlMax는 보통 70도 C이며 경험상 CPU 온도가 60도 C를 크게 넘지 않도록 해야 한다고 원문은 안내합니다.
물리 위치와 제어 온도의 차이를 정리했습니다.
리비전에 맞는 기준을 사용합니다.
Temperature known as TCaseMax was specified for processors up to revision E.
This temperature is defined as temperature between heat-spreader and CPU
case, so the internal CPU temperature supplied by this driver can be higher.
There is no easy way how to measure the temperature which will correlate
with TCaseMax temperature.
For newer revisions of CPU (rev F, socket AM2) there is a mathematically
computed temperature called TControl, which must be lower than TControlMax.
The relationship is following:
temp1_input - TjOffset*2 < TControlMax,
TjOffset is not yet exported by the driver, TControlMax is usually
70 degrees C. The rule of the thumb -> CPU temperature should not cross
60 degrees C too much.
요약·해설
k8temp.rst:1-62K8 CPU의 코어·위치별 온도 센서를 자동 탐색하고 리비전별 TCaseMax 또는 TControl 기준을 설명합니다.
원문 분량과 핵심 인터페이스입니다.
하드웨어 측정에서 hwmon 게시까지의 핵심 순서입니다.