  In this paper we describe HeSP, a complete simulation framework to study a
general task scheduling-partitioning problem on heterogeneous architectures,
which treats recursive task partitioning and scheduling decisions on equal
footing. Considering recursive partitioning as an additional degree of freedom,
tasks can be dynamically partitioned or merged at runtime for each available
processor type, exposing additional or reduced degrees of parallelism as
needed. Our simulations reveal that, for a specific class of dense linear
algebra algorithms taken as a driving example, simultaneous decisions on task
scheduling and partitioning yield significant performance gains on two
different heterogeneous platforms: a highly heterogeneous CPU-GPU system and a
low-power asymmetric big.LITTLE ARM platform. The insights extracted from the
framework can be further applied to actual runtime task schedulers in order to
improve performance on current or future architectures and for different
task-parallel codes.
