  Cloud-based computing systems can get oversubscribed due to the budget
constraints of their users or limitations in certain resource types. The
oversubscription can, in turn, degrade the users perceived Quality of Service
(QoS). The approach we investigate to mitigate both the oversubscription and
the incurred cost is based on smart reusing of the computation needed to
process the service requests (i.e., tasks). We propose a reusing paradigm for
the tasks that are waiting for execution. This paradigm can be particularly
impactful in serverless platforms where multiple users can request similar
services simultaneously. Our motivation is a multimedia streaming engine that
processes the media segments in an on-demand manner. We propose a mechanism to
identify various types of "mergeable" tasks and aggregate them to improve the
QoS and mitigate the incurred cost. We develop novel approaches to determine
when and how to perform task aggregation such that the QoS of other tasks is
not affected. Evaluation results show that the proposed mechanism can improve
the QoS by significantly reducing the percentage of tasks missing their
deadlines %. In addition, it can and reduce the overall time (and subsequently
the incurred cost) of utilizing cloud services by more than 9%.
