- server specialization and flexibility of the network is on the increase – and this means different workloads can be directed to the most appropriate hardware. Some applications require more compute, while others need more memory bandwidth or storage I/O. Some would benefit from Digital Signal Processing (DSP) functionality, while others would prefer a Field-Programmable Gate Array (FPGA)
The future of data center compute is in Systems-on-a-Chip (SoCs) customized for different workloads
Examples of existing ARM chips bound for the data center include the X-Gene SoC from Applied Micro, AMD’s Opteron A1100 (codenamed ‘Seattle’), and Cavium’s ThunderX.
http://www.datacenterdynamics.com/colo-cloud-/dcd-converged-arm-is-finally-arriving-to-the-data-center/92006.fullarticle
What is a CPU?
it is ultimately a very fast calculator. It fetches data from memory, and then performs some kind of arithmetic (add, multiply) or logical (and, or, not) operation on that data.
What is an SoC?
An SoC, or system-on-a-chip to give its full name, integrates almost all of these components into a single silicon chip. Along with a CPU, an SoC usually contains a GPU (a graphics processor), memory, USB controller, power management circuits, and wireless radios (WiFi, 3G, 4G LTE, and so on). Whereas a CPU cannot function without dozens of other chips, it’s possible to build complete computers with just a single SoC.
The difference between an SoC and CPU
The number one advantage of an SoC is its size: An SoC is only a little bit larger than a CPU, and yet it contains a lot more functionality
Due to its very high level of integration and much shorter wiring, an SoC also uses considerably less power
Cutting down on the number of physical chips means that it’s much cheaper to build a computer using an SoC
The only real disadvantage of an SoC is a complete lack of flexibility. With your PC, you can put in a new CPU, GPU, or RAM at any time — you cannot do the same for your smartphone
http://www.extremetech.com/computing/126235-soc-vs-cpu-the-battle-for-the-future-of-computing
- In hardware design, there are two approaches to solving the vast computing needs of a site like Facebook. There's the approach of “scale up” — building ever-increasing amounts of computing power in a given system. Or you can “scale out,” building an ever-increasing fleet of simple systems, each with a moderate amount of computing power.
As we continued to evolve our infrastructure, we realized 2S was the wrong tool for some of our needs. To provide our infrastructure with capacity that scales out with the demand, we designed a modular chassis that contains high-powered system-on-a-chip (SoC) processor cards, code-named “Yosemite.
https://code.facebook.com/posts/1616052405274961/introducing-yosemite-the-first-open-source-modular-chassis-for-high-powered-microservers-/
- FPGAs provide a unique combination of highly parallel custom computation, relatively low manufacturing/engineering costs, and low power requirements.
FPGAs can be applied to assist a wide variety of enterprise applications.
Offloading Communication Protocol Processing
Encryption
Spam Filtering
Quantifying Speedup and Characterizing FPGA-Appropriate Applications
Offloading Communication Protocol Processing
Any time that information is transferred from one processor to another, some communication is necessary. If this communication does not go through shared memory, it requires the serialization and deserialization of various data structures and objects. This translation overhead may be significant when considering the performance of large distributed or networked systems. In this case study, we look at how we can offload object marshaling for Remote Procedure Calls (RPCs) to an FPGA.
Encryption
As networked systems and services gain popularity, the security and computational overhead of encrypted communication becomes more important. Reconfigurable computing platforms seem to be ideal for accelerating encryption due to their adaptability and highly parallel execution model
Spam Filtering
Regular expressions are used by many e-mail systems to filter for spam. These systems may match against tens to hundreds of thousands of regular expressions. While this highly parallel problem can be mapped to FPGAs quite effectively, the conventional FPGA design methodology and execution model presents several practical problems for developers trying to create
research.microsoft.com/en-us/projects/fpga_apps/
- A set of FPGAs built onto a datacenter server rack could function as a GPU to boost the performance of one workload and get a software update that turns half into CPUs and the other half into image- or video-processing specialists – without requiring users to buy new hardware or even switch servers in between workloads.
In one example of FPGA-boosted datacenters, Microsoft was able to boost the throughput of servers running its Bing search engine by 95 percent at a cost of an additional 10 percent per server and 30 percent overall, according to a Microsoft report published in June 2014.
https://goparallel.sourceforge.net/intel-creates-xeon-fpga-powerhouse-with-16-7b-altera-buy
- A field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturing – hence "field-programmable".
https://en.wikipedia.org/wiki/Field-programmable_gate_array