Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа №25.doc
Скачиваний:
16
Добавлен:
01.05.2014
Размер:
167.94 Кб
Скачать

На Паскале

Turbo Profiler Version 2.1 Sat Apr 16 21:28:36 2005

Program: D:\ETU\8‘…Њ…‘~1\Њ…’ђЋ‹~1\LAB2\1_PART~2\PROST0_P.EXE File PROST0_P.PAS

Time Counts

program prost;

{ Џа®Ја ¬¬  ЈҐ­Ґа жЁЁ Їа®бвле зЁбҐ« ЇаЁ Ї®¬®йЁ  «Ј®аЁв¬  ќўЄ«Ё¤  }

const maxprime=1000;

type

intarr=array[0..maxprime] of integer;

var

primes: intarr;

j,lastprime, curprime: integer;

0.0014 1 begin

0.0000 1 primes[0] := 2;

0.0000 1 primes[1] := 3;

0.0000 1 lastprime := 1;

0.0000 1 curprime := 3;

0.0001 1 writeln('prime0 = ', primes[0]);

0.0000 1 writeln('prime1 = ', primes[1]);

0.0008 499 while(curprime < MAXPRIME) do

begin

0.0567 498 for j := 0 to lastprime do

0.4351 15120 if((curprime mod primes[j]) = 0)

then begin

0.0015 333 curprime := curprime +2;

0.0014 333 break;

0.5972 14787 end;

0.0561 498 if((j+1) <= lastprime) then continue;

0.0001 166 lastprime:= lastprime+1;

0.0279 166 writeln('prime ', lastprime,'=', curprime);

0.0006 166 primes[lastprime] := curprime;

0.0005 166 curprime := curprime +2;

0.0001 166 end

0.0010 1 end.

Профилирование по времени:

Turbo Profiler Version 2.1 Sat Apr 16 21:28:00 2005

Program: D:\ETU\8‘…Њ…‘~1\Њ…’ђЋ‹~1\LAB2\1_PART~2\PROST0_P.EXE

Execution Profile

Total time: 1.1815 sec

% of total: 100%

Run: 1 of 1

Filter: All

Show: Time

Sort: Frequency

PROST.24 0.5972 sec 50% |**********************************************

PROST.20 0.4351 sec 36% |*********************************

PROST.19 0.0567 sec 4% |****

PROST.25 0.0561 sec 4% |****

PROST.27 0.0279 sec 2% |**

PROST.22 0.0015 sec <1% |

PROST.9 0.0014 sec <1% |

PROST.23 0.0014 sec <1% |

PROST.31 0.0010 sec <1% |

PROST.17 0.0008 sec <1% |

PROST.28 0.0006 sec <1% |

PROST.29 0.0005 sec <1% |

PROST.26 0.0001 sec <1% |

PROST.15 0.0001 sec <1% |

PROST.30 0.0001 sec <1% |

PROST.16 0.0000 sec <1% |

PROST.13 0.0000 sec <1% |

PROST.12 0.0000 sec <1% |

PROST.10 0.0000 sec <1% |

PROST.11 0.0000 sec <1% |

Профилирование по частоте:

Turbo Profiler Version 2.1 Sat Apr 16 21:29:14 2005

Program: D:\ETU\8‘…Њ…‘~1\Њ…’ђЋ‹~1\LAB2\1_PART~2\PROST0_P.EXE

Execution Profile

Total time: 1.1815 sec

% of total: 100%

Run: 1 of 1

Filter: All

Show: Counts

Sort: Frequency

PROST.20 15120 45% |++++++++++++++++++++++++++++++++++++++++++++++

PROST.24 14787 44% |++++++++++++++++++++++++++++++++++++++++++++

PROST.17 499 1% |+

PROST.25 498 1% |+

PROST.19 498 1% |+

PROST.23 333 1% |+

PROST.22 333 1% |+

PROST.28 166 <1% |

PROST.26 166 <1% |

PROST.29 166 <1% |

PROST.30 166 <1% |

PROST.27 166 <1% |

PROST.9 1 <1% |

PROST.16 1 <1% |

PROST.15 1 <1% |

PROST.13 1 <1% |

PROST.12 1 <1% |

PROST.10 1 <1% |

PROST.11 1 <1% |

PROST.31 1 <1% |

Профилирование по средним временам на 1 вызов:

Turbo Profiler Version 2.1 Sat Apr 16 21:29:46 2005

Program: D:\ETU\8‘…Њ…‘~1\Њ…’ђЋ‹~1\LAB2\1_PART~2\PROST0_P.EXE

Execution Profile

Total time: 1.1815 sec

% of total: 100%

Run: 1 of 1

Filter: All

Show: Time per call

Sort: Frequency

PROST.9 0.0014 sec/call |**********************************************

PROST.31 0.0010 sec/call |********************************

PROST.27 0.0001 sec/call |*****

PROST.15 0.0001 sec/call |****

PROST.19 0.0001 sec/call |***

PROST.25 0.0001 sec/call |***

PROST.16 0.0000 sec/call |**

PROST.24 0.0000 sec/call |*

PROST.20 0.0000 sec/call |

PROST.22 0.0000 sec/call |

PROST.23 0.0000 sec/call |

PROST.29 0.0000 sec/call |

PROST.28 0.0000 sec/call |

PROST.17 0.0000 sec/call |

PROST.10 0.0000 sec/call |

PROST.12 0.0000 sec/call |

PROST.26 0.0000 sec/call |

PROST.30 0.0000 sec/call |

PROST.13 0.0000 sec/call |

PROST.11 0.0000 sec/call |

Вывод: Основное время выполнения программы тратится на две трудоемкие операции: вывод значений на экран (writeln) и на вычисление условия .

Оптимизация: Избавиться от вывода на экран или уменьшить количество выводимых символов на экран.