Tasklets
The Tasklet system is the realization of a lightweight concept for distributed computation in heterogeneous environments. The heterogeneity of today's systems ranges from embedded microcontrollers, mobile devices such as smartphones and specialized hardware such as graphics cards, to networked multi- or many-core systems in desktop computers and server systems. In addition to the different computing power of the nodes involved in the system, the networks also differ in terms of their throughput performance and availability. To compensate possible errors, as well as for the targeted distribution and coordination of computations, specially tailored methods are used in different system models (e.g. cluster computing, mobile computing, embedded systems, etc.). For example, different procedures are used when using excess capacities (opportunistic computing) than for reliable computation in a mobile cloud environment. In order to counter possible disconnections of mobile end devices to the cloud infrastructure, local computation must be retriggered either simultaneously, or in response to failures. When using excess capacity, computation would again be executed on an appropriate number of nodes to ensure success in the respective residual capacities.