• DocumentCode
    2872537
  • Title

    A programmable co-processor for profiling

  • Author

    Zilles, Craig B. ; Sohi, Gurindar S.

  • Author_Institution
    Dept. of Comput. Sci., Wisconsin Univ., Madison, WI, USA
  • fYear
    2001
  • fDate
    2001
  • Firstpage
    241
  • Lastpage
    252
  • Abstract
    Aggressive program optimization requires accurate profile information, but such accuracy requires many samples to be collected. We explore a novel profiling architecture that reduces the overhead of collecting each sample by including a programmable co-processor that analyzes a stream of profile samples generated by a microprocessor. From this stream of samples, the co-processor can detect correlations between instructions (e.g., memory dependence profiling) as well as those between different dynamic instances of the same instruction (e.g., value profiling). The profiler´s programmable nature allows a broad range of data to be extracted, post-processed, and formatted, as well as provides the flexibility to tailor the profiling application to the program under test. Because the co-processor is specialized for profiling, it can execute profiling applications more efficiently than a general-purpose processor. The co-processor should not significantly impact the cost or performance of the main processor because it can be implemented using a small number of transistors at the chip´s periphery We demonstrate the proposed design through a detailed evaluation of load value profiling. Our implementation quickly and accurately estimates the value invariance of loads, with time overhead roughly proportional to the size of the instruction working set of the program. This algorithm demonstrates a number of general techniques for profiling, including: estimating the completeness of a profile, a means to focus profiling on particular instructions, management of profiling resources
  • Keywords
    computer architecture; coprocessors; processor; profile samples; profiling; program optimization; programmable co-processor; Computer architecture; Coprocessors; Costs; Data mining; Hardware; Microprocessors; Resource management; Testing; Usability;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High-Performance Computer Architecture, 2001. HPCA. The Seventh International Symposium on
  • Conference_Location
    Monterrey
  • ISSN
    1530-0897
  • Print_ISBN
    0-7695-1019-1
  • Type

    conf

  • DOI
    10.1109/HPCA.2001.903267
  • Filename
    903267