IP Library › Granted Patent US 10,496,514
Granted Patent B2
US 10,496,514 · App. 14/948,224 · Granted Dec 3, 2019

System and method for parallel processing prediction

Inventor: Kevin D. Howard (Tempe, AZ)
G06F11/3442G06N5/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,496,514
App. No.
14/948,224
Granted
Dec 3, 2019
Kind
B2
Abstract

Systems, methods, and computer program products are provided for space-time complexity speedup for computer algorithms in terms of processing time as a function of dataset size and type, showing serial, sub-linear, linear and superlinear speedup. Serial and parallel effects can be processed and calculated from a decomposed algorithm's sequential functional components, allowing the identification and use of the parallelizable components.

Claims (31)

1. A method of parallel processing prediction for software, comprising:

receiving a software algorithm;

determining a plurality of execution pathway components for the software algorithm;

determining a plurality of input workload attributes related to processing times of the plurality of execution pathway components;

defining a plurality of initial input dataset values having one or more associated workload attributes based on the plurality of execution pathway components;

defining a plurality of workload scaling factors to facilitate prediction of the processing times of the plurality of execution pathway components;

defining a plurality of scaled processing time prediction functions based on the plurality of initial input dataset values for the plurality of execution pathway components

defining a plurality of speedup prediction functions based on the plurality of scaled processing time prediction functions;

dynamically scaling a plurality of current input dataset values based on the plurality of workload scaling factors; and

outputting how many of a plurality of computer processing elements will be used based on the scaled plurality of current input dataset values.

2. The method of claim 1 , further including processing and calculating the speedup of the software algorithm.

3. The method of claim 1 , further including determining if one or more of the plurality of execution pathway components are serial components.

4. The method of claim 1 , further including determining if one or more of the plurality of execution pathway components are parallel components.

5. The method of claim 1 , further including determining if one or more of the plurality of execution pathway components are mixed serial and parallel components.

6. The method of claim 1 , further including determining and flagging serial overhead of the software algorithm using time complexity.

7. The method of claim 1 , wherein the plurality of computer processing elements includes a plurality of computer processor cores.

8. The method of claim 1 , wherein the plurality of computer processing elements includes a plurality of computer processors.

9. A method of parallel computer processing prediction, comprising:

receiving a software algorithm;

determining a plurality of execution pathway components for the software algorithm;

determining a plurality of time scaling factors for the plurality of execution pathway components;

determining scaled workload prediction functions based on scaled workload timings for the plurality of execution pathway components;

dynamically scaling processing times based on the time scaling factors for the plurality of execution pathway components; and

determining input values for a plurality of computer processing elements based on the scaled processing times.

10. The method of claim 9 , further including identifying a polynomial based on one or more scaled dataset sizes and timings.

11. The method of claim 9 , further including determining if one or more of the plurality of execution pathway components are serial or parallel components.

12. The method of claim 9 , further including determining and flagging overhead computing resources.

13. The method of claim 12 , wherein the overhead computing resources includes computing memory.

14. The method of claim 12 , wherein the overhead computing resources includes computing bandwidth.

15. The method of claim 9 , wherein the plurality of computer processing elements includes a plurality of computer processor cores.

16. The method of claim 9 , wherein the plurality of computer processing elements includes a plurality of computer processors.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2026
From: HOWARD, KEVIN D.
To: PATHWAY ANALYTICS, INC.
Reel/Frame 074230/0961 →
Continuity (2)
Provisional Application 62082518 · Nov 20, 2014
Related Publication 20160148102A1 · May 26, 2016
Cited By (4)
US 12,307,528 US 12,411,671 US 12,602,726 US 12,731,189