A program product and method of compiling a computer program to optimize
performance of a computer program. First, after initialization, a
profiling run is done on computer code which may include program code
blocks and program data. Execution of each computer program step is
monitored and each occurrence of each individual code unit is logged, e.g.
each instruction block or block of data. Frequently occurring code units
are identified periodically as hot blocks. An initial snapshot of hot
blocks is logged, e.g., when identified hot blocks exceed an initial block
number. Profiling continues until the profiling run is complete, updating
identified hot blocks and logging a new current snapshot whenever a
current set of identified hot blocks contains a selected percentage of
different hot blocks. Snapshots are selected as representative to
different program modes. The program is optimized according to program
modes.
Продукт программы и метод составлять компьутерную программу для того чтобы оптимизировать представление компьутерной программы. Во первых, после начинания, побежали профилировать, котор сделан на компьютерном коде который может включить блоки Кодего программы и данные по программы. Исполнение каждого шага компьутерной программы проконтролировано и внесено в журнал каждое возникновение каждого индивидуального блока Кодего, например. каждый блок инструкции или совокупность данных. Част происходя блоки Кодего определены периодически как горячие блоки. Внесен в журнал первоначально snapshot горячих блоков, например, когда определенные горячие блоки превышают первоначально номер блока. Профилировать продолжается до тех пор пока побежали профилировать, котор не быть закончен, уточняющ определенные горячие блоки и вносить новый в настоящее время snapshot в журнал когда в настоящее время комплект определенных горячих блоков содержит выбранный процент по-разному горячих блоков. Snapshots выбраны как представитель к по-разному режимам программы. Программа оптимизирована согласно режимам программы.