Tasklets: "Better than Best-Effort" Computing

2016 
The modern computing landscape consists of numerous heterogeneous devices, all of which can contribute to a distributed environment as generic computation resources. In unstructured environments, resources can easily be shared and consumed at the cost of certainty. While some applications can handle such a best-effort service, many others require execution qualities, e.g., reliability or speed. We introduce Quality of Computation (QoC) as a thin layer on top of uniformly abstracted best-effort resources, which allows to tailor computation tasks to application-specific needs. The QoC layer provides execution guarantees for reliability, speed, precision, privacy, cost, and energy. We demonstrate QoC on the basis of the Tasklet system. Tasklets are fine-grained units of computation that can be issued for local or remote execution. The Tasklet system has two layers. Below is the best-effort execution layer, a virtual machine that provides raw computation. Above is the orchestration layer, which federates these virtual machines to one distributed computing environment and enforces the mechanisms that guarantee the requested QoC. We evaluated the performance of QoC in the Tasklet system in various scenarios. Results indicate that our system provides QoC guarantees at minimal performance cost.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    29
    References
    28
    Citations
    NaN
    KQI
    []