Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > BlitzMax > Модули для BlitzMax

Ответ
 
Опции темы
Старый 31.08.2007, 11:52   #1
jimon
 
Сообщений: n/a
Jimon Cached Linked List

когда-то давно я писал про недостатки LinkedList здесь :
http://boolean.name/showthread.php?t=4135

в общем наконецто дошли ручки зделать его кешируемым
http://jimon.boolean.name/downloads/linkedlist.rar (4 кб)

в общем результаты не кешируемого :
DebugLog:InitOk .. let's run
DebugLog:Run Test1 ... the best optimization
DebugLog:Test1 Time : 1.2745000012218952
DebugLog:Run Test2 ... the simply code .. can found in some code
DebugLog:Time2 Time : 334.37460000067949
DebugLog:Run Test3 ... optimization of test2 variant
DebugLog:Time3 Time : 0.66239999979734421
DebugLog:Run Test4 ... the hard style coding
DebugLog:Test4 Time : 629.71640000119805
DebugLog:End ... thnx
и результаты кешируемого списка :
DebugLog:InitOk .. let's run
DebugLog:Run Test1 ... the best optimization
DebugLog:Test1 Time : 0.45730000175535679
DebugLog:Run Test2 ... the simply code .. can found in some code
DebugLog:Time2 Time : 1.4646999984979630
DebugLog:Run Test3 ... optimization of test2 variant
DebugLog:Time3 Time : 0.76120000146329403
DebugLog:Run Test4 ... the hard style coding
DebugLog:Test4 Time : 0.74560000002384186
DebugLog:End ... thnx
ничего в своей программе менять не надо
полная совместимость с некешируемым списком
кешируемость можно даже вырубить флагом в модуле и ребилдить его

после замены модуля зделайте ребилд всего BRL !

идинственый случай когда кешируемый модуль будет проигрывать :
если в листе куча обьектов,
мы постоянно добавляем или удаляем обьекты из листа,
и юзаем при етом ValueAtIndex со значениями 1 - 10 ...
тогда возможно производительность будет 70-80% от не кешируемого
в остальных случаях рост до 1000%

в jAqua ето дало рост в 7 мс в общем цикле

ps. пользуйтесь
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
BlackOut (02.07.2010)
Старый 31.08.2007, 16:10   #2
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,898
Написано 3,384 полезных сообщений
(для 9,251 пользователей)
Re: Jimon Cached Linked List

Знаешь что, джимон, ты бы это на офф форуме бмакса запостил, с требованием включить это в стандартную поставку блитца... т.к. дельное улучшение.
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
BlackOut (02.07.2010)
Старый 31.08.2007, 18:05   #3
jimon
 
Сообщений: n/a
Re: Jimon Cached Linked List

SBJoker
у меня там акка нету
 
Ответить с цитированием
Старый 31.08.2007, 20:56   #4
jimon
 
Сообщений: n/a
Re: Jimon Cached Linked List

так ... случайно была допущена утечка памяти
все оперативно исправил ... качать там же
 
Ответить с цитированием
Старый 25.11.2007, 20:30   #5
jimon
 
Сообщений: n/a
Re: Jimon Cached Linked List

лол ... но один криворукий код гуи завалил все же мой tlist
нашлась жалкая бага точнее не бага
а возможность завалить список :
list.remove(obj)
list.addlast(obj)
list.remove(obj)
list.addlast(obj)
list.remove(obj)
list.addlast(obj)
в итоге в листе появляется несколько копий етого обьекта

исправления в коде TList :

вот ето :
	Method CacheChangeList()
		If Not EnableCache Then Return
		
		ValueAtIndexCacheChange = 1
		CountCacheChange = 1
	End Method
заменить на вот ето :
	Method CacheChangeList()
		If Not EnableCache Then Return
		
		ValueAtIndexCacheChange = 1
		CountCacheChange = 1

		FreeFindLinkCache()
	End Method
исправленую версию мона качать в первом посте
 
Ответить с цитированием
Старый 01.04.2010, 18:10   #6
cheaters-hater
Оператор ЭВМ
 
Регистрация: 09.10.2007
Сообщений: 45
Написано 8 полезных сообщений
(для 16 пользователей)
Ответ: Jimon Cached Linked List

ссылка умерла. перезалей плз.
(Offline)
 
Ответить с цитированием
Старый 01.04.2010, 18:37   #7
Randomize
Терабайт исходников
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: Планета Земля
Сообщений: 4,027
Написано 2,244 полезных сообщений
(для 6,300 пользователей)
Ответ: Jimon Cached Linked List

http://server.jimon.org/Downloads/Sa...linkedlist.rar
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
cheaters-hater (01.04.2010)
Старый 02.07.2010, 10:16   #8
Черный крыс
 
Сообщений: n/a
Ответ: Jimon Cached Linked List

При попытке сохранить лист в файл - начинает матом ругатся модуль отражения, дебаг показывает, что инфа в одном из линков - битая. Официальный TList сохраняется в файл без проблем.

Просьба автора исправить данный недочет.
 
Ответить с цитированием
Старый 02.07.2010, 11:08   #9
Dream
быдло
 
Регистрация: 05.08.2007
Сообщений: 1,435
Написано 614 полезных сообщений
(для 1,489 пользователей)
Ответ: Jimon Cached Linked List

ну да, jimon щас всё бросит и будет исправлять код 3 летней давности
(Offline)
 
Ответить с цитированием
Эти 5 пользователя(ей) сказали Спасибо Dream за это полезное сообщение:
ABTOMAT (02.07.2010), is.SarCasm (02.07.2010), Randomize (02.07.2010), Reks888 (02.07.2010), St_AnGer (02.07.2010)
Старый 02.07.2010, 17:19   #10
Черный крыс
 
Сообщений: n/a
Ответ: Jimon Cached Linked List

уже исправил =)
 
Ответить с цитированием
Старый 02.07.2010, 18:58   #11
jimon
 
Сообщений: n/a
Ответ: Jimon Cached Linked List

Diablo1909
выложи свою версию просто скорее всего за 3 года сам list поменялся в бмаксе
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Jimon johnk Поздравления и пожелания 82 11.01.2011 14:12
jimon Raiter Поздравления и пожелания 20 08.01.2008 22:16
jimon с ДР! jimon Поздравления и пожелания 19 09.01.2007 15:54
jimon jimon Конкурс на лучший логотип Boolean 16 07.12.2005 20:22


Часовой пояс GMT +1, время: 02:44.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com