Please use this identifier to cite or link to this item: https://dl.ucsc.cmb.ac.lk/jspui/handle/123456789/4458
Title: Optimizing costs of Serverless: Function profiling approach to optimize memory and running time of Serverless functions
Authors: Munasinghe, A. K. D. M. P
Issue Date: 5-Aug-2021
Abstract: Function profiling is a mechanism used by developers, performance analysts and architects to evaluate resource usages of a particular function. When coding was done locally and deployed in local or in-house servers profiling was used as a method to evaluate the performance of a program. With the emergence of Serverless the function deployment environment no longer reside on a local Server. The runtime is not accessible for the developer and is maintained by an external entity. With a minimal availability of system information developers are using brute force techniques to identify the required memory parameter for function deployment. The public unavailability of the underlying CPU allocation which correlates to the provided memory parameter intensifies the requirement for the use of brute force methods. This study presents a Proof of concept and an experimental study to define how function profiling can be used to provide a combined memory parameter out of CPU, memory and running time produced by a profiler. The resulting output is then mapped against a memory configuration for function deployment in a Serverless environment. In the two fold research methodology selection of profilers and the platforms are carried out as proof of concept. Then the proof of concept is converted to an experimental study to deep dive into Serverless platform to observe the behavior of Serverless memory and CPU. Finally, by utilizing regression models a fine-tuned cost estimation function is defined. The study successfully updated the knowledge over mapping local CPU time to Serverless CPU time based on the memory parameter with a linear regression model. This further optimizes the running time of a function which is expandable in a range of CPU parameters and Memory configurations. With the understanding of the underlying environments, functions for estimating Serverless function. The profiler techniques, CPU time-sharing and Serverless cost estimation are the primary outputs of the research. Which is then backed with an algorithm definition to develop an analysis tool to achieve cost optimizations in a Serverless platform using function profiler "memory_profiler" and scalene for Python.
URI: http://dl.ucsc.cmb.ac.lk/jspui/handle/123456789/4458
Appears in Collections:2020

Files in This Item:
File Description SizeFormat 
2016 MCS 061.pdf1.47 MBAdobe PDFView/Open


Items in UCSC Digital Library are protected by copyright, with all rights reserved, unless otherwise indicated.