True, now I see many samples from the array.

Thanks and sorry for the naïve question.
Juan

2010/5/4 stephane eranian <eran...@googlemail.com>

> 2010/5/3 Juan Ángel Lorenzo <jalmailingli...@gmail.com>:
> > Hi all,
> >
> > I'm using one of the perfmon's example codes, mont_dear.c, to test the
> > accessed memory positions on a Itanium2 Montvale. Basically, what I do is
> to
> > modify the do_test() function to store in a file the accessed memory
> > positions. Later, I compare them with the sampled addresses given by the
> > Event Address Registers (EARs). Surprisingly, all the sampled addresses
> are
> > always lower than the ones accessed in the do_test() function. Am I doing
> > something wrong? This is the modified function I use:
> >
> You have modified the program heavily. It is likely now your cache
> misses are coming
> from libc and fprintf() in particular. You don't need to save the
> addresses in a file to
> compare them. All you need to do is print the boundaries of the array.
> I would even
> move the allocation elsewhere so it would not interfere. Also be
> careful with compiler
> optimizations, the code is very simple and may be optimized away. I
> would do something
> slightly more complicated in the test loop, at least make sure the
> data is used after the
> loop is finished.
>
>
> > long do_test(unsigned long size)
> > {
> >     int i, sum  = 0;
> >     int *array;
> >     int *addr;
> >
> >     FILE *fd;
> >     fd = fopen("addresses.dat","w");
> >
> >     printf("array size %.1fKB\n", (size*sizeof(int))/1024.0);
> >     array = (int *)malloc(size * sizeof(int));
> >
> >     if (array == NULL ) {
> >         printf("line = %d No memory available!\n", __LINE__);
> >         exit(1);
> >     }
> >
> >     for(i=0; i<size; i++) {
> >         array[i]=1;
> >         addr = array+i;
> >         fprintf(fd,"%p array[%d]: %d\n",addr,i,array[i]);
> >
> >     }
> >
> >     fclose(fd);
> >     return sum;
> > }
> >
> >
> > Thanks in advance for all the comments you can provide,
> > Juan
> >
> >
> >
> ------------------------------------------------------------------------------
> >
> > _______________________________________________
> > perfmon2-devel mailing list
> > perfmon2-devel@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/perfmon2-devel
> >
> >
>
------------------------------------------------------------------------------
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to