Version: 7

LatencyMon

LatencyMon checks if a system running Windows is suitable for processing real-time audio and other tasks.

LatencyMon checks if a system running Windows is suitable for processing real-time audio and other tasks. LatencyMon analyzes the possible causes of buffer underruns by measuring kernel timer latencies and reporting DPC and ISR execution times as well as hard pagefaults. It will provide a comprehensible report and find the kernel modules and processes responsible for causing audio latencies which result in dropouts. It also provides the functionality of an ISR monitor, DPC monitor, and a hard pagefault monitor.

LatencyMon will display the highest latencies of a kernel timer and report the highest execution times of ISR and DPC routines as well as hard pagefaults. In most cases, it will also find the drivers and processes responsible for executing them. It will create a comprehensible report which also displays all sampled data in a detailed manner allowing you to perform in-depth analysis.

The audio latency problem

Windows is not a real-time operating system. All requests to the operating system are delivered on a best effort basis. There are no guarantees whatsoever that requests are delivered within a certain time frame, which are the characteristics of a real-time operating system. That is not a problem for most devices and tasks but this is bad news for audio applications (which are considered soft real-time) because they need to deliver data to the subsystem and the hardware in buffers several times per second. If one or more buffers miss their deadlines and are not delivered in time it has audible consequences which are recognized as dropouts, clicks and pops.

About DPCs and ISRs

The Windows thread dispatcher (also known as scheduler) which is part of the kernel executes threads based on a priority scheme. Threads with higher priority will be given a longer execution time (also known as quantum or time slice) than threads with a lower priority. However the kernel also knows other types of units of execution known as interrupt service routines (ISRs). Devices connected to the system may interrupt on a connected CPU and cause their interrupt service routines to execute. An interrupt can occur on the same processor that an audio program is running on. Any thread that was running on the processor on which an interrupt occurred will be temporarily halted regardless of its priority. The interrupt service routine (ISR) is executed and may schedule a DPC (Deferred Procedure Call) to offload an amount of work. The DPC will most likely run immediately on the same processor which means the audio application will halt until both the ISR and the DPC routines have finished execution. That is because ISRs and DPCs run at elevated IRQL which means they cannot become preempted by the thread dispatcher (scheduler). Therefore to guarantee responsiveness of the system, ISR and DPC routines should execute as fast as possible. Guidelines say that they should not spend more than 100 µs of execution time however this is often not reached due to hardware factors beyond the control of the driver developer. If execution time gets too high, the audio program may be unable to deliver audio buffers to the hardware in a timely manner.

What’s new?

The following changes were made to LatencyMon 7.00 since the previous version 6.71

Bug Fixed: interrupt to process measurements could report the wrong value

The value reported as the interrupt to process interval as well as the interrupt to DPC interval could be wrong in case multiple processor groups were active in the system. This problem has been fixed.

Bug Fixed: number of processors wrongly reported if more than 64 CPUs

In case LatencyJMon or IDLT was run on a system with more than 64 logical CPUs, the number of total CPUs in the system was misreported. This has been fixed.

Bug Fixed: access violation

In rare cases, LatencyMon could display an access violation message while running. This has been fixed.

Latency spike at startup removed

LatencyMon could cause a latency spike at initialization. While this behavior was known and documented, the spike has been removed.

Faster startup times

LatencyMon (as well as IDLT) now starts up much faster than before.

User interface scaling support

LatencyMon allows you to reduce or enlarge the size of the user interface. This option is only available with the professional edition.

Support for visual user interface themes

LatencyMon allows you to select a user interface visual theme. This option is only available with the professional edition.

Visual options

The professional edition offers some options that allow you to change the appearance of the user interface.

User interface changes

Some changes have been applied to the user interface of LatencyMon to improve its appearance.

Customazible column orders

The professional edition now allows you to change the order of columns in views.

Select all and unselect all buttons

The CPUs to be monitored options dialog now has two buttons that allow you to select and unselect all CPUs.

Clipboard support on views

All views now offer the option to copy items to the clipboard.

Text corrections

Some text corrections have been made to the report views.

Unspecified updates and changes

Several minor updates and changes have been applied to the software which are not specified.

You might like this

DirectShow filter pack specifically built for playing anime.
Stress test your graphics card with FurMark
Uncover the finer details about your PC with the easy-to-use NZXT Cam
RealBench uses real, open source applications to test your PC as it would perform in RL. Although it can be competitive, it’s not primarily designed to be more hardcore and time consuming – it’s a benchmark for everyone.

Share this article

Share on facebook
Share on twitter
Share on linkedin
Share on pinterest
Managing Editor
at
PC guide
Been around consoles and computers since his parents bought him a Mattel Intellivision. Spent over a decade as editor of popular print-based video games and computer magazines, including a market-leading PlayStation title. Has written tech content for GamePro, Official Australian Playstation Magazine, PlayStation Pro, Amiga Action, Mega Action, ST Action, GQ, Loaded, and the Daily Mirror. Twitter: @iampaulmcnally

Independent, transparent, rigorous and authentic, our reviews are the most thorough and honest in PC gaming. Learn about our review process.

Leave a Comment