PaRSEC is a generic framework for architecture aware scheduling and management of micro-tasks on distributed, GPU accelerated, many-core heterogeneous architectures. PaRSEC assigns computation threads to the cores, GPU accelerators, overlaps communications and computations and uses a dynamic, fully-distributed scheduler based on architectural features such as NUMA nodes and algorithmic features such as data reuse.
When writing in PTG like this:
READ D <- desc_D(0, %{ return desc_f_data->super.rank_of(&desc_f_data->super, 0, n); %})
It shows:
#error Expression return desc_f_data->super.rank_of(&desc_f_data->super, 0, n); has not been generated
@therault suggested using a task local variable but I need to understand more.