Galkov писал(а):
рядом с творениями nesco-то - и рядом не стоялоНу вот, и на меня наехал, зачем ты так

Разработчик
Ответов: 26214
Рейтинг: 2138
|
|||
Galkov писал(а): рядом с творениями nesco-то - и рядом не стоялоНу вот, и на меня наехал, зачем ты так ![]() |
|||
карма: 22 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Galkov писал(а): Если функциональные обращения к схеме из формулы - полная непонятка со стеком сопроцессора (его размером)А ты заранее посчитай все обращения к схеме и сохрани результаты в памяти, а потом уже в своей формуле значения используй. |
|||
карма: 1 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Galkov, я понимаю конечно что всё познаётся в сравнении, мне и самому стало интересно устроить тестдрайв ипользуя фракталы Мандельброта. Конечно из ваших схем выдирать алгоритм у меня времени нет но аналогичный нашёл в других источниках, причём даже процедуры цвета оставил. Со скоростью у меня всё впорядке, да и алгоритм прослеживается.
|
|||
карма: 4 |
| ||
файлы: 1 | mandelbrot_test.zip [10KB] [323] | ||
Голосовали: | Tad |
Ответов: 16884
Рейтинг: 1239
|
|||
andrestudio, за пример +
andrestudio, а подряд нажать несколько раз на GO, пробовал ? |
|||
карма: 25 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
andrestudio писал(а): Конечно из ваших схем выдирать алгоритм у меня времени неталгоритм брался из википедии, о чем выше говорилось andrestudio писал(а): Со скоростью у меня всё впорядке, да и алгоритм прослеживается.алгоритм прослеживается? 122 строки, не влезающие на одну страницу против 30 элементов(в варианте от Galkov-a 18), полностью вмещающихся на экране 640х480 - и это прослеживание алгоритма ![]() ![]() Скорость - фрактал от FTCG выдает 750kpix/s против 430kpix/s в варианте от pb. |
|||
карма: 27 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Dilma, откуда у Вас такие скорости
![]() ![]() Что читать легче оставим на любителя, надо учитытвать что по элементам тоже надо пробежатся, чтобы их свойства увидеть. Tad, чтобы достичь индеетичности отрисовки, нужно изключить глобальные переменные (перенести их в обработчик события от кнопки) |
|||
карма: 4 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
andrestudio писал(а): откуда у Вас такие скорости , похоже мой пентиум пора выкинуть.Core 2 Quad Q8300 (3Ггц), RAM DDR2-800 - теоритически скорость могла бы быть в 4 раза больше, если использовать распаралеливание на 4 ядра. andrestudio писал(а): Не знаю как у Вас но FTCG у меня в два раза медленей рисуетсмотря какая версия использовалась. Если та, в которой отрисовка пикселя была вынесена в стандартные элементы, то не удивительно. Я мерил этим code_14082.txt ну и наконец стоит убедиться в идентичности процедуры расчета скорости - в схеме выше формула такая
andrestudio писал(а): Что читать легче оставим на любителя, надо учитытвать что по элементам тоже надо пробежатся, чтобы их свойства увидеть.в схеме от Galkov-a да надо, без знания формул алгоритм не поймешь, но это всего лишь следствие того, что не были вынесены LH на соответствующие свойства. Поэтому в минус это не корректно записывать. PS: перенес схему в пакет PDA - результат сходный с FTCG(что очевидно), хотел под FASM собрать тоже самое, но увы элементов вывода графики там нет. |
|||
карма: 27 |
| ||
файлы: 1 | code_14082.txt [5KB] [502] |
Ответов: 16884
Рейтинг: 1239
|
|||
andrestudio писал(а): Не знаю как у Вас но FTCG у меня в два раза медленей рисует и без цвета. FTCG - 1.5 сек. andrestudio - мгновенно ( <0.2 сек). andrestudio писал(а): чтобы достичь индеетичности отрисовки![]() |
|||
карма: 25 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
ну с приближением будет так (версия пакета PDA)
|
|||
карма: 27 |
| ||
файлы: 1 | mandelbrot_pda.rar [16.7KB] [267] |
Ответов: 16884
Рейтинг: 1239
|
|||
Dilma писал(а): ну с приближением будет так (версия пакета PDA)------------ Дoбавленo в 17.43: ![]() Все. Понял. ![]() |
|||
карма: 25 |
| ||
файлы: 1 | a14.png [6.9KB] [487] |
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
вот так всегда бы...
|
|||
карма: 27 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
Но в примере andrestudio еще и с цветом
![]() ![]() |
|||
карма: 25 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
собственно пример показывает, что скорость отрисовки меняется(и весьма существенно) в зависимости от количества пикселей на экране, которые за N итераций уходят в бесконечность(соответствует красному цвету). Поэтому тестирование нужно проводить при фиксированной величине зума (или иными словами разрешения)
------------ Дoбавленo в 17.52: Tad писал(а): Но в примере andrestudio еще и с цветом Tad, если бы ты посмотрел на код программы, который по словам andrestudio, должен быть понятен каждому, то увидел бы, что рассчет цвета не является сколько-нибудь весомой математической операцией. Грубо говоря достаточно завести массив из 64 элементов и по индексу выбирать нужный цвет. |
|||
карма: 27 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Версия у меня старая проверить не могу, верю наслово. Так как API функция GetTickCount возращает время в милисекундах то у меня практически тоже самое x*y / time.
------------ Дoбавленo в 18.01: Dilma писал(а): Грубо говоря достаточно завести массив из 64 элементов и по индексу выбирать нужный цвет.![]() ![]() |
|||
карма: 4 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
andrestudio писал(а): мы же понимаем что этот код участвует в расчётах, причём 200*300 разandrestudio, вашей карьере начинающего программиста ЯВУ еще только предстоит пройти через знание о том, что извлечение значения элемента массива по 32х разрядному индексу выполняется одной командой процессора. Говорить о том, что на выполнение 60тыс раз одной команды процессора сегодня требуется много времени по меньшей мере не актуально. ------------ Дoбавленo в 18.18: а вот реализация HSB2RGB в вашем примере действительно представляет из себя монстрообразную конструкцию, которая будет отъедать изрядное количество времени. Предлагаю переписать ее так
и заменить это
|
|||
карма: 27 |
|