요약·해설, 영어 원문, 전체 번역을 구분해 실었습니다. API 이름, 코드 심벌, 소스 경로는 원문 표기를 유지합니다.
1. 요약·해설
원문의 핵심 내용을 정리하고 커널 프로그래밍에 필요한 설명을 덧붙였습니다. 아래의 전체 번역과는 별도로 작성한 해설입니다.
2. 영어 원문 전체
번역에 사용한 Linux v6.18.37 원문입니다. 줄 번호는 해당 버전의 소스 파일을 기준으로 합니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GPL-2.0+
=========================
drm/Panfrost Mali Driver
=========================
.. _panfrost-usage-stats:
Panfrost DRM client usage stats implementation
==============================================
The drm/Panfrost driver implements the DRM client usage stats specification as
documented in :ref:`drm-client-usage-stats`.
Example of the output showing the implemented key value pairs and entirety of
the currently possible format options:
::
pos: 0
flags: 02400002
mnt_id: 27
ino: 531
drm-driver: panfrost
drm-client-id: 14
drm-engine-fragment: 1846584880 ns
drm-cycles-fragment: 1424359409
drm-maxfreq-fragment: 799999987 Hz
drm-curfreq-fragment: 799999987 Hz
drm-engine-vertex-tiler: 71932239 ns
drm-cycles-vertex-tiler: 52617357
drm-maxfreq-vertex-tiler: 799999987 Hz
drm-curfreq-vertex-tiler: 799999987 Hz
drm-total-memory: 290 MiB
drm-shared-memory: 0 MiB
drm-active-memory: 226 MiB
drm-resident-memory: 36496 KiB
drm-purgeable-memory: 128 KiB
Possible `drm-engine-` key names are: `fragment`, and `vertex-tiler`.
`drm-curfreq-` values convey the current operating frequency for that engine.
Users must bear in mind that engine and cycle sampling are disabled by default,
because of power saving concerns. `fdinfo` users and benchmark applications which
query the fdinfo file must make sure to toggle the job profiling status of the
driver by writing into the appropriate sysfs node::
echo <N> > /sys/bus/platform/drivers/panfrost/[a-f0-9]*.gpu/profiling
Where `N` is either `0` or `1`, depending on the desired enablement status.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미에 맞춰 전체 내용을 번역했습니다. 코드, 함수명, 코드 심벌, URL은 원문 표기를 유지합니다.
Panfrost DRM client usage stats
1-13`drm/Panfrost` Mali driver는 `drm-client-usage-stats`에 문서화된 DRM client usage stats specification을 구현합니다. 원문 SPDX 라이선스는 `GPL-2.0+`이며 reference anchor는 `panfrost-usage-stats`입니다.
Client별 GPU·memory 사용량을 fdinfo로 노출합니다.
상위 usage stats 규격과 Panfrost 구현의 관계입니다.
.. SPDX-License-Identifier: GPL-2.0+
=========================
drm/Panfrost Mali Driver
=========================
.. _panfrost-usage-stats:
Panfrost DRM client usage stats implementation
==============================================
The drm/Panfrost driver implements the DRM client usage stats specification as
documented in :ref:`drm-client-usage-stats`.
Panfrost fdinfo key와 profiling
14-49예제 fdinfo는 file metadata인 `pos`, `flags`, `mnt_id`, `ino`와 DRM identity인 `drm-driver: panfrost`, `drm-client-id`를 보여 줍니다.
Engine key는 `fragment`와 `vertex-tiler`입니다. 각 engine에는 실행 시간 `drm-engine-*`(ns), cycle 수 `drm-cycles-*`, 최대·현재 주파수 `drm-maxfreq-*`·`drm-curfreq-*`(Hz)가 있습니다. `drm-curfreq-*`는 해당 engine의 현재 operating frequency를 나타냅니다.
Memory key는 `drm-total-memory`, `drm-shared-memory`, `drm-active-memory`, `drm-resident-memory`, `drm-purgeable-memory`이며 예제는 MiB·KiB 단위를 그대로 보여 줍니다.
전력 절감을 위해 engine·cycle sampling은 기본적으로 비활성화됩니다. fdinfo user와 benchmark는 `/sys/bus/platform/drivers/panfrost/[a-f0-9]*.gpu/profiling`에 `0` 또는 `1`을 써서 job profiling 상태를 명시적으로 껐다 켜야 합니다.
Engine·frequency·memory accounting field입니다.
Sampling을 켠 뒤 fdinfo를 읽습니다.
Example of the output showing the implemented key value pairs and entirety of
the currently possible format options:
::
pos: 0
flags: 02400002
mnt_id: 27
ino: 531
drm-driver: panfrost
drm-client-id: 14
drm-engine-fragment: 1846584880 ns
drm-cycles-fragment: 1424359409
drm-maxfreq-fragment: 799999987 Hz
drm-curfreq-fragment: 799999987 Hz
drm-engine-vertex-tiler: 71932239 ns
drm-cycles-vertex-tiler: 52617357
drm-maxfreq-vertex-tiler: 799999987 Hz
drm-curfreq-vertex-tiler: 799999987 Hz
drm-total-memory: 290 MiB
drm-shared-memory: 0 MiB
drm-active-memory: 226 MiB
drm-resident-memory: 36496 KiB
drm-purgeable-memory: 128 KiB
Possible `drm-engine-` key names are: `fragment`, and `vertex-tiler`.
`drm-curfreq-` values convey the current operating frequency for that engine.
Users must bear in mind that engine and cycle sampling are disabled by default,
because of power saving concerns. `fdinfo` users and benchmark applications which
query the fdinfo file must make sure to toggle the job profiling status of the
driver by writing into the appropriate sysfs node::
echo <N> > /sys/bus/platform/drivers/panfrost/[a-f0-9]*.gpu/profiling
Where `N` is either `0` or `1`, depending on the desired enablement status.
요약·해설
panfrost.rst:1-49Panfrost fdinfo engine·memory 통계와 profiling 제어를 설명합니다.
Source와 관련 개념입니다.