memo:memo1

文書の過去の版を表示しています。


memo1

pacman -S base-devel pacman -S mingw-w64-x86_64-toolchain pacman -S cmake

/mingw64/bin/cmake .. -G“MSYS Makefiles” -DPA_USE_WMME=1 -DPA_USE_WASAPI=1 -DPA_USE_DS=1 -DPA_USE_WDMKS=1 -DMINGW=1 -DCMAKE_INSTALL_PREFIX=/mingw64 make -j8 make install

pacman -S mingw-w64-x86_64-qt5

mingw-w64-x86_64-qt5 の提案パッケージ

  mingw-w64-x86_64-clang
  mingw-w64-x86_64-libmariadbclient
  mingw-w64-x86_64-firebird2
  mingw-w64-x86_64-postgresql

pacman -S mingw-w64-x86_64-qt-creator

mingw-w64-x86_64-qt-creator の提案パッケージ

  mingw-w64-x86_64-gdb: for the debugger
  mingw-w64-x86_64-cmake: for cmake project support
  mingw-w64-x86_64-clang: for clang code model

pacman -S git

git clone https://github.com/zaps166/QMPlay2.git git submodule update –init

$ /mingw64/bin/cmake .. -DCMAKE_INSTALL_PREFIX=../install -G“MSYS Makefiles” – Checking for module 'portaudio-2.0' – Found portaudio-2.0, version 19 – Enabled features: * Updates, Build with software updates * OpenGL, Build with OpenGL support * Vulkan, Build with Vulkan support * Freedesktop notifications, Use Freedesktop notifications * D-Bus suspend, Use D-Bus suspend * libass, Build with libass support * Inputs, Build with Inputs module * Modplug, Build with Modplug module * Extensions, Build with Extensions module * MediaBrowser, Build with MediaBrowser support * LastFM, Build with LastFM support * Lyrics, Build with lyrics support * Radio, Build with Radio Browser support * YouTube, Build with YouTube support * MPRIS2, Build Extensions with MPRIS2 support * Visualizations, Build with Visualizations module * AudioFilters, Build with AudioFilters module * VideoFilters, Build with VideoFilters module * PortAudio, Build with PortAudio module * CUVID, Build with CUVID module * Notifications, Build additional notifications module * Git version, Append Git HEAD to QMPlay2 version

– Disabled features: * PCH, Use precompiled headers * GLSLC, Compile Vulkan shaders * TagLib, Build with tags editor * VAAPI, Build VAAPI acceleration into FFmpeg * VDPAU, Build VDPAU acceleration into FFmpeg * libavdevice, Build FFmpeg with libavdevice suport * AudioCD, Build with AudioCD module * ALSA, Build with ALSA module * Chiptune GME, Build Chiptune with GME support * Chiptune SIDPLAY, Build Chiptune with SIDPLAY support * PulseAudio, Build with PulseAudio module * PipeWire, Build with PipeWire module * XVideo, Build with XVideo module * Link Time Optimization, Enable link time optimization for release builds * Address Sanitizer, Use Address Sanitizer * Undefined Behavior Sanitizer, Use Undefined Behavior Sanitizer * SolidActions, Install Solid actions

– Build type: Release – Configuring done – Generating done – Build files have been written to: /home/Decomo/proj/QMPlay2/build

x86_energy_perf_policyのmanの翻訳

x86_energy_perf_policy - x86モデル固有レジスタを通じたエネルギー対性能ポリシーの管理

x86_energy_perf_policy [ options ] [ scope ] [field value] scope: –cpu cpu-list | –pkg pkg-list cpu-list, pkg-list: # | #,# | #-# | all field: –all | –epb | –hwp-epp | –hwp-min | –hwp-max | –hwp-desired other: (–force | –hwp-enable | –turbo-enable) value) value: # | default | performance | balance-performance | balance-power | power

x86_energy_perf_policyはIntelアーキテクチャプロセッサ固有のエネルギー性能ポリシー設定の表示と更新を行います。Linuxのcpufreqサブシステムの有効・無効を問わず、設定はモデル固有レジスタ(MSR)の更新を通して読み書きされます。

MSR_IA32_ENERGY_PERF_BIAS (EPB)のポリシーは、ハードウェアがどれくらい積極的にCPU待機ステート(C-State)とプロセッサ性能ステート(P-State)を行き来するかといった、広範なハードウェア裁定に影響する可能性があります。このポリシーヒントはOSの明確なC-State, P-Stateの選択を置き換えません。正確に言えば、ヒントはこれら選択の実行をどの程度積極的に行うかをハードウェアに伝えます。 Further, it allows the OS to influence energy/performance trade-offs where there is no software interface, such as in the opportunistic “turbo-mode” P-state range. 留意点としてMSR_IA32_ENERGY_PERF_BIASはCPU毎に定義されますが、いくつかの実装は1つのMSRを各プロセッサパッケージ内の全CPU間で共有します。こうしたシステムでは、1つのプロセッサのEPBへの書き込みがあると、それは同一プロセッサパッケージの全CPUに影響を及ぼすでしょう。

Hardware P-States (HWP)はHardware P-States (HWP) are effectively an expansion of hardware P-state control from the opportunistic turbo-mode P-state range to include the entire range of available P-states. Broadwell XeonのHWPの初期実装では、EPBがHWPに作用します。 この作用は後続世代では削除され、2つの専用MSR、MSR_IA32_HWP_REQUESTとMSR_IA32_HWP_REQUEST_PKG内のEnergy_Performance_Preference (EPP)フィールドに移されました。

EPPはHWPモードの最も一般的な制御弁ですが、MSR_IA32_HWP_REQUESTはQoSのための最小周波数の指定、および消費電力上限のための最大周波数の指定をユーザーに許可します。 MSR_IA32_HWP_REQUESTはCPU毎に定義されます。

MSR_IA32_HWP_REQUEST_PKGはMSR_IA32_HWP_REQUESTと同一の能力を持ちますが、パッケージ内の全CPUに対しデフォルトポリシーを同時に設定可能です。 A bit in per-CPU MSR_IA32_HWP_REQUEST indicates whether it is over-ruled-by or exempt-from MSR_IA32_HWP_REQUEST_PKG.

MSR_HWP_CAPABILITIESはMSR_IA32_HWP_REQUESTフィールドのデフォルト値を示します。 It is displayed when no values are being written.

SCOPE OPTIONS

-c, –cpu
CPUリストの各CPUに対しMSR_IA32_HWP_REQUESTを操作します。CPUリストはコンマ区切りの番号で、ダッシュでレンジ指定や文字列“all”を指定できます。例:'–cpu 1,4,6-8'や'–cpu all'。–cpuを使った場合、–hwp-use-pkgが利用可能となり、When –cpu is used, –hwp-use-pkg is available, which specifies whether the per-cpu MSR_IA32_HWP_REQUEST should be over-ruled by MSR_IA32_HWP_REQUEST_PKG (1), or exempt from MSR_IA32_HWP_REQUEST_PKG (0).
-p, –pkg

-p, –pkg Operate on the MSR_IA32_HWP_REQUEST_PKG for each package in the package-list. The list is a string of individual package numbers separated by commas, and or ranges of package numbers separated by a dash, or the string “all”. For example '–pkg 1,3' or '–pkg all'

VALUE OPTIONS

normal または default
性能とエネルギー効率が一般的なバランスのポリシーに設定します。プロセッサは、重大なエネルギー節約の潜在的な可能性に対し、いささかの性能妥協を容認します。これは大半のデスクトップやサーバマシンにとって合理的な初期設定です。“default”は“normal”の同義語です。
performance
最大性能ポリシーに設定します。エネルギー効率上の恩恵に対し、一切の性能上の犠牲を受け入れません。
balance-performance
性能優先ポリシーに設定します。性能を重視しますが、エネルギー効率の恩恵を受けるために、いくつかの性能ロスを許します。
balance-power
性能と電力がバランスしたポリシーに設定します。これがデフォルト設定です。
power
最大エネルギー効率ポリシーに設定します。エネルギー効率最大化のため、プロセッサは目に見える性能上のインパクトを受け入れます。

下表は上記設定値と実際のMSRの値の対応表です。このマッピングはLinuxカーネルのヘッダmsr-index.hで定義されています。

設定値 EPB EPP
performance 0 0
balance-performance 4 128
normal, default 6 128
balance-power 8 192
power 15 255

MSR_IA32_HWP_REQUEST性能フィールド(–hwp-min, –hwp-max, –hwp-desired)について、その値の単位は100MHzとなり、例えば12は1200MHzを示します。

FIELD OPTIONS

-a, –all 値文字列
値文字列に対応する値で、すべてのEPBとEPP、およびHWPリミットフィールドを設定します。加えて、ターボモードとHWPモードが無効化されていた場合、有効にします。Thus “–all normal” will set a system without cpufreq into a well known configuration.
-B, -epb
コア単位またはパッケージ単位でEPBを設定します。前述の表の値文字列をご覧ください。
-d, –debug
デバッグ情報の冗長度を増やします。By default x86_energy_perf_policy is silent for updates, and verbose for read-only mode.
-P, –hwp-epp
コア単位またはパッケージ単位でHWP.EPPを設定しいます。前述の表の値文字列をご覧ください。
-m, –hwp-min
request HWP to not go below the specified core/bus ratio. The “default” is the value found in IA32_HWP_CAPABILITIES.min.
-M, –hwp-max
request HWP not exceed a the specified core/bus ratio. The “default” is the value found in IA32_HWP_CAPABILITIES.max.
-D, –hwp-desired
request HWP 'desired' frequency. The “normal” setting is 0, which corresponds to 'full autonomous' HWP control. Non-zero performance values request a specific performance level on this processor, specified in multiples of 100 MHz.
-w, –hwp-window
specify integer number of microsec in the sliding window that HWP uses to maintain average frequency. This parameter is meaningful only when the “desired” field above is non-zero. Default is 0, allowing the HW to choose.

OTHER OPTIONS

-f, –force writes the specified values without bounds checking.

-U, –hwp-use-pkg (0 | 1), when used in conjunction with –cpu, indicates whether the per-CPU MSR_IA32_HWP_REQUEST should be overruled (1) or exempt (0) from per-Package MSR_IA32_HWP_REQUEST_PKG settings. The default is exempt.

-H, –hwp-enable enable HardWare-P-state (HWP) mode. Once enabled, system RESET is required to disable HWP mode.

-t, –turbo-enable enable (1) or disable (0) turbo mode.

-v, –version print version and exit.

If no request to change policy is made, the default behavior is to read and display the current system state, including the default capabilities.

WARNING

本ユーティリティはモデル固有レジスタを直接書き換えます。 There is no locking or coordination should this utility be used to modify HWP limit fields at the same time that intel_pstate's sysfs attributes access the same MSRs.

Note that –hwp-desired and –hwp-window are considered experimental. Future versions of Linux reserve the right to access these fields internally – potentially conflicting with user-space access.

EXAMPLE

# sudo x86_energy_perf_policy cpu0: EPB 6 cpu0: HWP_REQ: min 6 max 35 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0 cpu0: HWP_CAP: low 1 eff 8 guar 27 high 35 cpu1: EPB 6 cpu1: HWP_REQ: min 6 max 35 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0 cpu1: HWP_CAP: low 1 eff 8 guar 27 high 35 cpu2: EPB 6 cpu2: HWP_REQ: min 6 max 35 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0 cpu2: HWP_CAP: low 1 eff 8 guar 27 high 35 cpu3: EPB 6 cpu3: HWP_REQ: min 6 max 35 des 0 epp 128 window 0x0 (0*10^0us) use_pkg 0 cpu3: HWP_CAP: low 1 eff 8 guar 27 high 35

NOTES

x86_energy_perf_policy runs only as root. FILES

/dev/cpu/*/msr

SEE ALSO

msr(4) Intel(R) 64 and IA-32 Architectures Software Developer's Manual

AUTHORS

Len Brown

  • memo/memo1.1641999334.txt.gz
  • 最終更新: 2022-01-12 23:55
  • by Decomo