StarPU Tries To Make Hybrid CPU/GPU Programming Easy
StarPU is described as a unified run-time system for heterogeneous multi-core architectures that is a task programming library with support for CPUs and GPUs. StarPU tries to be more effective than OpenMP, OpenACC, and the many other multi-threaded/multi-device programming interfaces.
StarPU is implemented within code either using pragmas in conjunction with StarPU's GCC plug-in or through StarPU's C API. StarPU handles task dependencies, heterogeneous scheduling, data transfers between memory devices, and cluster communication.
We've covered StarPU on Phoronix in the past while this week with XDC2014 being in Bordeaux, France where StarPU's development is based, Samuel Thibault of the project presented their work to X.Org developers.
For those wishing to learn more about StarPU see the PDF slides and if it's your first time learning about this project, visit the StarPU site.
StarPU is implemented within code either using pragmas in conjunction with StarPU's GCC plug-in or through StarPU's C API. StarPU handles task dependencies, heterogeneous scheduling, data transfers between memory devices, and cluster communication.
We've covered StarPU on Phoronix in the past while this week with XDC2014 being in Bordeaux, France where StarPU's development is based, Samuel Thibault of the project presented their work to X.Org developers.
For those wishing to learn more about StarPU see the PDF slides and if it's your first time learning about this project, visit the StarPU site.
2 Comments