Re: GetTickCount() performance

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance

From: Jochen Kalmbach (nospam-Jochen.Kalmbach_at_holzma.de)
Date: 11/16/04


Date: Mon, 15 Nov 2004 23:28:46 -0800

Hi Tim Roberts,

> But is that with a uniprocessor HAL or a multiprocessor HAL? As we
> said earlier in the thread, QueryPerformaceCounter with a uniprocessor
> HAL reads the motherboard countdown timer registers, which are
> accessed through I/O ports and take multiple microseconds. QPC with a
> multiprocessor HAL (which does not necessarily require a
> multiprocessor system) uses "rdtsc".

Ok, I looked at all hal-versions (XP) and here is the result:

hal.dll: It uses AT-Timer (port 40/43) and it is a hughe function

halsp.dll: It uses two different methods: Either AT-Timer (port 40/43) or
Timer at (port 0C74/0C76) and it is ahughe function

halaacpi.dll: (Hard to find out; but I guess some internal timer-tick)

halacpi.dll: (Hard to find out; but I guess some internal timer-tick)

halapic.dll: Either rdtsc or AT-Timer (port 40/43)

halmps.dll: Either rdtsc or AT-Timer (port 40/43)

halmacpi.dll: Either rdtsc or AT-Timer (port 40/43)

-- 
Greetings
  Jochen
   My blog about Win32 and .NET
   http://blog.kalmbachnet.de/