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

NAME

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

SYNOPSIS

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

DESCRIPTION

x86_energy_perf_policyはIntelアーキテクチャプロセッサ固有のエネルギー性能ポリシー設定の表示と更新を行います。 Settings are accessed via Model Specific Register (MSR) updates, no matter if the Linux cpufreq sub-system is enabled or not.

MSR_IA32_ENERGY_PERF_BIAS (EPB)のポリシーは、ハードウェアがどれくらい積極的にCPU待機ステート(C-State)とプロセッサ性能ステート(P-State)を行き来するかといった、広範なハードウェア裁定に影響する可能性があります。 このポリシーヒントはOSの明確なC-State, P-Stateの選択を置き換えません。 正確に言えば、ヒントはこれら選択の実行をどの程度積極的に行うかをハードウェアに伝えます。 さらに、

Policy in MSR_IA32_ENERGY_PERF_BIAS (EPB) may affect a wide range of hardware decisions, such as how aggressively the hardware enters and exits CPU idle states (C-states) and Processor Performance States (P-states). This policy hint does not replace explicit OS C-state and P-state selection. Rather, it tells the hardware how aggressively to implement those selections. 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. Note that MSR_IA32_ENERGY_PERF_BIAS is defined per CPU, but some implementations share a single MSR among all CPUs in each processor package. On those systems, a write to EPB on one processor will be visible, and will have an effect, on all CPUs in the same processor package.

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. On Broadwell Xeon, the initial HWP implementation, EPB influenced HWP. That influence was removed in subsequent generations, where it was moved to the Energy_Performance_Preference (EPP) field in a pair of dedicated MSRs – MSR_IA32_HWP_REQUEST and MSR_IA32_HWP_REQUEST_PKG.

EPP is the most commonly managed knob in HWP mode, but MSR_IA32_HWP_REQUEST also allows the user to specify minimum-frequency for Quality-of-Service, and maximum-frequency for power-capping. MSR_IA32_HWP_REQUEST is defined per-CPU.

MSR_IA32_HWP_REQUEST_PKG has the same capability as MSR_IA32_HWP_REQUEST, but it can simultaneously set the default policy for all CPUs within a package. 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 shows the default values for the fields in MSR_IA32_HWP_REQUEST. It is displayed when no values are being written.

SCOPE OPTIONS

-c, –cpu Operate on the MSR_IA32_HWP_REQUEST for each CPU in a CPU-list. The CPU-list may be comma-separated CPU numbers, with dash for range or the string “all”. Eg. '–cpu 1,4,6-8' or '–cpu all'. 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 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 Set a policy with a normal balance between performance and energy efficiency. The processor will tolerate minor performance compromise for potentially significant energy savings. This is a reasonable default for most desktops and servers. “default” is a synonym for “normal”.

performance Set a policy for maximum performance, accepting no performance sacrifice for the benefit of energy efficiency.

balance-performance Set a policy with a high priority on performance, but allowing some performance loss to benefit energy efficiency.

balance-power Set a policy where the performance and power are balanced. This is the default.

power Set a policy where the processor can accept a measurable performance impact to maximize energy efficiency.

The following table shows the mapping from the value strings above to actual MSR values. This mapping is defined in the Linux-kernel header, msr-index.h.

VALUE STRING EPB EPP performance 0 0 balance-performance 4 128 normal, default 6 128 balance-power 8 192 power 15 255

For MSR_IA32_HWP_REQUEST performance fields (–hwp-min, –hwp-max, –hwp-desired), the value option is in units of 100 MHz, Eg. 12 signifies 1200 MHz.

FIELD OPTIONS

-a, –all value-string Sets all EPB and EPP and HWP limit fields to the value associated with the value-string. In addition, enables turbo-mode and HWP-mode, if they were previous disabled. Thus “–all normal” will set a system without cpufreq into a well known configuration.

-B, –epb set EPB per-core or per-package. See value strings in the table above.

-d, –debug debug increases verbosity. By default x86_energy_perf_policy is silent for updates, and verbose for read-only mode.

-P, –hwp-epp set HWP.EPP per-core or per-package. See value strings in the table above.

-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

This utility writes directly to Model Specific Registers. 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.1641944818.txt.gz
  • 最終更新: 2022-01-12 08:46
  • by Decomo