Show Table of Contents Hide Table of Contents English 日本語 English Multi-page HTML Single-page HTML PDF ePub Virtualization Tuning and Optimization Guide1. Introduction1.1. About This Guide1.2. KVM Performance Architecture Overview1.3. Performance Features and Improvements2. Performance Monitoring Tools2.1. Introduction2.2. perf kvm3. Optimizing Virtualization Performance with virt-manager3.1. Introduction3.2. Operating System Details and Devices3.2.1. Specifying Guest Virtual Machine Details3.2.2. Remove Unused Devices3.3. CPU Performance Options3.3.1. Option: Available CPUs3.3.2. Option: CPU Configuration3.3.3. Option: CPU Topology3.3.4. Option: CPU Pinning3.4. Virtual Disk Performance Options4. tuned4.1. Introduction4.2. tuned and tuned-adm5. Networking5.1. Introduction5.2. Network Tuning Tips5.3. Virtio and vhost_net5.4. Device Assignment and SR-IOV6. I/O Scheduling6.1. I/O Scheduling6.2. I/O Scheduling with Red Hat Enterprise Linux as a Virtualization Host6.3. I/O Scheduling with Red Hat Enterprise Linux as a Virtualization Guest6.4. Configuring the I/O Scheduler6.4.1. Configuring the I/O Scheduler for Red Hat Enterprise Linux 5 and 66.4.2. Configuring the I/O Scheduler for Red Hat Enterprise Linux 77. Block I/O7.1. Introduction7.2. Block I/O Tuning7.3. Caching7.4. I/O Mode8. Memory8.1. Introduction8.2. Memory Tuning Tips8.3. Memory Tuning on Virtual Machines8.3.1. Memory Monitoring Tools8.3.2. Memory Tuning with virsh8.3.3. Huge Pages and Transparent Huge Pages (THP)8.4. Kernel Same-page Merging (KSM)8.4.1. The KSM Service8.4.2. The KSM Tuning Service8.4.3. KSM Variables and Monitoring8.4.4. Deactivating KSM9. NUMA9.1. Introduction9.2. NUMA Memory Allocation Policies9.3. libvirt NUMA Tuning9.3.1. NUMA vCPU Pinning9.3.2. Domain Processes9.3.3. Domain vCPU Threads9.3.4. Using emulatorpin9.3.5. Tuning vCPU Pinning with virsh9.3.6. Tuning Domain Process CPU Pinning with virsh9.3.7. Tuning Domain Process Memory Policy with virsh9.4. NUMA-Aware Kernel SamePage Merging (KSM)A. Revision HistoryLegal Notice 3.3.3. Option: CPU Topology Use this option to apply a particular CPU topology (Sockets, Cores, Threads) to the virtual CPUs for your guest virtual machine. Refer to the following diagram which shows an example of this option: Figure 3.6. CPU Topology Options Note Although your environment may dictate other requirements, selecting any desired number of sockets, but with only a single core and a single thread usually gives the best performance results. 3.3.2. Option: CPU Configuration 3.3.4. Option: CPU Pinning Where did the comment section go?Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.