Arithmetic Processing Device Prefetch Command Disabling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Arithmetic processing devices with both software and hardware prefetch mechanisms often execute unnecessary prefetch commands, leading to decreased performance due to increased command numbers and transfer amounts, which can lower transfer speed and inefficiency in cache memory usage.

Innovation Solution

An arithmetic processing device with a decoder, a command holding unit, a hardware prefetch controller, and a controller that independently executes prefetches and determines whether prefetch commands are unnecessary, disabling them to reduce memory accesses by identifying and eliminating unnecessary prefetch commands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If both software prefetch and hardware prefetch are executed together, then cache memory data availability is improved, but unnecessary prefetch commands increase leading to decreased transfer speed

Engineering Contradiction:
Improvedata waiting timeVSAvoidtransfer speed
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent implements a feedback mechanism where the hardware prefetch controller monitors prefetch commands issued by software and provides feedback information to disable redundant prefetch commands. This feedback loop prevents unnecessary prefetch operations while maintaining the benefits of both software and hardware prefetch mechanisms.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent identifies and discards unnecessary prefetch commands by comparing software prefetch commands with hardware prefetch operations. When redundancy is detected, the software prefetch command is discarded to avoid duplicate transfers, thereby maintaining transfer speed while preserving necessary prefetch operations.

Inventive Principle:
Principle #34Discarding and recovering

2Reliability

If the number of prefetch commands is increased, then cache memory hit ratio is improved, but command processing overhead increases leading to performance decrease

Engineering Contradiction:
Improvecache hit ratioVSAvoidcommand processing complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts and removes unnecessary prefetch commands from the command stream by implementing a filtering mechanism. This extraction process eliminates redundant commands while preserving necessary prefetch operations, thereby reducing command processing overhead without compromising cache hit ratio.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary control mechanism that mediates between software prefetch commands and hardware prefetch operations. This intermediary layer coordinates the two prefetch mechanisms, preventing redundant commands from being executed while maintaining high cache hit ratios.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Force

If software prefetch commands are added to the command stream, then data pre-loading capability is improved, but bus transfer amount increases leading to lowered transfer speed

Engineering Contradiction:
Improvedata pre-loading capabilityVSAvoidbus transfer amount
Core Design Contradiction:
ForceVSQuantity of substance

Solution Approach 1:

The patent merges software prefetch commands with hardware prefetch operations into a unified prefetch mechanism. By combining both approaches, the system achieves effective data pre-loading while avoiding duplicate transfers, thereby reducing the total bus transfer amount while maintaining strong pre-loading capability.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9830268B2Arithmetic processing device for disabling an unnecessary prefetch command and control method of arithmetic processing device for disabling an unnecessary prefetch command
Publication Date: 2017.11.28 FUJITSU LTD
  • US9830268B2 patent drawing
  • US9830268B2 patent drawing
  • US9830268B2 patent drawing

AI summary

An arithmetic processing device includes a decoder which decodes commands, a command holding unit configured to register therein the commands involving memory accesses among the decoded commands, a hardware prefetch controller configured to execute a prefetch in response to a trigger independent of a prefetch command to execute the prefetch, the prefetch being an operation of transferring data stored in a memory to a cache memory in advance, and a controller configured to determine whether an unnecessary prefetch command to transfer the data, which is to be transferred to the cache memory by the hardware prefetch controller, from the memory to the cache memory is registered in the command holding unit, and disables the unnecessary prefetch command when the unnecessary prefetch command is registered in the command holding unit.