Быстродействие языков тест2

 
+
-
edit
 

Jameson

опытный

Delphi 7 - 1 секунда с оптимизацией, 3 без оной. Delphi 8 NET показал 3 секунды с оптимизацией.. Хотя там эта галочка ничего не меняет, видимо, резерв.
71 килобайт в NET варианте, из-за модуля sysutils, который пришлось использовать для подсчета времени. Некоторые оконные проги меньше выходят. Например, пустая прога с окном выходит 18 килобайт..
Надеюсь, я правильно перевел с незнакомого мне языка, сам уже не помню, к стыду своему.

program fibb;

{$APPTYPE CONSOLE}

uses
SysUtils;
function fib(n:cardinal):cardinal;
begin
if n<2 then result:=1 else result:=fib(n-1)+fib(n-2)
end;
var time:TDatetime;
begin
time:=now;
writeln('Result=',fib(40));
writeln('time=',timetostr(now-time));
readln;
end.
Поправьте, если что не так.
 
+
-
edit
 

Balancer

администратор
★★★★★
Jameson, 06.03.2004 14:45:52 :
Delphi 7 - 1 секунда с оптимизацией, 3 без оной. Delphi 8 NET показал 3 секунды с оптимизацией..
 


В общем, .NET - это быстро :D

>Надеюсь, я правильно перевел с незнакомого мне языка, сам уже не помню, к стыду своему.

Правильно.
 
+
-
edit
 

Jameson

опытный

Да, забыл - проц AXP2100+ thoroubred на epox k3ap ram ddr333 под WINXP.
 
+
-
edit
 

Oleg_Z

новичок
Упустил я как-то - за счёт чего в виндах системный таймер разогнан до частоты выше стандартных 14.31818/12/65536 МГц = 18.2Гц? (как раз 0.055 сек на такт). Т.е. нынче в железе стоит отдельный таймер, или стандартный разогнан, а для старых приложений эмулируется?
 

Хочу заметить, что системный таймер можно программировать. И частота его может значительно превосходить 18,2 Гц. !!!
[a href="http://pascal.dax.ru/forum/index.php"]Форум "Все о Паскале"[/a]- все о программировании на Паскале, Ассемблере, Дельфи.
 
+
-
edit
 

Balancer

администратор
★★★★★
Oleg_Z, 20.06.2004 21:04:23 :
Хочу заметить, что системный таймер можно программировать. И частота его может значительно превосходить 18,2 Гц. !!!
 


А хотя бы предыдущую страницу этого топика прочесть лень, да? :)

Быстродействие языков тест2 [Balancer#19.01.04 17:01]
Быстродействие языков тест2 [Balancer#28.01.04 12:04]
 
Balancer> Надыбыл тут F# и захотелось его сравнить по скорости с прочими.
А недавно новая версия (1.0.3.0) вышла под .NET 2.0.
Немного побыстрее работает - на моём P4/2400 выполняется за 3.5 сек.
code text
  1. open System
  2. open Printf
  3.  
  4. let rec fib n = if n<2 then 1 else fib(n-1) + fib(n-2);;
  5.  
  6. let start = DateTime.Now;;
  7. do print_string("\n***** "^start.ToLongTimeString()^" *******\n");;
  8. let res=fib(40);;
  9. let stop=DateTime.Now;;
  10. let diff=stop.Subtract(start);;
  11. let main = (
  12.         print_string("  result = "^res.ToString()^"\n");
  13.         print_string("duration = "); print_int(diff.Minutes);
  14.         print_string("\'"); print_int(diff.Seconds);
  15.         print_string("\""); print_int(diff.Milliseconds);
  16.         )
  17. let _ =  main;
  18. print_string("\n*****  end  **********\n");
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru