Intel 40G Card Controller Internals
Intel 40G Card Controller Internals
Intel 40G Card Controller Internals
Intel, Intel Core and the Intel logo are trademarks or registered trademarks of
Intel Corporation or its subsidiaries in the United States and other countries.
Disclaimers
By using this document, in addition to any agreements you have with Intel, you accept the terms set forth below.
You may not use or facilitate the use of this document in connection with any
infringement or other legal analysis concerning Intel products described herein. You agree to grant Intel a non-exclusive, royalty-free license to any patent claim
thereafter drafted which includes subject matter disclosed herein.
INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY
INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL
ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING
LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER
INTELLECTUAL PROPERTY RIGHT.
A "Mission Critical Application" is any application in which failure of the Intel Product could result, directly or indirectly, in personal injury or death. SHOULD YOU
PURCHASE OR USE INTEL'S PRODUCTS FOR ANY SUCH MISSION CRITICAL APPLICATION, YOU SHALL INDEMNIFY AND HOLD INTEL AND ITS SUBSIDIARIES,
SUBCONTRACTORS AND AFFILIATES, AND THE DIRECTORS, OFFICERS, AND EMPLOYEES OF EACH, HARMLESS AGAINST ALL CLAIMS COSTS, DAMAGES, AND EXPENSES
AND REASONABLE ATTORNEYS' FEES ARISING OUT OF, DIRECTLY OR INDIRECTLY, ANY CLAIM OF PRODUCT LIABILITY, PERSONAL INJURY, OR DEATH ARISING IN ANY
WAY OUT OF SUCH MISSION CRITICAL APPLICATION, WHETHER OR NOT INTEL OR ITS SUBCONTRACTOR WAS NEGLIGENT IN THE DESIGN, MANUFACTURE, OR
WARNING OF THE INTEL PRODUCT OR ANY OF ITS PARTS.
Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any
features or instructions marked "reserved" or "undefined". Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or
incompatibilities arising from future changes to them. The information here is subject to change without notice. Do not finalize a design with this information.
The products described in this document may contain design defects or errors known as errata which may cause the product to deviate from published specifications.
Current characterized errata are available on request.
Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800-548-4725, or go
to: http://www.intel.com/design/literature.htm
Optimization Notice
Intel's compilers may or may not optimize to the same degree for non-Intel
microprocessors for optimizations that are not unique to Intel microprocessors. These
optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations.
Intel does not guarantee the availability, functionality, or effectiveness of any
optimization on microprocessors not manufactured by Intel.
Microprocessor-dependent optimizations in this product are intended for use with
Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are
reserved for Intel microprocessors. Please refer to the applicable product User and
Reference Guides for more information regarding the specific instruction sets covered
by this notice.
Server Virtualization VMDq for Emulated path; SR-IOV for Direct Assignment
Network virtualization Overlay stateless offloads for VXLAN, NVGRE, VXLAN GRE
Intelligent load distribution for high performance traffic flows Flow Director
Virtual Bridging support that delivers control & management of virtual I/O
XL710 Internals
Helin
NIC Anatomy
Classification
12
Low Latency, High Quality Network + Simplified Core Switch => Cost Effective
Tunneling at Vswitch
Tunneling at NIC
VEPA XL710
NVGRE
VXLAN
NVGRE
Requirement
Reference
2Where the NIC should be plugged in? Use PCIe Gen3 slots, such as Gen3 x8 or Gen3
And Why?
x16
NUMA considerations
Make Sure each NIC has flashed the latest
version of NVM/firmware.
https://downloadcenter.intel.com/search?keyword=
NVM+Update+Utility+for+Intel%C2%AE+Ethernet+C
onverged+Network+Adapter+XL710+%26+X710+Seri
es
#Description
Requirement
5BIOS settings
6Linux System Essentials
7Huge Page
8Scheduler
Reference
BIOS Setting
Menu (Advanced)
CPU Configuration ->Advanced
Power Management
Configuration
-> CPU P State Control
-> CPU P State Control
-> CPU P State Control
-> CPU C State Control
-> CPU C State Control
-> CPU C State Control
-> CPU C State Control
-> CPU C State Control
Chipset Configuration
-> North Bridge -> QPI
Configuration
BIOS Setting
Required Setting
BIOS default
Disable
Disable
Disable
HW_ALL
Disable
Disable
Disable
[C6 (Retention)]
Disable
Custom
Enable
Enable
HW_ALL
Enable
Enable
Enable
[C6 (Retention)]
Enable
Isoc Mode
COD Enable
Disable
Disable
Disable
Auto
Early Snoop
Disable
Auto
Enforce POR
Disable
Auto
Memory Frequency
DRAM RAPL Baseline
2133
Disable
Auto
Auto
Disable
Enable
ASPM
Disable
Disable
Power Technology
ESIT (P-States)
Turbo Mode
P-State Coordination
Turbo Mode
CPU C3 Report
CPU C6 Report
Package C State Limit
Enhanced Halt State(C1E)
Requirement
Reference
Core 2
Queue 1
Core 1
Port
Queue 2
Use 2 Cores
System Configuration
24
25
Throughput - Bulk
Functional Performance
Measurement for
Communications:
Layer 3 Forwarding using
10GbE And 40GBE
* Other names and brands may be claimed as the property of
others.
Lynx point
4x 10GbE
Ports
E10/100
Ixia
Ixia* 10 Gigabit Ethernet Traffic
Generator
X710-DA4
adapter
XL710-DA2
adapter
40 GbE
ports
PCI-E Gen3 x8
Slot 0
Lynx point
PCI-E Gen3 x8
Slot 1
40GbE
Ports
10G/40G
Ixia
Ixia* 10/40 Gigabit Ethernet Traffic
Generator
XL710-DA2
adapter
DUT:
Software:
256 flows
256 flows
Socket 0
256 flows
10 Gigabit
Ethernet
X710
Slot 0
IA PLATFORM
(DEVICE UNDER TEST)
256 flows
Slot 0
Socket 0
256 flows
40 Gigabit
Ethernet
XL710
40 Gigabit
Ethernet
XL710
Slot 1
IA PLATFORM
(DEVICE UNDER TEST)
256 flows
0
1
2
3
https://software.intel.com/en-us/articles/profile-dpdk-code-with-intel-vtune-amplifier
DST 2016: v-ISG-Fortville: Explaining Fortville Features Enabled with DPDK Rel 16.04 Hash
and Flow Director Filters, Native MPLS (Virtual) Andrey Chilikin, Eoin Walsh.
CISCO White Paper January 2016 VXLAN Best Practices
Intel XL710/X710 Data Sheet
George for Performance setup
Rashmin foils for Virtualization
http://blog.jgriffiths.org/?p=929
M Jay
[email protected]
Questions?
Helin Zhang
[email protected]