Skip to Main Content
The paper concerns program scheduling methods oriented towards "System on Chip" (SoC) -based modular parallel architectures with efficient features of inter-processor communication. In the assumed architecture, a global communication network connects many SoC modules in which SMP clusters are dynamically created at program run-time to provide transfers of shared data on the fly for many processors at a time. Programs are represented as extended macro data flow graphs, which adequately describe communication between processor data caches and shared memory modules. The proposed scheduling algorithm is composed of two phases. The first phase distributes program graph nodes among SoC modules, assuming full inter-processor connection networks. It is implemented as a genetic algorithm with internally embedded ETF heuristics. The second phase of the algorithm schedules computation and communication inside SoC modules, so as to optimally use dynamic processor switching between clusters and data read on the fly mechanisms. Scheduling results of sample program graphs evaluated using simulation methods illustrate the efficiency of the proposed algorithm.