The initial revisions of ExpressFabric are creating a path to full server disaggregation. Disaggregation is the holy grail of efficient architectures. Current software-defined storage and software-defined datacenter approaches will never reach their full potential without resource pooling in disaggregated architectures.
In this design, ExpressFabric allows the spreading of server components into different resource pools. PCIe provides plenty of speed for this enhanced architecture; after all, PCIe is the fabric that binds these components inside today's server. The PCIe interconnect delivers data between components with the same speed and latency experienced in a single chassis. This enables quick and efficient resource allocation to applications that need it most.
The widespread use of PCIe SSDs, unfortunately, leads to stranded resources. PCIe SSDs often have spare capacity and performance that can be allocated to other systems if the architecture supported it. The same concept applies to DRAM, GPUs, and CPUs. These resources are all often stranded and underutilized. This design allows full utilization of premium resources by multiple applications.
Utilizing software for adaptive resource allocation minimizes waste and maximizes production, but also has the side effect of simplifying management. This also lays the foundation for a highly scalable architecture.
Most server components feature disparate refresh cycles. DRAM is usually fine for several generations of CPUs, and storage components often do not require fast replacement cycles. Today's servers often are replaced entirely just to update one component. Components can be replaced on their own cadence with resource pooling. Another benefit is design efficiency. Some components do not require as much airflow or power as others. Consolidating similar components enables denser, more efficient designs.
Instead of top-of-rack switches, the future will hold end-of-row switches that handle all communication and resource allocation. The evolution of ExpressFabric will enable intelligent, efficient, and scalable deployment of compute and storage resources.