Abstract: | Many-core architectures are now a commercial reality, but programming them efficiently is still a challenge, especially if the mix is heterogeneous. Here the issue of granularity must be addressed, i.e. when to make use of concurrency resources and when not to. We have designed a data-driven, fine-grained concurrent execution model (SVP) that captures concurrency in a resource-agnostic way. Our approach separates the concerns of describing a concurrent computation from its mapping and scheduling. We have implemented this model as a novel many-core architecture programmed with a language called $mu$TC. In this paper we demonstrate how we achieve the goal of resource-agnostic programming on this target, where heterogeneity is exposed as arbitrary clusters of cores.
|