Serverless Container Multiplexing for Cold-Start and Memory Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current serverless computing environments suffer from inefficiencies such as low resource utilization, long function response latencies, and overheads due to virtualization layers, cold starts, RPC/HTTP invocations, and global storage accesses, leading to increased response times and idle times from synchronous wait patterns.

Innovation Solution

Implement a dispatcher in a container that manages function execution by creating groups of handlers to process requests efficiently, utilizing shared memory and file resources, and employing smart handler scheduling to optimize resource usage and reduce redundant memory replication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple functions are executed in separate containers with virtualization, then each function gets isolated execution environment, but resource utilization decreases and overhead increases

Engineering Contradiction:
Improvefunction execution isolationVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges multiple function executions into a single container by creating multiple handler processes that share the same execution environment. This eliminates redundant virtualization overhead while maintaining isolation through process-level separation, thereby improving resource utilization without sacrificing execution reliability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The container is designed to handle multiple functions simultaneously through a universal execution mechanism. The dispatcher can allocate different handler processes to different functions within the same container, allowing one container to serve multiple purposes and reducing the need for separate dedicated containers for each function.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If separate containers are created for each function request, then function execution isolation is maintained, but response time increases due to container initialization overhead

Engineering Contradiction:
Improvefunction execution isolationVSAvoidresponse time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The container and its execution environment are prepared in advance before function requests arrive. Multiple handler processes are pre-initialized within the container, so when requests come in, they can be immediately assigned to ready handlers without waiting for container creation and initialization, thus reducing response time while maintaining isolation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of creating new containers for each request, the system creates copies of handler processes within the existing container. These handler copies inherit the pre-initialized execution environment, avoiding the time-consuming container startup process while maintaining functional isolation through process-level copying.

Inventive Principle:
Principle #26Copying

3Reliability

If each function has dedicated memory resources, then memory isolation is ensured, but memory usage increases due to redundant allocation

Engineering Contradiction:
Improvememory isolationVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

Multiple functions share a common memory space within the single container instead of each having dedicated memory. This eliminates redundant memory allocation for identical data structures and libraries across multiple containers, reducing total memory usage while maintaining isolation through controlled access mechanisms in the shared memory.

Inventive Principle:
Principle #5Merging (Combining)

4Reliability

If synchronous wait patterns are used for remote data access, then data consistency is maintained, but idle time increases due to blocking calls

Engineering Contradiction:
Improvedata consistencyVSAvoididle time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The handler scheduling system dynamically manages the execution state of handlers, allowing them to transition between running, waiting, and suspended states. When a handler needs to perform remote data access, it can be suspended rather than blocking, allowing the dispatcher to allocate CPU resources to other ready handlers, thus reducing idle time while maintaining data consistency through proper synchronization mechanisms.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12547461B2Serverless computing using resource multiplexing
Publication Date: 2026.02.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12547461B2 patent drawing
  • US12547461B2 patent drawing
  • US12547461B2 patent drawing

AI summary

A computer implemented method manages function execution in a container. A dispatcher in the container running in a computer system executes a function initialization in response to a first request for a function. The dispatcher in the container running in the computer system creates group of handlers in response to receiving a group of requests for the function. The dispatcher in the container running in the computer system sends the group of requests to the group of handlers in response to receiving the group of requests. The dispatcher in the container running in the computer system executes the group of requests using the group of handlers.