← Back to Projects

Study of Micro-Architectural characteristrics of Scale-out applications


Emerging scale-out workloads are of the paradigm where:
1. They operate on large data sets typically split into shards,
2. Serve a large number of completely independent requests,
3. Not reliant on underlying hardware; fault tolerant by design for deployment into cloud infra where machines are unreliable,
4. Use inter-node connectivity for co-ordination and task management

A few examples of this class of applications are:
1. Unstructured data stores (NoSQL, Redis)
2. MapReduce (Hadoop)
3. Web Search (data harvesting ISN's)
4. Web Frontend
5. Streaming Media (YouTube, Netflix)
6. SAT Solvers

I am attempting to study the micro architectural properties of these class of applications in terms of the degree of ILP / MLP parallelism, working set size, degree of memory sharing between cores. This we hope will unearth interesting properties so we can design effecient processors that suite this class of applications.

This project is currently underway. I will post the report here when I reach an tangible conclusion stay tuned.

Other projects similar to this: