Code Cloning Tracing: a New Approach to Trace Collection

نویسندگان

  • THIERRY LAFAGE
  • Thierry Lafage
  • Erven Rohou
چکیده

Trace-driven simulation is a widely used technique to evaluate microprocessor architecture and/or memory hierarchy performance. However, software trace collection induces signiicant execution slowdown. As on-line simulation induces an even more disastrous slowdown, simulating applications incurring trillions of instructions can not be considered without trace sampling. Therefore continuous software trace collection of the complete workload of a desktop computer cannot be envisaged. The Code Cloning Tracing method is aimed at allowing trace collection on time consuming applications. Sampling the execution is performed through a static duplication and instrumentation of the source code. A rst copy of the code is nearly identical to the original code and will execute most of the time. The second code copy is further instrumented by the trace user and will be parsimoniously executed in order to collect traces without slowing down too much the overall application. At execution time, some events make the execution switch to the instrumented code copy. Other events make the execution return to the original-like code copy. The choice of these events determines the execution overhead, therefore making the approach very exible. This paper presents in details the Code Cloning Tracing method. We also present calvin, the rst prototype implemented to validate the approach. Experiments show that Code Cloning Tracing could be applied on all applications running on desktop computer without signiicantly aaecting user response time when traces are not collected. This opens the way to punctual (let us say one second of CPU) collection of the whole activity of a desktop computer. Code Cloning Tracing: une nouvelle approche pour la collecte de traces de programmes R esum e : La m ethode Code Cloning Tracing expos ee dans cet article permet la collecte de traces sur de grosses applications (co^ uteuses en temps). Un echantillonnage est r ealis e par l'ex ecution alternative de deux copies du code. Une des copies est presque identique au code original et s'ex ecute la plupart du temps ((a une vitesse proche de celle de l'application originale). La seconde copie du code est instrument ee plus lourdement pour permettre la collecte eeective de la trace. Celle-ci est ex ecut ee avec parcimonie pour ne pas trop ralentir l'application test ee. A l'ex ecution, certains ev enements permettent le saut d'une copie a l'autre. L'article pr esente aussi un premier prototype, appel e calvin, pour impl ementer la m ethode Code Cloning Tracing. Pour le moment, …

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1998