I have a program that takes a week or so to run on an i7 or E5-2690 (single threaded) and I'm looking forward to moving it to a MIC/PHI board (multi-threaded). About 15% of the time is spent on evaluating a single polynomial that uses four 122-element parameter statements as sources for the coefficients in the equation. I would like to try to lock those real coefficients into cache. Is there a way to do that from Fortran? Is there a way to see if they are already being kept in cache (there is a fair amount of work between calls to that function so I doubt it)?
Thanks for any ideas here.