Composite Programming for Hardware-Specific Compiler Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing black box compilers lack customizability, leading to sub-optimal performance of executable programs due to their inability to handle the diverse hardware platforms and new abstractions in high-level programming languages.

Innovation Solution

A composite programming language with two levels - an object program level and a metaprogram level - allows programmers to customize the compilation process by specifying optimizations directly, using augmented compilers that recognize metaprograms to optimize for specific hardware environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If black box compilers are used, then ease of operation is improved, but manufacturing precision deteriorates

Engineering Contradiction:
Improveease of useVSAvoidperformance optimization
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The patent segments the compilation process into distinct phases (parsing, optimization, code generation) that can be independently controlled and customized. Programmers can selectively enable or disable specific optimization passes and compilation strategies for different hardware targets without redesigning the entire compiler.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces dynamic configurability to the compilation process through compiler flags, optimization levels, and target-specific parameters that allow the compilation behavior to adapt to different requirements. The system can dynamically adjust optimization strategies based on the intended hardware platform and performance goals.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If black box compilers are used, then device complexity is reduced, but adaptability deteriorates

Engineering Contradiction:
Improvecompiler complexityVSAvoidhardware platform adaptability
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal compilation framework that can handle multiple high-level programming languages and target various hardware platforms through a common intermediate representation and configurable optimization pipeline. This multi-functional design allows the same compiler infrastructure to serve diverse purposes.

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

Solution Approach 2:

The patent adds a configuration dimension to the compilation process, introducing layers of controllability through optimization flags, target architecture specifications, and performance parameters. This additional dimension enables adaptability without increasing the core compiler's structural complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Ease of operation

If programmers focus on program logic, then ease of operation is improved, but productivity deteriorates

Engineering Contradiction:
Improveprogramming simplicityVSAvoidperformance output
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent enables the compilation system to automatically select and apply appropriate optimization strategies based on the program characteristics and target hardware. The compiler performs self-optimization without requiring programmers to manually intervene in the compilation process, thus maintaining programming simplicity while achieving high performance.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent incorporates feedback mechanisms where compilation results and performance metrics are used to automatically adjust optimization parameters for subsequent compilations. The system learns from compilation outcomes and refines its optimization choices, improving productivity without adding complexity to the programming task.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12386601B2Extensible compilation using composite programming for hardware performance enhancements
Publication Date: 2025.08.12 CURAECHOICE INC
  • US12386601B2 patent drawing
  • US12386601B2 patent drawing
  • US12386601B2 patent drawing

AI summary

Systems, methods, and machine-readable media are disclosed for enabling high-performance programming via a composite programming language that gives programmers complete control over the compilation process. The composite programs include two language levels: an object program level (source code), and a metaprogram level that describes how a compiler should be customized in order to optimize the source code for a target hardware environment. When an augmented compiler receives a composite program, it recognizes the metaprogram and implements the one or more parameters specified within the composite program to optimize the compiler for a given target. Once the augmented compiler has been, it proceeds with compiling the source code included in the composite program. The compiled code is then output as machine language and may be executed by one or more computing systems.