Using QueryPerformanceCounter in Perf Counter

I am using QueryPerformanceCounter to determine the amount of time a function takes (transforming XSL templates), and applying that value to a PerformanceCounter object (AverageTimer32) using the following psuedo-code:
            _perfmonAvg = New PerformanceCounter("PG", "TimeToTransform", Me.ID.ToString, False)
            _perfmonBase = New PerformanceCounter("PG", "TimeToTransformBase", Me.ID.ToString, False)
            ' End If
            _perfmonAvg.RawValue = 0
            _perfmonBase.RawValue = 0

    Private Sub StartTime()
    End Sub
    Private Sub UpdatePerformance()
            Dim _end As Int64
            _timetotransform = _end - _startTime
        Catch oE As Exception
        End Try

    End Sub

When I look at the performance counter, I get a value of .778 if the scale is set to 10,000.
I've looked at;en-us;306978, but it doesn't answer my questions:
1) What is the .778 value in reference to seconds ? (ms, microsecs,ticks? )
2) Do I need to divide using QueryPerformanceFrequency to determine secs/ms?
3) what is the proper setting for the scale to make this read in ms?

Thanks Experts!

Who is Participating?
_TAD_Connect With a Mentor Commented:

I'm not quite certain, but it should be pretty easy to determine.  I mean, after all you are talking about powers of 10 here.  Did the process take 2 seconds or did it take 20 seconds?  and ticks... there are 60 ticks to a second, and there are 1,000 ms to second and 100,000 microseconds to a second

soooo... at a scale of 10,000 and you get .778

If it took approx. 7-8 seconds to complete, you are using ms

if it took a bare fraction of a second you are using microseconds or ticks

Based on your scale and your number I'd guess it to be ms
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.