User Tools

Site Tools


documentation:technical_docs:performance

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
documentation:technical_docs:performance [2019/11/21 17:22] – [Choosing good Hardware] olivierdocumentation:technical_docs:performance [2019/11/21 17:27] – [Disabling Hyper Threading] olivier
Line 104: Line 104:
 ==== Choosing good FreeBSD release ==== ==== Choosing good FreeBSD release ====
  
-Before tuning, you need to use the good FreeBSD version. +Before tuning, you need to use the good FreeBSD version... this mean a recent FreeBSD -head.
-This mean a FreeBSD -head version older than r309257 (Andrey V. Elsukov 's improvement: Rework ip_tryforward() to use FIB4 KPI) backported to FreeBSD 11-stable r310771 (MFC to stable).+
  
-BSDRP since version 1.70 is using a FreeBSD 11-stable (r312663that includes this improvement.+BSDRP is currently following FreeBSD 12-stable branch, to try to have a mix between recent features and stability. 
 +==== Disabling Hyper Threading (HT====
  
-{{documentation:technical_docs:2016-performance-evolution.png|2016 Forwarding performance evolution of FreeBSD -head on a 8 core Atom}} +By default, lot's of multi-queue NIC drivers create one queue per core. 
- +But "logical" cores didn't help at all for managing interrupts generated by high speed NIC (this is not true on 13-head since [[https://svnweb.freebsd.org/base?view=revision&revision=354338|r354338]] and the new machdep.hyperthreading_intr_allowed that allow interrupts on HTT logical CPUs.
-For better (and linear scale) performance there is the [[https://svnweb.freebsd.org/base/projects/routing/|projects/routing]] too [[http://blog.cochard.me/2015/09/receipt-for-building-10mpps-freebsd.html|that still give better performance]]. +
- +
-==== Disabling Hyper Threading ==== +
- +
-Disable Hyper Threading (HT): By default, lot's of multi-queue NIC drivers create one queue per core. +
-But "logical" cores didn't help at all for managing interrupts generated by high speed NIC.+
  
 HT can be disabled with this command: HT can be disabled with this command:
documentation/technical_docs/performance.txt · Last modified: 2020/01/18 01:04 by olivier

Except where otherwise noted, content on this wiki is licensed under the following license: BSD 2-Clause
Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki