This affects every kernel I tried, 4.9.[54|35|24], 3.18.27, RH 3.10.0-693*.
The test machine is a Dell R740 with 2X8168 and 384GB.


#include <time.h>
#include <stdio.h>
#include <sys/time.h>

inline long GetPerf()
{
   int _hi, _lo;
   __asm__ __volatile__ ("rdtsc":"=a" (_lo), "=d"(_hi));
   return ((long) _hi << 32) | _lo;
}

int main()
{

   struct timespec ts;
   int i, count;
   long start, end, delta, min, max, total, avg;

   count = 100;
   min = 0x7fffffff;
   max = 0;
   total = 0;

   for (i = 0; i < count; i++)
   {

      start = GetPerf();

      clock_gettime(CLOCK_REALTIME, &ts);

      end = GetPerf();

      delta = end - start;

      if (delta > max) max = delta;
      if (delta < min) min = delta;
      total += delta;
   }

   avg = total / count;

   printf("min: %ld\n", min);

--

//E. F. Berkley Shands, MSc
Senior Software Architect/Engineer
Exegy Systems Engineering//

**Exegy Inc.**

349 Marshall Road, Suite 100

St. Louis , MO 63119

Direct: (314) 218-3600 X450

Cell: (314) 303-2546

Office: (314) 218-3600

Fax: (314) 218-3601

The Usual Disclaimer follows...


________________________________

This e-mail and any documents accompanying it may contain legally privileged 
and/or confidential information belonging to Exegy, Inc. Such information may 
be protected from disclosure by law. The information is intended for use by 
only the addressee. If you are not the intended recipient, you are hereby 
notified that any disclosure or use of the information is strictly prohibited. 
If you have received this e-mail in error, please immediately contact the 
sender by e-mail or phone regarding instructions for return or destruction and 
do not use or disclose the content to others.

Reply via email to