Software Tuning, Performance Optimization & Platform Monitoring
Discussion around monitoring and software tuning methodologies, Performance Monitoring Unit (PMU) of Intel microprocessors, and platform monitoring
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.

How to enusre wbinvd complete?


Hi, I have a question about "wbinvd" instruction. 

According to Intel manual, it said "After executing this instruction, the processor does not wait for the external caches to complete their write-back and flushing operations before proceeding with instruction execution. It is the responsibility of hardware to respond to the cache write-back and flush signals. The amount of time or cycles for WBINVD to complete will vary due to size and other factors of different cache hierarchies."

I am wondering is there any method to force the program waits for unit the external cache flushing complete caused by WBINVD instruction? Then we can measure the overhead of WBINVD instruction. 

Any suggestion will be helpful. Thanks~

0 Kudos
0 Replies