Difference between revisions of "Xen 4.2 Feature List"

From Xen
(Sync with release notes)
Line 1: Line 1:
 
{{Info|This is a preliminary list of Xen 4.2 features}}
 
{{Info|This is a preliminary list of Xen 4.2 features}}
  +
  +
== Other Xen Releases ==
   
 
See [[Xen Release Features]] for a comparison of the featureset of different Xen releases.
 
See [[Xen Release Features]] for a comparison of the featureset of different Xen releases.
Line 10: Line 12:
 
* Scalability:
 
* Scalability:
 
** Increased VM density for VDI use-cases
 
** Increased VM density for VDI use-cases
** up to 512 Host CPUs for 64 bit hypervisor
+
** up to 4095 Host CPUs for 64 bit hypervisor
 
** Up to 5TB host memory support for 64 bit hypervisor
 
** Up to 5TB host memory support for 64 bit hypervisor
 
** Up to 512 VCPUs per PV VM and 256 VCPUs per HVM VM
 
** Up to 512 VCPUs per PV VM and 256 VCPUs per HVM VM
Line 19: Line 21:
 
** AMD SVM DecodeAssist support
 
** AMD SVM DecodeAssist support
 
** Remus memory image compression
 
** Remus memory image compression
  +
** Scheduler improvements ('''sched_ratelimit_us''' and '''tslice_ms'''; see "[[Credit_Scheduler#Xen4.2|new commands]]" and "[[Xen_4.2:_cpupools|Xen 4.2: CPUPOOLS]]")
** New scheduler parameters [http://blog.xen.org/index.php/2012/04/10/xen-4-2-new-scheduler-parameters-2/]
 
 
* EFI boot support for the 64 bit hypervisor hosts
 
* EFI boot support for the 64 bit hypervisor hosts
  +
* [[XL]] improvements, [[XEND]] is formally deprecated
* Libvchan cross domain comms in Xen mainline
 
* XL improvements, XEND is formally deprecated
 
 
* Documentation improvements (e.g. man pages)
 
* Documentation improvements (e.g. man pages)
 
* RAS:
 
* RAS:
Line 34: Line 35:
   
 
=== Tools ===
 
=== Tools ===
* xl is now default toolstack and xend is formally deprecated
+
* [[XL]] is now default toolstack and [[XEND]] is formally deprecated
  +
** For a feature comparison between [[XL]] and [[XEND]] see "[[XL vs Xend Feature Comparison]]".
** lots of xl improvements, e.g.
 
  +
** lots of [[XL]] improvements, e.g.
*** Support for Network driver domains in xl
 
  +
*** More feature complete
** we should highlight xend deprecation (not effectively maintained since 2008)
 
  +
*** Support for Network driver domains in [[XL]]
  +
*** Improved support for PCI pass-through (see "[[Xen_4.2:_xl_and_pci_pass-through|Xen 4.2: XL and PCI pass-through]]")
  +
* libxl improvements
  +
** The libxl API is now stable.
  +
** The libxl featureset has been greatly expanded:
  +
*** Many slow running operations can now be done asynchronously.
  +
*** Improved event handling subsystem.
 
* Remus compression (compression of memory image improves performance)
 
* Remus compression (compression of memory image improves performance)
  +
* Prefer oxenstored when available. Oxenstored is faster, more scalable and more reliable than the C xenstored. In particular the transaction model in oxenstored does not involve taking a complete copy of the database and aborting on any (even non-conflicting) other change. For more detail on the design, implementation and a performance comparison see [http://gazagnaire.org/pub/GH09.pdf this paper].
* Prefer oxenstored when available (improves scalability!)
 
 
* Support for upstream qemu; nearing feature parity (non default still, but we want people to be testing it)
 
* Support for upstream qemu; nearing feature parity (non default still, but we want people to be testing it)
 
* Added libvchan to xen mainline(cross domain comms)
 
* Added libvchan to xen mainline(cross domain comms)

Revision as of 12:14, 7 September 2012

Icon Info.png This is a preliminary list of Xen 4.2 features


Other Xen Releases

See Xen Release Features for a comparison of the featureset of different Xen releases.

High Level features

  • Security:
    • Support for Intel Supervisor Mode Execution Protection (SEMP), which prevents the execution usermode of pages by the Xen hypervisor, making many application-to-hypervisor exploits much harder.
    • Various Xen Security Modules (XSM) / Flask improvements. The XSM framework and the Xen Flask security module is an application of the Flask architecture to the Xen hypervisor.
  • Scalability:
    • Increased VM density for VDI use-cases
    • up to 4095 Host CPUs for 64 bit hypervisor
    • Up to 5TB host memory support for 64 bit hypervisor
    • Up to 512 VCPUs per PV VM and 256 VCPUs per HVM VM
    • Multiple PCI segment support
    • Prefer oxenstored when present
  • Performance
    • PCI pass-through for Linux Guests
    • AMD SVM DecodeAssist support
    • Remus memory image compression
    • Scheduler improvements (sched_ratelimit_us and tslice_ms; see "new commands" and "Xen 4.2: CPUPOOLS")
  • EFI boot support for the 64 bit hypervisor hosts
  • XL improvements, XEND is formally deprecated
  • Documentation improvements (e.g. man pages)
  • RAS:
    • Enhanced MCA support to include more failure types
    • APEI support (ACPI Platform Error Interface)

Detailed List

General

  • Documentation improvements (e.g. man pages)
  • Lots of bug fixing of course.

Tools

  • XL is now default toolstack and XEND is formally deprecated
  • libxl improvements
    • The libxl API is now stable.
    • The libxl featureset has been greatly expanded:
      • Many slow running operations can now be done asynchronously.
      • Improved event handling subsystem.
  • Remus compression (compression of memory image improves performance)
  • Prefer oxenstored when available. Oxenstored is faster, more scalable and more reliable than the C xenstored. In particular the transaction model in oxenstored does not involve taking a complete copy of the database and aborting on any (even non-conflicting) other change. For more detail on the design, implementation and a performance comparison see this paper.
  • Support for upstream qemu; nearing feature parity (non default still, but we want people to be testing it)
  • Added libvchan to xen mainline(cross domain comms)

Xen

  • Improvements to paging and sharing, enabling higher VM density for VDI use-cases
  • EFI (extensible Firmware Interface) support for HV (i.e. if I have a machine that has EFI, I can use Xen on it)
  • Support up to 256 Host CPUs for 64 bit h/v (from 128)
  • Support dom0 kernels compressed with xz
  • Per-device interrupt remapping (increases scalability)
  • Support for pvhvm guest direct pirq injection (Performance improvement for PCI passthrough for Linux Guests)
  • Intel SMEP (Supervisor Mode Execution Protection) support
  • Mem event stuff? (Allows to externally observe what guests are up to and can be used for external virus checking - not sure what the right terminology is)
  • Multiple PCI segment support
  • Added xsave support(floating point)
  • Lots of XSM / Flask fixes (security)
  • AMD SVM "DecodeAssist" support (AMD CPU feature that avoids emulation and increases performance)
  • RAS:
    • Enhanced MCA support to include more failure types
    • APEI support (ACPI Platform Error Interface)
  • New scheduler parameters [1]

Removed Functionality

  • ACM (alternative XSM to Flask) was removed (unmaintained)
  • Removed vnet (unmaintained)
  • The IA64 port was removed (unmaintained)

Xen Development Support

  • Can build with clang
  • Added "make deb" target
  • Lots of xentrace improvements
  • update ocaml bindings and make them usable by xapi (which previously had it's own fork of the same codebase)


Also See

  • Category:Xen 4.2 - Contains articles and tutorials related to new functionality in Xen 4.2