Hardware-Aware Task Fusion for Program Performance Tuning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing programming techniques for task parallelism with data dependency struggle to efficiently speed up programs due to the need for manual rewriting to accommodate various hardware types, leading to increased implementation and maintenance costs.

Innovation Solution

A task tuning method that automatically analyzes programs, identifies task pairs for fusion based on dependency relationships, calculates theoretical peak computational performance, and fuses tasks to optimize performance for the executing hardware, reducing the need for manual hardware-specific programming.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If manual rewriting of programs is performed to accommodate various hardware types, then programming can be tailored for hardware characteristics, but implementation and maintenance costs increase

Engineering Contradiction:
Improvehardware adaptabilityVSAvoidimplementation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system performs self-tuning by automatically analyzing the program and hardware characteristics to determine optimal task fusion configurations. The runtime environment autonomously identifies task pairs that can be fused, calculates performance metrics, and applies fusion transformations without requiring manual programming adjustments for each hardware type.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The invention dynamically changes program parameters by transforming task definitions into fused task definitions based on hardware characteristics. The system modifies task fusion configurations as a parameter to optimize performance for different hardware platforms without changing the core program logic.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If manual rewriting of programs is performed for different hardware types, then hardware-specific optimization is achieved, but maintenance costs increase

Engineering Contradiction:
Improveprogram performanceVSAvoidmaintenance ease
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The system maintains itself by automatically adapting to different hardware types through self-analysis and self-configuration. The runtime environment continuously monitors hardware characteristics and autonomously adjusts task fusion strategies, eliminating the need for manual maintenance and updates for each hardware platform.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The invention creates a universal program that can run on multiple hardware types without requiring hardware-specific versions. The same program source code is transformed automatically to optimize for different hardware architectures, making the program universally applicable while maintaining hardware-specific performance optimization.

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

3Speed

If tasks are fused to optimize computational performance, then program execution speed improves, but task dependency management becomes more complex

Engineering Contradiction:
Improveexecution speedVSAvoidtask management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The system employs feedback mechanisms by calculating theoretical peak computational performance metrics for different task fusion configurations and using this information to guide the fusion decisions. The runtime environment continuously monitors execution characteristics and adjusts fusion strategies based on actual performance feedback.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The invention performs preliminary analysis of task dependencies and performance metrics before executing task fusion. The system pre-calculates potential fusion configurations and their theoretical performance gains, then selects and applies the optimal fusion strategy during execution, avoiding complex real-time decision-making.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250307035A1Computer-readable recording medium storing task tuning program and task tuning method
Publication Date: 2025.10.02 FUJITSU LTD
  • US20250307035A1 patent drawing
  • US20250307035A1 patent drawing
  • US20250307035A1 patent drawing

AI summary

A recording medium stores a program for causing a computer to execute a process including: analyzing a program and detecting tasks; identifying pairs of tasks that are able to be fused into one task among the tasks that have been detected based on a dependency relationship between the tasks; for each of the pairs, calculating theoretical peak computational performance in a case where tasks of the pairs are fused based on a first value that represents a memory bandwidth per computational performance when tasks of the pairs are fused, a second value that represents a memory bandwidth per computational performance of hardware that executes the program, and computational performance of the hardware; determining a fusion target pair from the pairs that have been identified based on the theoretical peak computational performance that has been calculated; and fusing tasks of the fusion target pair that has been determined in the program.