[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: XP1000 and Linux

On Tue, Mar 23, 1999 at 08:12:34PM -0500, Greg Lindahl wrote:
> > Twice the memory bandwidth (Stream is 500 ish vs 1000 ish), twice
> > the memory slots, and twice the pci busses I believe.
> Both have 2 PCI busses -- same chipset, remember? 

Well same chipset doesn't mean the PCI slots are there, but yes
your right and I was wrong.

>As for stream,
>that's hardly settled.

I'm going on slides from a presentation Compaq recently gave during
a beowulf/linux presentation here last week.  After reading back further 
back there seems to be reports of very similiar bandwidth with stream.

I guess maybe the XP1000 that compaq quoted had one memory bank full
instead of two.

To make stream results more accurate on the XP1000 and DS20 with small
memory configs I'd suggest replacing streams second call with something 
similiar to:

int clockspeed;              \

#ifdef __alpha
static inline unsigned int
        unsigned long r;

        asm volatile("rpcc %0" : "=r"(r));  /* read the process cycle counter */
        return r;                           /* return lower 32 bits */
#endif  /* __alpha */

second ()                       /* on first call find the relationship */
                                /* between seconds and clock cycles, */
                                /* otherwise return a double thats wallclock */
  /* Use getcycle code to get a more accurate clock on intel-linux */
  unsigned long long begin, end;
  static int inittime = 0;
  if (inittime == 0)
      inittime = 1;
      begin = getcycle ();
      sleep (5);
      end = getcycle ();
      clockspeed = (end - begin) / 5;   /* set global clockspeed */
      printf ("Detected clock is %f\n", (float) clockspeed / 1000000);
      printf ("Warning timings longer then %4.2f seconds will fails\n",
  return ((double) (getcycle ()) / clockspeed);

Be warned though that once the cycle counter flips (every 8 seconds
on the 21264) my counter breaks.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []