Input and Output Analysis
- Software data plane utilization.
- PCIe metrics:
- Per-device PCIe traffic metrics are available starting with server platforms based on Intel® microarchitecture code named Skylake. To collect per-device metrics, use one of the following options:
- Load the sampling driver
- Use Linux perf-based collection, available for Linux kernel versions 5.10 and newer
- Run the analysis with root privileges
- To collect Intel® DDIO utilization efficiency metrics, make sure that the sampling driver is loaded
- SPDK metrics:make sure SPDK is built using the--with-vtuneadvanced build option.
- Linux Kernel I/O:to collect these metrics,VTuneenables FTrace* collection that requires access toProfilerdebugfs. On some systems, this requires that you reconfigure your permissions for the script located in thebindirectory, or use root privileges.
Configure and Run Analysis
- LaunchVTuneand, optionally, create a new project.Profiler
- Click theConfigure Analysisbutton.
- In theWHEREpane, select the target system to profile.
- In theHOWpane, selectPlatform Analysis > Input and Output.
- In theWHATpane, specify your analysis target (application, process, or system).
- Depending on your target app and analysis purpose, choose any of the following configuration options:Analyze PCIe trafficcheck boxCollect the data required to:
This option is shown on server platforms based on Intel® microarchitecture code named Sandy Bridge EP and newer.Where applicable, this option is enabled by default.Locate MMIO accessescheck boxCollect the data required to locate code that induces outbound PCIe traffic by accessing device memory through the MMIO address space.This option is not available in Profile System mode.This option is enabled by default.Analyze memory and cross-socket bandwidthcheck boxCollect the data required to calculate DRAM and Intel® Ultra Path Interconnect (Intel® UPI) or Intel® QuickPath Interconnect (Intel® QPI) bandwidth.While DRAM bandwidth data is always collected, Intel® UPI and Intel® QPI cross-socket bandwidth data is only collected when applicable to the system.This option is enabled by default.Evaluate max DRAM bandwidthcheck boxEvaluate the maximum achievable local DRAM bandwidth before the collection starts.This data is used to scale bandwidth metrics on the timeline and to calculate thresholds.To reduce overhead, it is recommended to disable this option when profiling inAttach to Processmode.This option is enabled by default.Select API to profilecheck box groupSelect IO APIs to profile:
- Calculate inbound and outbound PCIe traffic
- Calculate L3 misses of inbound PCIe requests
- Calculate average inbound PCIe read and write latency
- Detect core/IO conflicts
All options are disabled by default.SPDK and Linux kernel I/O metrics cannot be collected simultaneously.
- To profile DPDK applications, select theDPDKcheckbox.
- To profile SPDK applications, select theSPDKcheckbox.
- To profile Linux kernel I/O, select theKernel IOcheckbox.
- ClickStartto run the analysis.
vtune -collect io [-knob <value>] -- <target> [target_options]