Approximate algorithms scheduling parallelizable tasks
SPAA '92 Proceedings of the fourth annual ACM symposium on Parallel algorithms and architectures
Multiagent systems: a modern approach to distributed artificial intelligence
Multiagent systems: a modern approach to distributed artificial intelligence
A Roadmap of Agent Research and Development
Autonomous Agents and Multi-Agent Systems
Fast Template Placement for Reconfigurable Computing Systems
IEEE Design & Test
Theory and Practice in Parallel Job Scheduling
IPPS '97 Proceedings of the Job Scheduling Strategies for Parallel Processing
Resource Allocation Schemes for Gang Scheduling
IPDPS '00/JSSPP '00 Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing
Adaptive Selection of Partition Size for Supercomputer Requests
IPDPS '00/JSSPP '00 Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing
A Fast Distributed Mapping Algorithm
CONPAR 90/VAPP IV Proceedings of the Joint International Conference on Vector and Parallel Processing
Adaptive Computing on the Grid Using AppLeS
IEEE Transactions on Parallel and Distributed Systems
Grid Computing: Making the Global Infrastructure a Reality
Grid Computing: Making the Global Infrastructure a Reality
A Model For Speedup of Parallel Programs
A Model For Speedup of Parallel Programs
ARMS: An agent-based resource management system for grid computing
Scientific Programming
Thousand core chips: a technology perspective
Proceedings of the 44th annual Design Automation Conference
ADAM: run-time agent-based distributed application mapping for on-chip communication
Proceedings of the 45th annual Design Automation Conference
Scheduling multithreaded computations by work stealing
SFCS '94 Proceedings of the 35th Annual Symposium on Foundations of Computer Science
Intel threading building blocks
Intel threading building blocks
Moldable parallel job scheduling using job efficiency: an iterative approach
JSSPP'06 Proceedings of the 12th international conference on Job scheduling strategies for parallel processing
Scenario-based design flow for mapping streaming applications onto on-chip many-core systems
Proceedings of the 2012 international conference on Compilers, architectures and synthesis for embedded systems
Invasive computing in HPC with X10
Proceedings of the third ACM SIGPLAN X10 Workshop
Self-adaptive hybrid dynamic power management for many-core systems
Proceedings of the Conference on Design, Automation and Test in Europe
Exploring resource mapping policies for dynamic clustering on NoC-based MPSoCs
Proceedings of the Conference on Design, Automation and Test in Europe
Game-theoretic analysis of decentralized core allocation schemes on many-core systems
Proceedings of the Conference on Design, Automation and Test in Europe
Runtime resource allocation for software pipelines
Proceedings of the 16th International Workshop on Software and Compilers for Embedded Systems
Mapping on multi/many-core systems: survey of current and emerging trends
Proceedings of the 50th Annual Design Automation Conference
Smart hill climbing for agile dynamic mapping in many-core systems
Proceedings of the 50th Annual Design Automation Conference
Optimizations for configuring and mapping software pipelines in many core systems
Proceedings of the 50th Annual Design Automation Conference
Distributed run-time resource management for malleable applications on many-core platforms
Proceedings of the 50th Annual Design Automation Conference
Virtual networks -- distributed communication resource management
ACM Transactions on Reconfigurable Technology and Systems (TRETS) - Special Section on 19th Reconfigurable Architectures Workshop (RAW 2012)
Agent-based distributed power management for kilo-core processors
Proceedings of the International Conference on Computer-Aided Design
Proceedings of the International Conference on Computer-Aided Design
Hi-index | 0.01 |
The trend towards many-core systems comes with various issues, among them their highly dynamic and non-predictable workloads. Hence, new paradigms for managing resources of many-core systems are of paramount importance. The problem of resource management, e.g. mapping applications to processor cores, is NP-hard though, requiring heuristics especially when performed online. In this paper, we therefore present a novel resource-management scheme that supports so-called malleable applications. These applications can adopt their level of parallelism to the assigned resources. By design, our (decentralized) scheme is scalable and it copes with the computational complexity by focusing on local decision-making. Our simulations show that the quality of the mapping decisions of our approach is able to stay near the mapping quality of state-of-the-art (i.e. centralized) online schemes for malleable applications but at a reduced overall communication overhead (only about 12,75% on a 1024 core system with a total workload of 32 multi-threaded applications). In addition, our approach is scalable as opposed to a centralized scheme and therefore it is practically useful for employment in large many-core systems as our extensive studies and experiments show.