Application Verifier - Stop Codes - Perf

The Perf test check for efficient use of APIs that impact system performance and energy consumption, such as calling a Windows function that uses an incorrect wait period.

The following stop codes are contained in this set of tests.

Any use of a Windows function that induces a defined wait duration of less than 300 ms is an energy efficiency bug. Switch to using an event based design or extend the wait duration.

Probable cause

When calling any wait type API with a wait/delay interval duration, should be greater or equal to 300 ms. Calling this API with lower than 300 ms causes Windows to wake the CPUs too often. When Windows is forced to wake the CPUs, more electrical energy is consumed which can greatly decrease battery life and cause unnecessary power draw.

Information displayed by Application Verifier
  • Format: -  ERROR: %ws(...%ws=%d...). %ws
  • Parameter 1 - Address of API Name (use du to dump the string)
  • Parameter 2 - Address of Parameter Name (use du to dump the string)
  • Parameter 3 - Parameter value (wait / delay duration in ms)
  • Parameter 4 - Address of Additional Info (use du to dump the string)

Additional Information
  • Test Layer: Power
  • Stop ID: ERROR_DELAY_INTERVAL_DURATION_TOO_SHORT
  • Stop code: 7000000
  • Severity: Error
  • One-time error: 
  • Error report: Break
  • Log to file: yes
  • Create backtrace: yes

Use of a tolerable delay mechanism less than 300 ms does not allow the system sufficient break intervals and is an energy efficiency bug. Switch to using an event based design or extend the delay duration.

Probable cause

When calling any wait type API with a tolerable delay, duration should be greater or equal to 300 ms. Calling this API with lower than 300 ms causes Windows to wake the CPUs too often. When Windows is forced to wake the CPUs, more electrical energy is consumed which can greatly decrease battery life and cause unnecessary power draw.

Information displayed by Application Verifier
  • Format: -  ERROR: %ws(...%ws=%d...). %ws
  • Parameter 1 - Address of API Name (use du to dump the string)
  • Parameter 2 - Address of Parameter Name (use du to dump the string)
  • Parameter 3 - Parameter value (tolerable variance in ms)
  • Parameter 4 - Address of Additional Info (use du to dump the string)

Additional Information
  • Test Layer: Power
  • Stop ID: ERROR_TOLERABLE_VARIANCE_DURATION_TOO_SHORT
  • Stop code: 7000001
  • Severity: Error
  • One-time error: 
  • Error report: Break
  • Log to file: yes
  • Create backtrace: yes

Any use of a Windows function that induces a defined wait duration of less than 300 ms is an energy efficiency bug. Switch to using an event based design or extend the wait duration.

Probable cause

When calling any wait type API with a wait/delay interval, duration should be greater or equal to 300 ms. Calling this API with lower than 300 ms can cause Windows to wake the CPUs too often. When Windows is forced to wake the CPUs, more electrical energy is consumed which can greatly decrease battery life and cause unnecessary power draw.

Information displayed by Application Verifier
  • Format: -  WARNING: %ws(...%ws=%d...). %ws
  • Parameter 1 - Address of API Name (use du to dump the string)
  • Parameter 2 - Address of Parameter Name (use du to dump the string)
  • Parameter 3 - Parameter value (wait / delay duration in ms)
  • Parameter 4 - Address of Additional Info (use du to dump the string)

Additional Information
  • Test Layer: Power
  • Stop ID: WARNING_DELAY_INTERVAL_DURATION_TOO_SHORT
  • Stop code: 7000002
  • Severity: Warning
  • One-time error: 
  • Error report: Break
  • Log to file: yes
  • Create backtrace: yes

Use of a tolerable delay mechanism less than 300 ms does not allow the system sufficient break intervals and is an energy efficiency bug. Switch to using an event based design or extend the delay duration.

Probable cause

When calling any wait type API with a tolerable variance, duration should be greater or equal to 300 ms. Calling this API with lower than 300 ms can cause Windows to wake the CPUs too often. When Windows is forced to wake the CPUs, more electrical energy is consumed which can greatly decrease battery life and cause unnecessary power draw.

Information displayed by Application Verifier
  • Format: -  WARNING: %ws(...%ws=%d...). %ws
  • Parameter 1 - Address of API Name (use du to dump the string)
  • Parameter 2 - Address of Parameter Name (use du to dump the string)
  • Parameter 3 - Parameter value (tolerable variance in ms)
  • Parameter 4 - Address of Additional Info (use du to dump the string)

Additional Information
  • Test Layer: Power
  • Stop ID: WARNING_TOLERABLE_VARIANCE_DURATION_TOO_SHORT
  • Stop code: 7000003
  • Severity: Warning
  • One-time error: 
  • Error report: Break
  • Log to file: yes
  • Create backtrace: yes

Adjusting the system wide timer resolution can have large energy efficiency impacts and normally does not lead to better performance. Do not use this API.

Probable cause

Allowing the system to select this value is best for both performance and energy efficiency. Adjusting the system timer can greatly decrease battery life and cause unnecessary power draw.

Information displayed by Application Verifier
  • Format: -  ERROR: %ws(...%ws=%d...). %ws
  • Parameter 1 - Address of API Name (use du to dump the string)
  • Parameter 2 - Address of Parameter Name (use du to dump the string)
  • Parameter 3 - Parameter value (timer resolution in ms)
  • Parameter 4 - Address of Additional Info (use du to dump the string)

Additional Information
  • Test Layer: Power
  • Stop ID: ERROR_SYSTEM_TIMER_RESOLUTION_ADJUSTMENT
  • Stop code: 7000004
  • Severity: Error
  • One-time error: 
  • Error report: Break
  • Log to file: yes
  • Create backtrace: yes

Adjustments were made to the running system that will likely increase power consumption. Only applications presenting multimedia (video/audio) that expect no user interaction should call these APIs.

Probable cause

Avoiding use of this API except for multimedia applications (video/audio) that expect no user interaction is recommended to improve energy efficiency. Calling this API causes Windows to forgo power saving operations and will greatly decrease battery life and/or cause unnecessary power draw.

Information displayed by Application Verifier
  • Format: - The API named %ws was called which increases system energy consumption. %ws
  • Parameter 1 - Address of API Name (use du to dump the string)
  • Parameter 2 - Address of Additional Info (use du to dump the string)
  • Parameter 3 - N/A
  • Parameter 4 - N/A

Additional Information
  • Test Layer: Power
  • Stop ID: WARNING_SYSTEM_POWER_USAGE_INCREASE
  • Stop code: 7000005
  • Severity: Warning
  • One-time error: 
  • Error report: Break
  • Log to file: yes
  • Create backtrace: yes

See Also

Application Verifier - Stop Codes and Definitions

Application Verifier - Overview

Application Verifier - Features

Application Verifier - Testing Applications

Application Verifier - Tests within Application Verifier

Application Verifier - Debugging Application Verifier Stops

Application Verifier - Frequently Asked Questions