Application Partitioning via Source Code Logic Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional application partitioning technologies face challenges in maximizing application performance as they treat functions defined by developers as single logics, leading to suboptimal performance and increased development burdens due to the need for developers to consider various performance indexes during development.
Innovation Solution
An application partitioning apparatus and method that acquires source code, identifies functions, determines if they can be further partitioned based on predefined rules, and allocates these functions to multiple information processing apparatuses for optimal distributed arrangement, allowing for further partitioning of functions into multiple logics without relying on developer-defined function forms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a function defined by a developer is treated as a single logic in conventional partitioning methods, then the partitioning process is simpler, but application performance cannot be maximized because the function may not have an optimal form for distributed execution
Solution Approach 1:
The patent automatically segments a developer-defined function into multiple finer-grained logics by analyzing the source code and identifying independent processing units. This segmentation enables optimal distributed arrangement across multiple machines, maximizing application performance without requiring developers to manually partition functions.
2Productivity
If developers are requested to make functions have optimal forms for maximizing application performance, then application performance can be improved, but the development burden increases as developers must pay attention to various performance indexes
Solution Approach 1:
The patent implements a self-service mechanism where the automatic partitioning system analyzes the developer's source code, identifies functions, and automatically determines optimal partitioning and distributed arrangement. This eliminates the need for developers to manually optimize function forms for performance, reducing development burden while achieving optimal application performance.
3Productivity
If a function is further partitioned into multiple logics based on source code analysis, then optimal distributed arrangement can be achieved, but the partitioning process becomes more complex
Solution Approach 1:
The patent replaces manual mechanical partitioning processes with automated computer-based analysis. The system uses source code parsing, dependency graph construction, and algorithmic optimization to automatically partition functions into logics and determine their optimal distributed arrangement, reducing human effort and complexity in the partitioning process.
Data Source
AI summary
A function defined in source code of an application is further partitioned into a plurality of logics without depending on function definition performed by a developer. An application partitioning apparatus (1) for partitioning an application distributively processed by a plurality of information processing apparatuses into a plurality of logics includes an acquisition unit (121) which acquires source code of the application, a first partitioning unit (122) which identifies a plurality of functions defined in the source code and partitioning the source code into the plurality of functions, a determination unit (123) which determines whether each of the partitioned functions can be further partitioned according to rules set in advance, and a second partitioning unit (124) which, when it is determined that each of the partitioned function can be partitioned, partitions the function into a plurality of functions including one or a plurality of rows.


