Resolving Page Faults in Coherent Accelerators

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Coherent accelerators, which use effective addresses for direct memory access, face challenges in handling page faults as they generate asynchronous interrupts that cannot be resolved by the accelerator itself, as it lacks an operating system page fault handler, leading to inefficiencies in DMA setup and system operations.

Innovation Solution

The solution involves identifying the process causing the page fault using an interrupt source number, recreating the page fault on a CPU, and using the operating system's page fault handler to resolve it, allowing the coherent accelerator to resume operations or abort commands as necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If coherent accelerators use effective addresses for direct memory access, then the number of instructions required for DMA setup is reduced, but the system experiences asynchronous page faults that cannot be resolved by the accelerator itself

Engineering Contradiction:
ImproveDMA setup efficiencyVSAvoidpage fault handling capability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces an intermediary mechanism where the processor acts as a mediator between the coherent accelerator and the operating system. When the accelerator generates an asynchronous page fault interrupt, the processor receives the interrupt, identifies the affected process using the interrupt source number, and triggers the OS page fault handler to resolve it. This intermediary approach allows the accelerator to maintain its simple effective address mode while still enabling proper page fault handling through the processor-OS interface.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If coherent accelerators generate asynchronous interrupts for page faults, then the accelerator can continue operations without waiting for OS handling, but the processor must identify and recreate the page fault context to resolve it

Engineering Contradiction:
Improveinterrupt response speedVSAvoidinterrupt handling complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent employs a copying mechanism where the processor recreates the original page fault condition by executing the process that generated the interrupt. The processor uses the interrupt source number to identify the process and reproduces the memory access that caused the page fault, allowing the OS page fault handler to resolve it in the proper context. This copying approach enables asynchronous interrupt handling while maintaining the simplicity of the accelerator design.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9928142B2Resolving page faults out of context
Publication Date: 2018.03.27 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9928142B2 patent drawing
  • US9928142B2 patent drawing
  • US9928142B2 patent drawing

AI summary

Systems, methods, and computer program products to perform an operation comprising determining, by a processor, a process identifier of a process associated with a page fault based on an interrupt source number, wherein the page fault was triggered by a coherent accelerator, executing the process on the processor to recreate the page fault on the processor, and resolving the page fault by an operating system executing on the processor.