Tad писал(а):
спасибо Alex2А кто это
------------ Дoбавленo в 14.22:
Насколько быстродействие ASM выше при 64 кб текстах
Результаты сравнения есть
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad писал(а): спасибо Alex2А кто это ------------ Дoбавленo в 14.22: Насколько быстродействие ASM выше при 64 кб текстах Результаты сравнения есть |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco писал(а): А кто это ?code_17899.txt nesco писал(а): Насколько быстродействие ASM выше при 64 кб текстах |
|||
карма: 25 |
| ||
файлы: 1 | code_17899.txt [1.4KB] [176] |
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
nesco, а почему бы в строке
|
|||
карма: 10 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Assasin писал(а): Не заменить наНо это нарушение алгоритма, там надо сдвинуть на одну позицию в случае несовпадения суффикса и проверить, если последний символ не совпадет, тогда прибавить смещение. Во-вторых, схема входит в мертвый цикл, или ты еще чего-то поменял |
|||
карма: 22 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
nesco писал(а): Но это нарушение алгоритмаТак мы гонимся не за соблюдением алгоритма, а за скоростью, а тут как раз смещение сразу, без лишних проверок, а значит быстрее ------------ Дoбавленo в 15.38: Я поменял (а точнее изменил) только одну строчку, вот код, который я для себя написал (по твоему коду) для тренировки:
|
|||
карма: 10 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Assasin, а сам на практике пробовал или ты теоретик.
Висит прога. |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad писал(а): Висит прогаИ у меня висит |
|||
карма: 22 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Как в мертвый? У меня вот это прекрасно работает без мертвых
code_17901.txt ------------ Дoбавленo в 15.49: И под обоими компилляторами ------------ Дoбавленo в 15.51: И еще можно было спокойно обойтись без лишнего условия при составлении таблицы отступов
|
|||
карма: 10 |
| ||
файлы: 1 | code_17901.txt [3.3KB] [168] |
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Assasin писал(а): И еще можно было спокойно обойтись без лишнего условия при составлении таблицы отступовУмник, млин. Это защита от "неправильных" слов и повторений, нужно обязательно. Хватит эксперименты ставить. Берешь последнюю тестовую прогу, качаешь тестовый файл и вперед -- проверять. Остальные "умные" предложения можешь оставить себе до выяснения их работоспособности А когда свои новшества проверишь на тестовй проге, вот тогда и делай выводы о их работоспособности и скорости исполнения |
|||
карма: 22 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
nesco писал(а): Это защита от "неправильных" словПо конкретнее на примерах nesco писал(а): и повторенийТак я же заменил i := lp downto 1 на i := 1 to lp, или я что то опять не понял? nesco писал(а): Остальные "умные" предложения можешь оставить себеТвое право... |
|||
карма: 10 |
|
Ответов: 4641
Рейтинг: 334
|
|||
[flood]
nesco писал(а): Остальные "умные" предложения можешь оставить себе до выяснения их работоспособностия тут мимо проходил. nesco, ну грубо то как высказался.... почти послал Assasin -на , .... [/flood] |
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Assasin, еще раз повторюсь
ТО что ты выложил под Delphi висит, под FPC не компилится |
|||
карма: 25 |
|
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Assasin писал(а): По конкретнее на примерахЕсть тестовый пример, дальше следуешь инструкциям nesco писал(а): Берешь последнюю тестовую прогу, качаешь тестовый файл и вперед -- проверятьВ конце концов, ты уже не ребенок. Мне надоело мусолить одно и тоже по десять раз. Страшно надоело, сначала Tad-y вталкивал, что он не то тестирует, теперь тебе объяснять, что все это уже прошли и вариант с Assasin писал(а): обойтись без лишнего условия при составлении таблицы отступовВот потому я и написал nesco писал(а): Остальные "умные" предложения можешь оставить себе до выяснения их работоспособностина тестовом примере Assasin писал(а): Так я же заменил i := lp downto 1 на i := 1 to lp, или я что то опять не понял?УУУУУУУУ.. Да сколько можно. Я про что тебя спрашивал nesco писал(а): или ты еще чего-то поменялЧто, я должен твой код размусоливать, делать мне больше нечего, ткни пальцем, где поменял, вот я и спросил ------------ Дoбавленo в 16.27: А вообще-то смещение должно идти с конца, на этом и построен алгоритм, от lp до 1, а ты весь цикл перезаписываешь повторные символы, и где прирост быстродействия, а условие, кстати, запрещает перезаписывать повторы. Вывод: если ничего не имеем в плюсах, то нафиг оно нужно ------------ Дoбавленo в 16.31: Ravilr, а как ты себя будешь чувствовать, когда вчера мусолили, муслоли, сделали, наконец-то, а тут прихоит молодой гений, и снова наступает на те же грабли Причем, даже не удосужевшись стянуть тестовый пример и проверить свои нововведения |
|||
карма: 22 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Assasin писал(а): Так будет еще быстрее, чем просто + 1Ну у меня тест на 80-ти мб-ой строке код от nesco - Первая тройка - поиск подстроки из 74-х символов Вторая тройка - поиск одиночного, заведомо отсутствующего символа(искал "$" Самый оптимальный вариант NewPosEx(Asm) ИМХО код от Assasin - результата не дождался. Висяк - прервал на 20-ой минуте. Спорьте дальше. |
|||
карма: 25 |
| ||
файлы: 1 | pos.png [3.2KB] [299] |
Разработчик
Ответов: 26170
Рейтинг: 2127
|
|||
Tad писал(а): поиск одиночного, заведомо отсутствующего символа(искал "$"Ты что, его часто ищешь То что ты проверял, в реальной жизни имеет очень маленькую вероятность. И это никаким боком не отражает оптимальность кода И в этом случае я с тобой категорически не согласен, особенно, с применением самопального asm кода. Мы проверяем на Delphi4, этот же код скомпилированный на Delph7 будет еще оптимальнее |
|||
карма: 22 |
|