요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
Hypervisor 24x7 catalog
sysfs-bus-event_source-devices-hv_24x7:26-48POWER7·8 hypervisor가 제공하는 binary catalog, byte length와 version field를 노출합니다.
System topology와 HCALL CPU mask
sysfs-bus-event_source-devices-hv_24x7:50-76System sockets, chips per socket, cores per chip과 hv-24x7 counter data retrieval HCALL을 수행하도록 지정된 cpumask를 제공합니다.
Firmware event descriptions
sysfs-bus-event_source-devices-hv_24x7:78-98Firmware가 제공하는 short·long event descriptions를 노출하며 file names에는 events directory의 domain suffix가 없습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
What: /sys/bus/event_source/devices/hv_24x7/format
Date: September 2020
Contact: Linux on PowerPC Developer List <[email protected]>
Description: Read-only. Attribute group to describe the magic bits
that go into perf_event_attr.config for a particular pmu.
(See ABI/testing/sysfs-bus-event_source-devices-format).
Each attribute under this group defines a bit range of the
perf_event_attr.config. All supported attributes are listed
below::
chip = "config:16-31"
core = "config:16-31"
domain = "config:0-3"
lpar = "config:0-15"
offset = "config:32-63"
vcpu = "config:16-31"
For example::
PM_PB_CYC = "domain=1,offset=0x80,chip=?,lpar=0x0"
In this event, '?' after chip specifies that
this value will be provided by user while running this event.
What: /sys/bus/event_source/devices/hv_24x7/interface/catalog
Date: February 2014
Contact: Linux on PowerPC Developer List <[email protected]>
Description:
Provides access to the binary "24x7 catalog" provided by the
hypervisor on POWER7 and 8 systems. This catalog lists events
available from the powerpc "hv_24x7" pmu. Its format is
documented here:
https://raw.githubusercontent.com/jmesmon/catalog-24x7/master/hv-24x7-catalog.h
What: /sys/bus/event_source/devices/hv_24x7/interface/catalog_length
Date: February 2014
Contact: Linux on PowerPC Developer List <[email protected]>
Description:
A number equal to the length in bytes of the catalog. This is
also extractable from the provided binary "catalog" sysfs entry.
What: /sys/bus/event_source/devices/hv_24x7/interface/catalog_version
Date: February 2014
Contact: Linux on PowerPC Developer List <[email protected]>
Description:
Exposes the "version" field of the 24x7 catalog. This is also
extractable from the provided binary "catalog" sysfs entry.
What: /sys/devices/hv_24x7/interface/sockets
Date: May 2020
Contact: Linux on PowerPC Developer List <[email protected]>
Description: read only
This sysfs interface exposes the number of sockets present in the
system.
What: /sys/devices/hv_24x7/interface/chipspersocket
Date: May 2020
Contact: Linux on PowerPC Developer List <[email protected]>
Description: read only
This sysfs interface exposes the number of chips per socket
present in the system.
What: /sys/devices/hv_24x7/interface/coresperchip
Date: May 2020
Contact: Linux on PowerPC Developer List <[email protected]>
Description: read only
This sysfs interface exposes the number of cores per chip
present in the system.
What: /sys/devices/hv_24x7/cpumask
Date: July 2020
Contact: Linux on PowerPC Developer List <[email protected]>
Description: read only
This sysfs file exposes the cpumask which is designated to make
HCALLs to retrieve hv-24x7 pmu event counter data.
What: /sys/bus/event_source/devices/hv_24x7/event_descs/<event-name>
Date: February 2014
Contact: Linux on PowerPC Developer List <[email protected]>
Description:
Provides the description of a particular event as provided by
the firmware. If firmware does not provide a description, no
file will be created.
Note that the event-name lacks the domain suffix appended for
events in the events/ dir.
What: /sys/bus/event_source/devices/hv_24x7/event_long_descs/<event-name>
Date: February 2014
Contact: Linux on PowerPC Developer List <[email protected]>
Description:
Provides the "long" description of a particular event as
provided by the firmware. If firmware does not provide a
description, no file will be created.
Note that the event-name lacks the domain suffix appended for
events in the events/ dir.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
hv_24x7 perf event format
1-24| 항목 | 전문 번역 |
|---|---|
| What | /sys/bus/event_source/devices/hv_24x7/format |
| Date | 2020년 9월 |
| Contact | Linux on PowerPC Developer List <[email protected]> |
| Description | Read-only입니다. 특정 PMU의 perf_event_attr.config에 들어가는 magic bits를 설명하는 attribute group입니다. ABI/testing/sysfs-bus-event_source-devices-format을 참조합니다. 이 group 아래 각 attribute는 perf_event_attr.config bit range를 정의합니다. |
| Attribute | Bit range |
|---|---|
| chip | config:16-31 |
| core | config:16-31 |
| domain | config:0-3 |
| lpar | config:0-15 |
| offset | config:32-63 |
| vcpu | config:16-31 |
PM_PB_CYC = "domain=1,offset=0x80,chip=?,lpar=0x0"
이 event에서 chip 뒤의 ?는 event 실행 중 user가 해당 값을 제공한다는 뜻입니다.
POWER hypervisor 24x7 catalog
26-48| What | Date / Contact | 전문 번역 |
|---|---|---|
| /sys/bus/event_source/devices/hv_24x7/interface/catalog | 2014년 2월 / Linux on PowerPC Developer List <[email protected]> | POWER7과 POWER8 systems에서 hypervisor가 제공하는 binary "24x7 catalog"에 접근합니다. 이 catalog는 PowerPC hv_24x7 PMU에서 사용할 수 있는 events를 나열합니다. Format은 https://raw.githubusercontent.com/jmesmon/catalog-24x7/master/hv-24x7-catalog.h 에 문서화되어 있습니다. |
| /sys/bus/event_source/devices/hv_24x7/interface/catalog_length | 2014년 2월 / Linux on PowerPC Developer List <[email protected]> | Catalog byte length와 같은 number입니다. 제공된 binary catalog sysfs entry에서도 추출할 수 있습니다. |
| /sys/bus/event_source/devices/hv_24x7/interface/catalog_version | 2014년 2월 / Linux on PowerPC Developer List <[email protected]> | 24x7 catalog의 version field를 노출합니다. 제공된 binary catalog sysfs entry에서도 추출할 수 있습니다. |
hv_24x7 topology와 HCALL cpumask
50-76| What | Date / Contact | 전문 번역 |
|---|---|---|
| /sys/devices/hv_24x7/interface/sockets | 2020년 5월 / Linux on PowerPC Developer List <[email protected]> | Read-only입니다. System에 있는 sockets 수를 노출합니다. |
| /sys/devices/hv_24x7/interface/chipspersocket | 2020년 5월 / Linux on PowerPC Developer List <[email protected]> | Read-only입니다. System에 있는 socket당 chips 수를 노출합니다. |
| /sys/devices/hv_24x7/interface/coresperchip | 2020년 5월 / Linux on PowerPC Developer List <[email protected]> | Read-only입니다. System에 있는 chip당 cores 수를 노출합니다. |
| /sys/devices/hv_24x7/cpumask | 2020년 7월 / Linux on PowerPC Developer List <[email protected]> | Read-only입니다. hv-24x7 PMU event counter data를 가져오는 HCALLs를 수행하도록 지정된 cpumask를 노출합니다. |
Topology counts가 socket·chip·core 계층을 나타내고 지정된 CPUs가 hypervisor HCALL로 counters를 가져옵니다.
Firmware-provided event descriptions
78-98| What | Date / Contact | 전문 번역 |
|---|---|---|
| /sys/bus/event_source/devices/hv_24x7/event_descs/<event-name> | 2014년 2월 / Linux on PowerPC Developer List <[email protected]> | Firmware가 제공하는 특정 event description을 제공합니다. Firmware가 description을 제공하지 않으면 file을 만들지 않습니다. Event-name에는 events/ directory의 events에 붙는 domain suffix가 없습니다. |
| /sys/bus/event_source/devices/hv_24x7/event_long_descs/<event-name> | 2014년 2월 / Linux on PowerPC Developer List <[email protected]> | Firmware가 제공하는 특정 event의 long description을 제공합니다. Firmware가 description을 제공하지 않으면 file을 만들지 않습니다. Event-name에는 events/ directory의 events에 붙는 domain suffix가 없습니다. |
hv_24x7 event format
sysfs-bus-event_source-devices-hv_24x7:1-24format group은 domain·lpar·chip/core/vcpu·offset fields를 perf_event_attr.config bit ranges에 mapping하고 ? parameter를 userspace value로 받습니다.