Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];

Вниз

Скорось приложений   Найти похожие ветки 

 
BorisMor ©   (2006-08-31 13:46) [0]

Немного философский вопрос: вы замечали влияние версия Delphi на скорость приложения или прожорливость памяти ?
Т.е. приложение написанное на Delphi3 работало быстрей чем откомпилированное на D7

Требуется написать приложения которое будет эксплуатироваться на старом железе (Pentium 200 или типа того) вот и задались вопросом.


 
DVM ©   (2006-08-31 13:48) [1]


> Требуется написать приложения которое будет эксплуатироваться
> на старом железе (Pentium 200 или типа того) вот и задались
> вопросом.

Смотря что за приложение. Скорость немного возрастает с увеличением версии, размер правда тоже.


 
Джо ©   (2006-08-31 13:50) [2]

В BDS 2006 сменили менеджер памяти. Вроде бы из-за этого наблюдается некий прирост производительности на некоторых операциях с памятью (длинные строки и проч). Сам не проверял.


 
Desdechado ©   (2006-08-31 13:52) [3]

Размер все время растет, т.к. классы усложняются.


 
BorisMor ©   (2006-08-31 14:23) [4]


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

БД. Походу будет локальной.


 
Карелин Артем ©   (2006-08-31 14:26) [5]

Скорость работы компонентов IBX при выборке из базы в D5 непатченной/неапдетенной на порядок меньше чем в D7.


 
BorisMor ©   (2006-08-31 14:26) [6]


> В BDS 2006 сменили менеджер памяти. Вроде бы из-за этого
> наблюдается некий прирост производительности на некоторых
> операциях с памятью (длинные строки и проч). Сам не проверял.

а где почитать про это ?
вообще интересует сравнение разных версий D.


 
Romkin ©   (2006-08-31 14:34) [7]

BorisMor ©   (31.08.06 14:23) [4] Как правило, скорость работы с БД определяется самой БД. Сколько запрос идет - столько и будет, и разница, вносимая разными версиями D вряд ли будет значимой. Возможно, правда, замедление из-за нагруженности форм и модулей, но это оптимизируется структурой приложения (читай - руки прямые иметь надо) :)


 
Ганна Юхимівна   (2006-08-31 14:50) [8]

Борис - послушайте совет: "Не морочьте себе голову"

Влияние на скорось работы при смене версии среды - несколько %
Влияние на скорось работы при изменении алгиритма - десятки раз :)

Согласитесь - это время что Вы прододите на форуме - лучше потратить на усовершенствование алгоритма.


 
Джо ©   (2006-08-31 15:10) [9]

Все-таки, менеджер памяти чуть быстрее стал :) Вот такой дурацкий код:

procedure TForm1.Button1Click(Sender: TObject);
var
 I: Integer;
 Ticks: Cardinal;
 Arr: array of Integer;
begin
 {$O-}
 Ticks := GetTickCount;
 for I := 1 to 10000000 do // 10 million iterations
   SetLength (Arr,I);
 {$O+}
 Ticks := GetTickCount - Ticks;
 ShowMessageFmt ("%d ticks elapsed",[Ticks]);
end;


в Delphi 6 у меня отрабатывает за 1300 тиков, а в BDS 2006 -- за 1000. Мощный прирост производительности налицо ;)


 
Palladin ©   (2006-08-31 15:13) [10]

Ганна Юхимівна - не морочте нам голову, очень весомую часть нагрузки во время исполнения берет на себя RTL (соответственно и VCL), алгоритм - это конечно первое на что нужно смотреть при оптимизации, но при одинаковых алгоритмах в разных версиях Делфи разница в производительности может быть ощутима. и не на несколько %


> Влияние на скорось работы при смене версии среды

более того, среда вообще никак не влияет на скорось работы приложения, а вот сопутствующие библиотеки, которые имеют отношение к линковке, очень и очень. Разница между менеджерами памяти D6 и BDS2006 (может и более раней версией) очень разительная, многочисленное выделение и перераспределение небольших объемов возросло именно в десятки раз, проверено на себе...

от версии к версии изменяется не только среда, но, что значительно важней, и RTL


 
Ганна Юхимівна   (2006-08-31 16:35) [11]


> Palladin ©   (31.08.06 15:13) [10]
> очень весомую часть нагрузки во время исполнения берет на себя RTL


Уважаемый Тимур
Вы конечно же правы - но только частично... позвольте с Вами не согласиться и привести как аргумент маленький кусок кода:


 for i := Low(FALabels) to High(FALabels) do
   with FALabels[i].EditLabel do begin
     hexstr := IntToHex(i, 2);
     intstr := IntToStr(i);
     case FormatNum of
       2: s := AnsiChar(i) + " $" + hexstr;
       3: s := AnsiChar(i) + " (" + intstr + ")";
       4: s := AnsiChar(i) + " $" + hexstr + "(" + intstr + ")";
       5: s := AnsiChar(i) + " (" + intstr + ")" + "$" + hexstr;
     else
       s := AnsiChar(i);
     end;
     Caption := s + StringOfChar(" ", MAX_Lenght - Length(s));
   end;


обратите внимание на подчеркнутую часть - если её убрать что будет ?
так вот скорость работы этого куска кода что в Делфай 5 что в 7 отличается очень мало - но при изменении алгоритма ускоряется в разы !
и таких примеров куча...

... а то что Вы начали предираться к слову "среда"  - так я считаю это ханжеством и неуважением с Вашей стороны - Вы же сами понимаете что понятие более обширное...  "Мелко мыслите господа" (с)


 
TUser ©   (2006-08-31 16:47) [12]

Имхо, если скорость/память критична, то проблема решается изменением алгоритма. А если не критична (а обнаруживается только проглядыванием с GetrTickTime&Ko) - тогда нафиг.


 
TUser ©   (2006-08-31 16:47) [13]

Короче от компилятора на практике ничего не зависит.


 
Palladin ©   (2006-08-31 17:15) [14]


> Ганна Юхимівна   (31.08.06 16:35) [11]

Я ничего не имею против высказывания по поводу оптимизации алгоритма, наоборот обеими руками за и горячо поддерживаю, но я возмущен именно таким преуменьшением влияния RTL на производительность. Ну а насчет придирки к слову "среда", извините конечно, но Ваш уровень мне незнаком, а телепатор выключен, откуда я могу знать что же скрывается под этим словом, сама IDE или весь пакет... а вот начинающих участников форума это выражение может ввести в заблуждение, потому счел необходимым сделать пояснение-замечание...


 
Ганна Юхимівна   (2006-08-31 17:23) [15]


> Palladin ©   (31.08.06 17:15) [14]


Вот тут с Вам соглашусь полностью :)

Простите и Вы меня если что... наверняка автор вопроса не хочет видеть взаимные разборки.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.09.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.051 c
4-1148310463
n0name
2006-05-22 19:07
2006.09.24
Наследник оконного класса


1-1155392466
!_SM_!
2006-08-12 18:21
2006.09.24
OnCreate, OnDestroy


2-1157608445
zdm
2006-09-07 09:54
2006.09.24
разделитель


1-1155579611
lookin
2006-08-14 22:20
2006.09.24
Компонент на основе TCustomPanel: свойство Parent


2-1157190932
Id
2006-09-02 13:55
2006.09.24
Маска в StringGrid-e





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский