Что происходит, когда вызывается QueryPerformanceCounter?

Я изучаю точные последствия использования QueryPerformanceCounter в нашей системе и пытаюсь понять его влияние на приложение. Я могу видеть, запустив его на моем 4-ядерном компьютере с одним процессором, что для его запуска требуется около 230 нс. Когда я запускаю его на 24-ядерном 4-процессорном процессоре Xeon, его запуск занимает около 1,4 мс. Более интересно то, что на моей машине, когда она работает в нескольких потоках, они не влияют друг на друга. Но на компьютере с несколькими процессорами потоки вызывают какое-то взаимодействие, которое заставляет их блокировать друг друга.Мне интересно, есть ли какой-то общий ресурс на шине, который они все запрашивают? Что именно происходит, когда я вызываю QueryPerformanceCounter и что он действительно измеряет?

Ответы на вопрос(4)

Ваш ответ на вопрос