-malign-double

Jed Brown jed at 59A2.org
Tue Nov 17 15:13:38 CST 2009


Barry Smith wrote:
> 
> On Nov 16, 2009, at 2:50 PM, Jed Brown wrote:
> 
>>
>> so.  BTW, should we put PAPI support into PETSc, it no longer needs
>> kernel patches with 2.6.31.
>>
>     The basics are there in config/PETSc/packages/PAPI.py and

This file does not exist in the repo.

> initialization in plog.c and eventLog.c It would be good to add counts
> for cache misses etc.

Cache misses would be neat, but we have the problem of where to display
it (there is limited space for extra columns in -log_summary).  But it
would be very slick to --download-papi and get flops for external
libraries and user code.  I think this can be made to work reliably on
Linux from kernel 2.6.31 onward.

> I got frustrated because with intel there are multiple instructions to
> do similar things that have separate counts so the results you get out
> are not really what you want.

I see what you mean.  What do we want?  Some candidates

L1_ICM - L1I miss
L1_DCM - L1D miss
L2_DCM - L2D miss

L1_DCH (L1D hits) or LST_INS (load/store inst.) to be able to scale miss rates

For flops we have

FP_INS - floating point instructions, would count FMA as one, probably packed vector ins. are one
FP_OPS - derived quantity, not clear how they distinguish between single/double
SP_OPS/DP_OPS - probably better, use whichever agrees with PETSc's precision
VEC_SP/VEC_DP - vector instructions, not sure this is relevant because
  everything is a vector instruction these days (compilers rarely use x87).


Note that I'm totally new to PAPI and the interface does seem screwy
(not to mention all the private nonsense dumped into the header and the
documentation is in MS-Word), but it offers a lot more than just calling
rdtsc myself.

Jed

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 261 bytes
Desc: OpenPGP digital signature
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20091117/727c16e5/attachment.sig>


More information about the petsc-dev mailing list