Cross-Process Analytical Execution for Multi-Language Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional compute environments restrict developers to a single programming language and runtime environment, limiting flexibility and efficiency in handling modern, data-intensive computational workloads.

Innovation Solution

A system that enables distributed computation across multiple computer processes, allowing different components of a computational workflow to leverage the strengths of various programming languages and runtimes environments, using a parent and child computer process architecture with a cross-process queue for data transfer and execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a single computer process is used to execute computational tasks, then the system architecture is simple and easy to manage, but the system is restricted to a single programming language and runtime environment, limiting flexibility and efficiency

Engineering Contradiction:
Improveprogramming language flexibilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system divides the computational workflow into multiple independent computer processes, each capable of executing different programming languages and runtime environments. The parent process coordinates child processes through a cross-process queue, enabling multi-language support while maintaining manageable complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A cross-process queue serves as an intermediary communication mechanism between parent and child processes. This mediator enables data and control flow between processes executing different programming languages without requiring direct integration, thus achieving versatility while controlling complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple computer processes are used to enable distributed computation across different programming languages, then programming language flexibility and efficiency are improved, but the system architecture becomes more complex

Engineering Contradiction:
Improvecomputational efficiencyVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The computational workload is segmented into discrete tasks distributed across multiple child processes, each optimized for specific programming languages or runtime environments. This segmentation enables parallel execution and leverages the strengths of different languages simultaneously, improving productivity while maintaining clear process boundaries that manage complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The parent process and cross-process queue provide universal coordination capabilities that work across all child processes regardless of their specific programming language or runtime environment. This multi-functional coordination layer enables diverse computational tasks to be managed through a unified architecture, improving productivity without proportionally increasing complexity.

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

3Adaptability or versatility

If a monolithic architecture is used, then the system is easy to manage and deploy, but it hinders the integration of open-source software libraries and specialized tools

Engineering Contradiction:
Improveintegration capabilityVSAvoidsystem management ease
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The system segments functionality into independent child processes that can independently integrate specialized open-source libraries and tools appropriate to their programming language or runtime environment. Each process can be developed, updated, and managed independently, improving integration capability while maintaining manageable complexity through modular organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The cross-process queue acts as an intermediary that standardizes communication between diverse child processes and the parent process. This mediator layer simplifies system management by providing uniform interfaces for task submission, data transfer, and result collection, even though the underlying processes use different programming languages and libraries.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12405773B1Systems and methods for executing an analytical operation across a plurality of computer processes
Publication Date: 2025.09.02 SAS INSTITUTE INC
  • US12405773B1 patent drawing
  • US12405773B1 patent drawing
  • US12405773B1 patent drawing

AI summary

A system, method, and computer-program product includes commencing a parent computer process based on receiving a request to perform an analytical operation on one or more datasets, commencing at least one child computer process that is launched by the parent computer process when the parent computer process initiates an execution of the analytical operation on the one or more datasets, transmitting, by the at least one child computer process, a request to the parent computer process to retrieve the one or more datasets, writing, by the parent computer process, the one or more datasets to a cross-process queue based on the parent computer process receiving the requests, reading, by the at least one child computer process, the one or more datasets from the cross-process queue, and executing, using an analytical application executing on the least one child computer process, the analytical operation based on the one or more datasets.