Function as a Service (FaaS) is the latest stage of application virtualization in
the cloud. It enables to deploy small code pieces – functions – in the cloud. FaaS
focuses on event-driven functions in response to triggers from different sources.
The functions run in ephemeral virtual environments. This means that the user is charged
on the basis of the time the function is busy serving the invocation requests. With
the advent of Industry 4.0 the need has arisen to run applications on Edge Computing
nodes. FaaS is a promising solution for serving industrial applications that require
predictable latency while meeting the demands of edge computing, which operates on
a limited resource base. Therefore, knowing the completion time of the invocation
requests is of key importance. In this paper, we introduce a function runtime design
for opensource FaaS implementations that achieves a lower deviation in request completion
times compared to default runtimes by regulating the function’s access to host CPU
cores. We present the implementation details of our proposed function runtime design
for Python, Go and Node.js. We also introduce a simulation framework that is able
to estimate the completion time distribution of the incoming invocation requests.
We validate the results of our simulation framework using real measurement data.