StarPU Handbook - StarPU Language Bindings
|
Hierarchical Dags | API for Hierarchical DAGS |
FFT Support | |
Fortran Support | Fortran API |
Threads | API for thread. The thread functions are either implemented on top of the pthread library or the SimGrid library when the simulated performance mode is enabled (SimGridSupport) |
Initialization and Termination | |
Versioning | |
Codelet And Tasks | API to manipulate codelets and tasks |
Transactions | |
Data Management | Data management facilities provided by StarPU. We show how to use existing data interfaces in Data Interfaces, but developers can design their own data interfaces if required |
Data Interfaces | Data management is done at a high-level in StarPU: rather than accessing a mere list of contiguous buffers, the tasks may manipulate data that are described by a high-level construct which we call data interface |
Data Partition | |
Explicit Dependencies | |
Task Lists | |
Task Insert Utility | |
CUDA Extensions | |
OpenCL Extensions | |
HIP Extensions | |
Maxeler FPGA Extensions | |
Workers | |
Parallel Tasks | |
Performance Model | |
OpenMP Runtime Support | API for implementing OpenMP runtimes on top of StarPU |
Modularized Scheduler Interface | |
Scheduling Contexts | StarPU permits on one hand grouping workers in combined workers in order to execute a parallel task and on the other hand grouping tasks in bundles that will be executed by a single specified worker. In contrast when we group workers in scheduling contexts we submit starpu tasks to them and we schedule them with the policy assigned to the context. Scheduling contexts can be created, deleted and modified dynamically |
Scheduling Policy | TODO. While StarPU comes with a variety of scheduling policies (see TaskSchedulingPolicy), it may sometimes be desirable to implement custom policies to address specific problems. The API described below allows users to write their own scheduling policy |
Heteroprio Scheduler | This is the interface for the heteroprio scheduler |
Scheduler Toolbox | This is the interface for the scheduler toolbox |
MPI Support | |
MPI Fault Tolerance Support | |
Bitmap | This is the interface for the bitmap utilities provided by StarPU |
Theoretical Lower Bound on Execution Time | Compute theoretical upper computation efficiency bound corresponding to some actual execution |
Out Of Core | |
Running Drivers | |
Expert Mode | |
FxT Support | |
Toolbox | The following macros allow to make GCC extensions portable, and to have a code which can be compiled with any C compiler |
Miscellaneous Helpers | |
Parallel Workers | |
Performance Monitoring Counters | API to access performance monitoring counters |
Performance Steering Knobs | API to access performance steering counters |
Profiling | |
Profiling Tool | |
Random Functions | |
Sink | |
Standard Memory Library | |
Task Bundles | |
Tree | API tree facilities |
Scheduling Context Hypervisor - Building a new resizing policy | |
Scheduling Context Hypervisor - Linear Programming | |
Scheduling Context Hypervisor - Regular usage | |
Interoperability Support | API to interoperate with other runtime systems |