Aggregation Method for I/O Function Profiling During Processor Sleep

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing profiling methods, such as perf, struggle to identify functions performing input/output processing, leading to misidentification of performance bottlenecks in programs, especially when the CPU is in a sleep state waiting for input/output operations.

Innovation Solution

A method involving a non-transitory computer-readable medium that determines if a processor is in a sleep state and identifies functions performing input/output processing using tools like perf, ps, and gstack, aggregating their execution times within a specified period to provide accurate profiling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If existing profiling methods are used to identify functions with long execution times, then functions causing processing delays can be identified, but functions performing input/output processing cannot be accurately identified when the CPU is in a sleep state

Engineering Contradiction:
Improveidentification accuracy of I/O functionsVSAvoidprofiling system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The profiling system is segmented into multiple specialized components: a sleep state detection unit that monitors CPU sleep states, an I/O function identification unit that identifies I/O operations, and an aggregation unit that combines results. This segmentation allows each component to specialize in detecting specific aspects that traditional unified profilers miss, thereby improving identification accuracy without overwhelming complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary aggregation unit that bridges the gap between sleep state detection and I/O function identification. This intermediary component correlates timing information from sleep state detection with I/O operation timestamps, enabling accurate attribution of I/O functions even when the CPU is sleeping, thus resolving the measurement precision issue

Inventive Principle:
Principle #24Intermediary (Mediator)

2Use of energy by moving object

If the CPU enters a sleep state during input/output processing, then power consumption is reduced, but the processor cannot identify which function is performing the input/output operation

Engineering Contradiction:
Improveprocessor power consumptionVSAvoidfunction identification information
Core Design Contradiction:
Use of energy by moving objectVSLoss of information

Solution Approach 1:

The system performs preliminary recording of I/O function timestamps and characteristics before the CPU enters sleep state. By capturing and storing I/O operation information in advance, the system ensures that even when the CPU sleeps and cannot actively monitor, the information about which function performed I/O operations is preserved and can be correlated with sleep state periods

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the aggregation unit receives information about CPU sleep states and cross-references it with recorded I/O operation timing. This feedback loop allows the system to continuously refine its identification of I/O functions by correlating when I/O operations occurred with when the CPU was sleeping, preventing information loss despite power-saving sleep states

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11755101B2Non-transitory computer-readable recording medium and aggregation method
Publication Date: 2023.09.12 FUJITSU LTD
  • US11755101B2 patent drawing
  • US11755101B2 patent drawing
  • US11755101B2 patent drawing

AI summary

Provided is a non-transitory computer-readable recording medium storing an aggregation program causing a computer to execute a process, the process including determining, plural times within a first period of time, whether a first function, which puts a processor into a sleep state, is being executed among functions written in a program being executed by the processor, identifying a second function that is performing either input or output processing among the functions when it is determined that the first function is being executed, and aggregating a number of times that the second function is identified within the first period of time.