Heterogeneous Processor Workload Offloading via Service Call Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods require recompiling source code to move work units between processors of different architectures, which is inefficient and limiting in heterogeneous computing environments.

Innovation Solution

A method to determine whether work units, specifically those containing service call or program call instructions, are eligible for offloading to a processor with a different architecture by examining these instructions and ensuring they are supported by the target processor, allowing offloading without recompilation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If work units are moved between processors of different architectures, then workload distribution and processing efficiency are improved, but recompiling source code is required which increases complexity and time consumption

Engineering Contradiction:
Improveworkload distribution efficiencyVSAvoidsource code recompilation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary analysis of work units to identify service call instructions and determine compatibility with target processors before actual offloading occurs. This advance preparation eliminates the need for recompilation by pre-verifying instruction compatibility, thus resolving the contradiction between improved workload distribution and reduced compilation complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention introduces an intermediary compatibility determination process that acts as a mediator between the source processor and target processor. This intermediary analysis of service call instructions verifies whether the target processor can execute the work unit without modification, enabling direct offloading without recompilation and thereby improving productivity while maintaining simplicity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If work units are offloaded to heterogeneous processors, then processing capacity and flexibility are enhanced, but determining eligibility requires examining service call instructions which increases analysis time

Engineering Contradiction:
Improveprocessor compatibilityVSAvoideligibility determination time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system extracts and specifically examines only the service call instructions from work units to determine processor compatibility, rather than analyzing the entire work unit. This selective extraction approach enables the system to achieve comprehensive compatibility verification while minimizing analysis time, thus resolving the contradiction between enhanced adaptability and reduced time loss

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If service call instructions are examined to determine offloading eligibility, then accurate compatibility assessment is achieved, but the process becomes more complex compared to simple architecture matching

Engineering Contradiction:
Improvecompatibility assessment accuracyVSAvoidinstruction examination complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The compatibility assessment process is segmented into distinct steps: identifying service call instructions, extracting them from the work unit, and comparing them against the target processor's supported instruction set. This segmentation transforms a complex monolithic process into manageable discrete operations, achieving high measurement precision while controlling complexity through structured analysis

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8533720B2Offloading work from one type to another type of processor based on the count of each type of service call instructions in the work unit
Publication Date: 2013.09.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8533720B2 patent drawing
  • US8533720B2 patent drawing
  • US8533720B2 patent drawing

AI summary

A work unit (e.g., a load module) to be executed on one processor may be eligible to be offloaded and executed on another processor that is heterogeneous from the one processor. The other processor is heterogeneous in that is has a different computing architecture and/or different instruction set from the one processor. A determination is made as to whether the work unit is eligible for offloading. The determination is based, for instance, on the particular type of instructions (e.g., particular type of service call and/or program call instructions) included in the work unit and whether those types of instructions are supported by the other processor. If the instructions of the work unit are supported by the other processor, then the work unit is eligible for offloading.