[Update 8/15/2007: Citrix is in the process of buying XenSource for $500m].

VMWareXenSourceParallels

Virtualization is an amazing technology that has been with computing since its infancy. However, in recent years it has reached the mainstream on servers and desktops. Virtualization provides an abstraction of physical computing resources – such as cpu, network, and storage. Hence the term “virtual machine.” This allows for taking snapshots of running virtual machines as well as move these live systems from phsyical machine-to-machine!

Many data centers are only utilizing a fraction (10-20%) of their computing resources. To maximize workflow we virtualize the resources so they can be used more efficiently across more defined and scheduled processes. Excess resources can be shared with other applications, so they can be utilized. This can save companies millions of dollars in maintenance fees, administration, and computing costs.

The 2 types of virtualization are:

  1. Aggregation allows pooling of resources together into a single, more powerful resource. (i.e. grid & parallel computing).
  2. Partitioning divides resources into multiple, smaller resources. (i.e. providing multiple virtual web servers on a single physical server).

Here are several of the major options:

VMWare [set to IPO today] has been popular in development and data centers.




SWSoft Parallels which has been quite popular for Macs allowing them to run Apple Mac OS X and Microsoft Windows simultaneously on the same machine.



XenSource is a popular open-source alternative.

Not only can CPUs be virtualized, but now GPUs are being general-purposed, GPGPU, and virtualized. This allows for massive computing potential, as GPUs are magnitudes more efficient at certain problems than CPUs. Several companies such as: RapidMind, PeakStream (bought out by Google) are doing just that.