技术与生活 性能之重 持久内存编程指南—乱译连载 (22.附录C.LINUX/WIN上安装IPMCTL)

持久内存编程指南—乱译连载 (22.附录C.LINUX/WIN上安装IPMCTL)

ipmctl实用程序用于配置和管理Intel Optane DC永久内存模块(DCPMM)。这是一个供应商专用的实用程序,可用于Linux和Windows。

22  附录C、在LINUX/WIN上安装IPMCTL

ipmctl实用程序用于配置和管理Intel Optane DC永久内存模块(DCPMM)。这是一个供应商专用的实用程序,可用于Linux和Windows。它支持以下功能:

  • 在平台上发现DCPMM;
  • 提供平台内存配置;
  • 查看和更新DCPMMs上的固件;
  • 在DCPMMs上配置静态数据安全;
  • 监测DCPMM的健康状况;
  • DCPMMs的跟踪性能;
  • 调试和排除DCPMM问题。

ipmctl引用以下接口组件:

  • libipmctl:用于管理PMMs的应用程序编程接口(API)库;
  • ipmctl:用于配置和管理PMMs的命令行界面(CLI)应用程序;
  • ipmctl monitor:监控PMMs健康状况和状态的监控守护程序/系统服务。

22.1  IPMCTL Linux先决条件

ipmctl需要依赖libsafec。

22.1.1 libsafec

libsafec作为包在Fedora包存储库中可用。对于其他Linux发行版,它可以作为单独的可下载包在本地安装:

作为替代方案,可以从源代码编译ipmctl,使用-DSAFECLIB_SRC_ DOWNLOAD_AND_STATIC_LINK=ON 选项下载源代码并静态链接到safeclib。

22.2  IPMCTL Linux 包

作为一个供应商专用的实用程序,它不包括在除Fedora之外的大多数Linux发行包存储库中。EPEL7软件包可以在https://copr.fedorainfracloud.org/coprs/jhli/ipmctl.  OpenSUSE和SLES包在https://build.opensuse.org/package/show/home:jhli/ipmctl。

22.3  微软Windows上的IPMCTL

ipmctl的最新Windows EXE二进制文件可以从GitHub项目页面的“Releases”部分下载(https://github.com/intel/ipmctl/releases)如图C-1所示。

运行可执行文件将安装ipmctl并通过命令行和PowerShell接口使其可用。

22.4  使用ipmctl

ipmctl实用程序为系统管理员提供了配置Intel Optane DC持久内存模块的能力,然后Windows PowerShellCmdlet或Linux上的ndctl可以使用这些模块创建可以在其上创建文件系统的命名空间。然后,应用程序可以创建持久性内存池并映射它们以直接访问持久性内存。还可以提取有关模块的详细信息,以帮助处理错误或调试。

ipmctl有一组丰富的命令和选项,可以在不使用任何命令谓词的情况下运行ipmctl来显示这些命令和选项,如清单C-1所示。

Listing C-1. Listing the command verbs and simple usage information
# ipmctl version
Intel(R) Optane(TM) DC Persistent Memory Command Line Interface Version 01.00.00.3279
# ipmctl
Intel(R) Optane(TM) DC Persistent Memory Command Line Interface
    Usage: ipmctl <verb>[<options>][<targets>][<properties>]
Commands:
    Display the CLI help.
    help

    Display the CLI version.
    version

    Update the firmware on one or more DIMMs
    load -source (File Source) -dimm[(DimmIDs)]

    Set properties of one/more DIMMs such as device security and modify device.
    set -dimm[(DimmIDs)]

    Erase persistent data on one or more DIMMs.
    delete -dimm[(DimmIDs)]

    Show information about one or more Regions.
    show -region[(RegionIDs)] -socket(SocketIDs)

    Provision capacity on one or more DIMMs into regions
    create -dimm[(DimmIDs)] -goal -socket(SocketIDs)

    Show region configuration goal stored on one or more DIMMs
    show -dimm[(DimmIDs)] -goal -socket[(SocketIDs)]

    Delete the region configuration goal from one or more DIMMs
    delete -dimm[(DimmIDs)] -goal -socket(SocketIDs)

Load stored configuration goal for specific DIMMs
    load -source (File Source) -dimm[(DimmIDs)] -goal -socket(SocketIDs)

    Store the region configuration goal from one or more DIMMs to a file
    dump -destination (file destination) -system -config

    Modify the alarm threshold(s) for one or more DIMMs.
    set -sensor(List of Sensors) -dimm[(DimmIDs)]

    Starts a playback or record session
    start -session -mode -tag

    Stops the active playback or recording session.
    stop -session

    Dump the PBR session buffer to a file
    dump -destination (file destination) -session

    Show basic information about session pbr file
    show -session

    Load Recording into memory
    load -source (File Source) -session

    Clear the namespace LSA partition on one or more DIMMs
    delete -dimm[(DimmIDs)] -pcd[(Config)]

    Show error log for given DIMM
    show -error(Thermal|Media) -dimm[(DimmIDs)]

    Dump firmware debug log
    dump -destination (file destination) -debug -dimm[(DimmIDs)]

    Show information about one or more DIMMs.
    show -dimm[(DimmIDs)] -socket[(SocketIDs)]

    Show basic information about the physical  processors in the host server.    
show -socket[(SocketIDs)]
    
Show health statistics
show -sensor[(List of Sensors)] -dimm[(DimmIDs)]

Run a diagnostic test on one or more DIMMs
    start -diagnostic[(Quick|Config|Security|FW)] -dimm[(DimmIDs)]

    Show the topology of the DCPMMs installed in the host server
    show -topology -dimm[(DimmIDs)] -socket[(SocketIDs)]

    Show information about total DIMM resource allocation.
    show -memoryresources

    Show information about BIOS memory management capabilities.
    show -system -capabilities

    Show information about firmware on one or more DIMMs.
    show -dimm[(DimmIDs)] -firmware

    Show the ACPI tables related to the DIMMs in the system.
    show -system[(NFIT|PCAT|PMTT)]

    Show pool configuration goal stored on one or more DIMMs
    show -dimm[(DimmIDs)] -pcd[(Config|LSA)]

    Show user preferences and their current values
    show -preferences

    Set user preferences
    set -preferences

    Show Command Access Policy Restrictions for DIMM(s).
    show -dimm[(DimmIDs)] -cap

    Show basic information about the host server.
    show -system -host

    Show event stored on one in the system log
    show -event -dimm[(DimmIDs)]

    Set event's action required flag on/off
    set -event(EventID)  ActionRequired=(0)

    Capture a snapshot of the system state for support purposes
    dump -destination (file destination) -support

Show performance statistics per DIMM
    show -dimm[(DimmIDs)] -performance[(Performance Metrics)]

Please see ipmctl <verb> -help <command> i.e ‘ipmctl show -help -dimm’ for more information on specific command。

每个命令都有自己的手册页。通过运行“man IPMCTL”,可以从IPMCTL(1)手册页中找到手册页的完整列表。

在线ipmctl用户指南在https://docs.pmem.io。本指南提供了有关ipmctl以及如何使用它来设置和调试问题的详细分步说明和深入信息。ipmctl快速入门指南位于https://software.intel.com/en-us/articles/quick-start-guide-configureintel-optane-dc-persistent-memory-on-linux

对于使用ipmctl和ndctl的简短视频演示,您可以观看“Provision Intel Optane DC Persistent Memory in Linux”的网络研讨会视频(https://software.intel.com/en-us/videos/provisioning-intel-optane-dc-persistentmemory-modules-in-linux)。

如果您有关于ipmctl、Intel Optane DC persistent memory或一般persistent memory的问题,可以在persistent memory Google论坛中提出(https://groups.google.com/forum/#!forum/pmem)。特定于ipmctl的Questions或issues应发布到ipmctl GitHub问题站点(https://github.com/intel/ipmctl/issues).

作者: charlie_chen

编程是一生最爱: >> 架构与设计; >> 软件工程; >> 项目管理; >> 产品研发。
联系我们

联系我们

022-XXXXXXXX

在线咨询: QQ交谈

邮箱: 1549889473@qq.com

欢迎交流。
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部