Spatial and Temporal Cache Sharing Analysis in Tasks
2016 (English)Conference paper (Other academic)
Understanding performance of large scale multicore systems is crucial for getting faster execution times and optimize workload efficiency, but it is becoming harder due to the increased complexity of hardware architectures. Cache sharing is a key component for performance in modern architectures, and it has been the focus of performance analysis tools and techniques in recent years.At the same time, new programming models have been introduced to aid the programmer dealing with the complexity of large scale systems, simplifying the coding process and making applications more scalable regardless of resource sharing. Task-based runtime systems are one example of this that became popular recently.In this work we develop models to tackle performance analysis of shared resources in the task-based context, and for that we study cache sharing both in temporal and spatial ways. In temporal cache sharing, the effect of data reused over time by the tasks executed is modeled to predict different scenarios resulting in a tool called StatTask. In spatial cache sharing, the effect of tasks fighting for the cache at a given point in time through their execution is quantified and used to model their behavior on arbitrary cache sizes.Finally, we explain how these tools set up a unique and solid platform to improve runtime systems schedulers, maximizing performance of execution of large-scale task-based applications.
Place, publisher, year, edition, pages
Timisoara, Romania, 2016.
task-based, cache sharing, performance analysis
Research subject Computer Science
IdentifiersURN: urn:nbn:se:uu:diva-284371OAI: oai:DiVA.org:uu-284371DiVA: diva2:920232
NESUS PhD Symposium on Sustainable Ultrascale Computing Systems