A Data Forwarding Scheme for Task-based Programming Models
Övrigt konferensbidrag, 2012
Task-based programming models are increasingly being adopted due to their ability to express parallelism. Communication is an inherent aspect of this model and is expected to
play an important part in application scalability on multi-
core architectures. In this paper we focus specifically on
communication arising due to producer-consumer sharing in
task-based applications. Existing approaches that optimize
for producer-consumer sharing, by predicting the identity of
the consumers and forwarding data in advance, rely on producers and consumers to exhibit stable communication to be effective. We show that task-based parallel applications do not exhibit stable communication as the mapping of tasks
to cores changes based on runtime conditions thereby lim-
iting applicability of such optimizations. As an alternative
solution, we propose a forwarding scheme in the context of
chip multiprocessors that helps in reducing communication
overheads by enabling cache-to-cache transfers of updated
lines to the consumer after the consumer identifies itself.
Our evaluation indicates that the proposed scheme is able
to reduce communication overheads due to such producer-consumer sharing.