XML Parser Parallel Execution on Multi-Unit CPUs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for parsing XML and NVP data in software are inefficient due to their sequential nature, requiring significant CPU cycles and resources, which is problematic in systems with limited resources like handheld devices and servers.
Innovation Solution
The method leverages modern processors with multiple execution units to perform processing loops in parallel, ordering operations to minimize latency and maximize throughput by determining the maximum delay in the most processing-heavy unit and filling corresponding cycles with other operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If XML or NVP data is parsed using sequential processing loops in software, then the parsing can be performed flexibly with software updates, but the processing time and CPU cycle consumption increase significantly
Solution Approach 1:
The patent divides the sequential processing loops into multiple independent processing stages (scanning, copying, checking, hashing, table insertion, output) that can be executed simultaneously by different execution units. This segmentation allows parallel processing while maintaining software flexibility.
Solution Approach 2:
The patent transitions from one-dimensional sequential processing to multi-dimensional parallel processing by utilizing multiple execution units operating simultaneously. This dimensional change enables multiple processing loops to execute in parallel, reducing overall processing time while maintaining software-based flexibility.
2Productivity
If multiple processing loops are executed in parallel using multiple execution units, then the processing speed and throughput increase, but the complexity of operation ordering and scheduling increases
Solution Approach 1:
The patent performs preliminary analysis to identify the critical path (maximum delay) among processing loops before execution. By determining which execution unit has the most processing to perform in advance, the system can optimize scheduling and fill idle cycles proactively, reducing the complexity of real-time coordination.
Solution Approach 2:
The patent ensures continuous utilization of all execution units by filling idle cycles with additional operations. This eliminates wasted processing capacity and maintains high throughput without requiring complex dynamic scheduling during execution.
Data Source
AI summary
An improved method for parsing XML data or NVP data in software is disclosed. The method takes advantage of some modern processors' architecture which has multiple execution units. The multiple execution units allow multiple processing loops to occur in parallel. Instructions can be ordered so that the maximum delay in finishing a task is determined by the execution unit with the most processing to perform. Corresponding cycles in the remaining execution units can then be filled to perform other operations in parallel.


