Skip to Main Content
In heterogeneous clusters, different nodes may have different computing powers, so traditional parallel languages or runtime libraries are not suitable there even for regular computations. Task parallel systems may be good candidates since they may easily support dynamic task assignment. But most of them can achieve high performances only in SMPs. And some of them do not provide convenient programmability. This paper presents the rich enhancements in the latest version of a very easy-to-use task parallel language called LilyTask, with which programmers can easily handle tasks and avoid explicit synchronizations and message passings. This paper also tells how LilyTask is realized in heterogeneous SMP-clusters. Evaluations show that due to its feature of dynamic task parallelism and due to its elaborate implementation, the executing efficiency of LilyTask is better than that of OpenMP in SMPs and that of MPI in both SMPs and heterogeneous clusters.