Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: CL | DM;

Вниз

Delphi10 который Lite   Найти похожие ветки 

 
Palladin ©   (2006-05-31 18:15) [0]

BDS2006 у меня нет, скачал посмотреть

Создал тестер, суть:
создаются 53424 чисел для данных и столько же для поиска

занес 1 порцию в контейнеры (отсортированные) для Integer и для String (ессно, в строковом виде)
открыл 2 порцию и бинарным поиском прошелся по контейнерам...

два проекта соответственно, два исполняемых

вывод: не знаю с какой версии :) ибо выше чем d6 не работал ни с какой, но работа со строками в d10 прошла в два раза быстрее, да и integer тоже быстрей... хоть на каплю но... замеры делались gettickcount...

D6
TWRIntegerMap
Adding
pass 1 1344
pass 2 156
pass 3 141
Searching
pass 1 141
pass 2 156
pass 3 156
TWRStringMap
Adding
pass 1 2219
pass 2 2156
pass 3 1812
Searching
pass 1 1156
pass 2 1219
pass 3 1188

d10
TWRIntegerMap
Adding
pass 1 1609
pass 2 141
pass 3 140
Searching
pass 1 156
pass 2 141
pass 3 140
TWRStringMap
Adding
pass 1 2047
pass 2 484
pass 3 484
Searching
pass 1 515
pass 2 547
pass 3 516

кому интересно, могу выложить у себя оба исполняемых...

может я так и отстал, но интересно, с какой версии это дело (оптимизация работы со String) произошла...


 
Kolan ©   (2006-05-31 18:18) [1]

Давай. Выкладывай я в D7 проверю...


 
Kolan ©   (2006-05-31 18:19) [2]

И в D2006 не лайте...


 
Джо ©   (2006-05-31 18:19) [3]

>
> может я так и отстал, но интересно, с какой версии это дело
> (оптимизация работы со String) произошла...

Точно знаю, что менеджер памяти поменяли.


 
Джо ©   (2006-05-31 18:20) [4]

> [3] Джо ©   (31.05.06 18:19)

т.е, в BDS2006.


 
Lamer@fools.ua ©   (2006-05-31 18:34) [5]

>замеры делались gettickcount...

По-моему, GetThreadTimes() кошерней.


 
Palladin ©   (2006-05-31 18:36) [6]

http://rapidshare.de/files/21856198/test_data.rar.html - тестовые данные
http://rapidshare.de/files/21856326/tst.rar.html - проект для d10
для других версий конечно создать свой проект придется, скопировав код обработчика button1


 
Palladin ©   (2006-05-31 18:38) [7]


> Lamer@fools.ua ©

QueryPerfomanceCounter еще кошерней, но было лентяво... мне не нужны были точные цифры...


 
Palladin ©   (2006-05-31 19:00) [8]

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


 
Virgo_Style ©   (2006-05-31 19:31) [9]

Palladin ©   (31.05.06 19:00) [8]
никакой технической поддержки


а моральной, для прочитавших историю? :o)


 
Palladin ©   (2006-05-31 19:50) [10]

ну там большой моральной поддержки не потребуется... сдерживался таки... разве что после прочтения лога об изменении WR Error System на 4.000.1 ... правда физическая... для вытаскивания из под стола... :)


 
Kolan ©   (2006-05-31 20:10) [11]


> Palladin ©   (31.05.06 18:36) [6]

А выложи всё, чтобы ничего не делать :)...


 
Palladin ©   (2006-05-31 20:12) [12]

ну там, единственное что UVersions нехватает, это дело (и все что с ним связано) просто удали из Uses

а связано всего ничего:
константа vVersion
и вызов в Initialization vRegisterModule


 
Palladin ©   (2006-05-31 20:13) [13]

или помоему я все таки их убрал... а чего нехватает то ?


 
Kolan ©   (2006-05-31 20:14) [14]


> ну там, единственное что UVersions нехватает, это дело (и
> все что с ним связано) просто удали из Uses
>

Я имел в виду весь проект со всем что надо чтобы открыл нажал F9 и всё...


 
Palladin ©   (2006-05-31 20:16) [15]

я же сказал что проект для d10, для остальных версий нужно создать новый проект, кинуть на него кнопку и tmemo, переобозвать memo1 в smemo1, скопировать из unit1.pas обработчик button1click в созданный проект...
вот так вот все сложно


 
Kolan ©   (2006-05-31 20:17) [16]


> я же сказал что проект для d10, для остальных версий нужно
> создать новый проект,

Не надо всё и так скомпилируется....
Дай все :)


 
Palladin ©   (2006-05-31 20:28) [17]

что именно все то?


 
Джо ©   (2006-05-31 20:37) [18]

> [17] Palladin ©   (31.05.06 20:28)
> что именно все то?

Наверное, ключи от квартиры... Или от мертвого осла уши :)


 
Kolan ©   (2006-05-31 20:48) [19]


> что именно все то?

Ну вот я  когда создаю проект, сохраняю его в папку, Там много файлов. Тот же *.dpr или *.bdsproj...

Ладно уже не надо

Delphi 7:

TWRIntegerMap
Adding
pass 1 969
pass 2 47
pass 3 47
Searching
pass 1 47
pass 2 31
pass 3 47
TWRStringMap
Adding
pass 1 1344
pass 2 1563
pass 3 1265
Searching
pass 1 500
pass 2 500
pass 3 468


Delphi 2006 Architect

TWRIntegerMap
Adding
pass 1 843
pass 2 32
pass 3 46
Searching
pass 1 47
pass 2 31
pass 3 47
TWRStringMap
Adding
pass 1 1031
pass 2 219
pass 3 218
Searching
pass 1 266
pass 2 250
pass 3 234


 
Palladin ©   (2006-05-31 20:50) [20]

те же самые симптомы...


 
Palladin ©   (2006-05-31 20:53) [21]

ну чтож... из чего могу сам себе сделать вывод: bds2006 стоит приобрести


 
Kolan ©   (2006-05-31 20:53) [22]

Но у меня:
pass 1 969

pass 1 843

А в [1]
pass 1 1344

pass 1 1609

...


 
Palladin ©   (2006-05-31 20:59) [23]

думаешь железо роли не играет?


 
Palladin ©   (2006-05-31 21:00) [24]

смотреть нужно не относительно двух постов, а относительно двух компиляторов


 
Kolan ©   (2006-05-31 21:04) [25]

Так я так и смотрю. У тебя в первом случаее D6 сработал лучьше..

А у меня тенденция сохранилась...



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

Текущий архив: 2006.06.25;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.028 c
2-1149772292
ALe_x
2006-06-08 17:11
2006.06.25
размер файла


4-1143128232
Alex35
2006-03-23 18:37
2006.06.25
Узнать, что в привод вставили диск


1-1147925148
apl
2006-05-18 08:05
2006.06.25
Как преобразовать TFileTime


3-1146076512
makvell
2006-04-26 22:35
2006.06.25
Исключения


1-1147685021
QuickFinder
2006-05-15 13:23
2006.06.25
Дерево данных