User Tools

Site Tools


nfv-kvm-tuning

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
nfv-kvm-tuning [2016/01/04 06:09]
Chao Peng [Performance/Latency Tuning]
nfv-kvm-tuning [2016/01/04 06:37]
Chao Peng [Platform Configuration]
Line 3: Line 3:
 ====== Base Platform and Environment ====== ====== Base Platform and Environment ======
  
-  * Hardware: Latest Intel Server Platform ​is the major tuning target platform.+  * Hardware: Latest Intel Server Platform.
   * Software: Based on Real-Time Linux https://​rt.wiki.kernel.org/​index.php/​Main_Page.   * Software: Based on Real-Time Linux https://​rt.wiki.kernel.org/​index.php/​Main_Page.
  
-Please refer to [[nfv-kvm-test|kvmfornfv test page]] for details.+Please refer to [[nfv-kvm-test|kvmfornfv test]] for details.
  
 ====== Configuration ====== ====== Configuration ======
  
-A right configuration is critical for improving the NFV performance/​latency. Even on the same codebase, different configrations can make completely different performance/​latency result.+A right configuration is critical for improving the NFV performance/​latency. Even working ​on the same codebase, different configrations can make completely different performance/​latency result.
  
 There are many combinations of configurations,​ from hardware configuration to Operating System configuration and application level configuration. And there is no one simple configuration that works for every case. To tune a specific scenario, it's important to know the behaviors of different configurations and their impact. There are many combinations of configurations,​ from hardware configuration to Operating System configuration and application level configuration. And there is no one simple configuration that works for every case. To tune a specific scenario, it's important to know the behaviors of different configurations and their impact.
 ===== Platform Configuration ===== ===== Platform Configuration =====
  
-Some hardware features can be configured through firmware interface(e.g. BIOS) but others may not be configurable (e.g. SMI on most platforms).+Some hardware features can be configured through firmware interface(like BIOS) but others may not be configurable (e.g. SMI on most platforms).
  
   * __Power management__:​ Most power management related features save power on the expensive of latency. These features includes: Intel®Turbo Boost Technology, Enhanced Intel®SpeedStep,​ Processor C state and P state.Normarlly they should be disabled. But depending on the real-time application design and latency requirements,​there might be some featues can be enabled if the impact on deterministic execution of workload is small. ​   * __Power management__:​ Most power management related features save power on the expensive of latency. These features includes: Intel®Turbo Boost Technology, Enhanced Intel®SpeedStep,​ Processor C state and P state.Normarlly they should be disabled. But depending on the real-time application design and latency requirements,​there might be some featues can be enabled if the impact on deterministic execution of workload is small. ​
 +
   * __Hyper-Threading__:​ The logic cores that share resource with other logic cores can introduce latency so the feature is recommended to disable for realtime case.   * __Hyper-Threading__:​ The logic cores that share resource with other logic cores can introduce latency so the feature is recommended to disable for realtime case.
 +
   * __Legacy USB Support/​Port 60/64 Emulation__:​ These features involve some emulation in firmware and can introduce randome latency. It is recommended to disable.   * __Legacy USB Support/​Port 60/64 Emulation__:​ These features involve some emulation in firmware and can introduce randome latency. It is recommended to disable.
 +
 +  * __SMI__: System Management Interrupt runs outside of the kernel code and can potentially cause latency. It is a pity there is no simple way to disable it. Some vendors may provide related switches in BIOS but most machines would not have.
  
 ===== Operating System Configuration ===== ===== Operating System Configuration =====
nfv-kvm-tuning.txt · Last modified: 2016/01/13 22:46 by Jiang, Yunhong