Skip to content

Commit 711486f

Browse files
aubreyliKAGA-KOKO
authored andcommitted
Documentation/filesystems/proc.txt: Add arch_status file
Add documentation for /proc/<pid>/arch_status file and the x86 specific AVX512_elapsed_ms entry in it. [ tglx: Massage changelog ] Signed-off-by: Aubrey Li <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: [email protected] Cc: Andy Lutomirski <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Andi Kleen <[email protected]> Cc: Tim Chen <[email protected]> Cc: Dave Hansen <[email protected]> Cc: Arjan van de Ven <[email protected]> Cc: Alexey Dobriyan <[email protected]> Cc: Andrew Morton <[email protected]> Cc: Linux API <[email protected]> Link: https://lkml.kernel.org/r/[email protected]
1 parent 0c608da commit 711486f

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

Documentation/filesystems/proc.txt

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ Table of Contents
4545
3.9 /proc/<pid>/map_files - Information about memory mapped files
4646
3.10 /proc/<pid>/timerslack_ns - Task timerslack value
4747
3.11 /proc/<pid>/patch_state - Livepatch patch operation state
48+
3.12 /proc/<pid>/arch_status - Task architecture specific information
4849

4950
4 Configuring procfs
5051
4.1 Mount options
@@ -1948,6 +1949,45 @@ patched. If the patch is being enabled, then the task has already been
19481949
patched. If the patch is being disabled, then the task hasn't been
19491950
unpatched yet.
19501951

1952+
3.12 /proc/<pid>/arch_status - task architecture specific status
1953+
-------------------------------------------------------------------
1954+
When CONFIG_PROC_PID_ARCH_STATUS is enabled, this file displays the
1955+
architecture specific status of the task.
1956+
1957+
Example
1958+
-------
1959+
$ cat /proc/6753/arch_status
1960+
AVX512_elapsed_ms: 8
1961+
1962+
Description
1963+
-----------
1964+
1965+
x86 specific entries:
1966+
---------------------
1967+
AVX512_elapsed_ms:
1968+
------------------
1969+
If AVX512 is supported on the machine, this entry shows the milliseconds
1970+
elapsed since the last time AVX512 usage was recorded. The recording
1971+
happens on a best effort basis when a task is scheduled out. This means
1972+
that the value depends on two factors:
1973+
1974+
1) The time which the task spent on the CPU without being scheduled
1975+
out. With CPU isolation and a single runnable task this can take
1976+
several seconds.
1977+
1978+
2) The time since the task was scheduled out last. Depending on the
1979+
reason for being scheduled out (time slice exhausted, syscall ...)
1980+
this can be arbitrary long time.
1981+
1982+
As a consequence the value cannot be considered precise and authoritative
1983+
information. The application which uses this information has to be aware
1984+
of the overall scenario on the system in order to determine whether a
1985+
task is a real AVX512 user or not. Precise information can be obtained
1986+
with performance counters.
1987+
1988+
A special value of '-1' indicates that no AVX512 usage was recorded, thus
1989+
the task is unlikely an AVX512 user, but depends on the workload and the
1990+
scheduling scenario, it also could be a false negative mentioned above.
19511991

19521992
------------------------------------------------------------------------------
19531993
Configuring procfs

0 commit comments

Comments
 (0)