Форум: "Начинающим";
Текущий архив: 2018.04.15;
Скачать: [xml.tar.bz2];
ВнизSSE vs MMX Найти похожие ветки
← →
Dmk © (2016-04-03 00:46) [0]Есть ли разница в быстродействии между SSE и MMX? Я к тому, что стоит ли переписывать под SSE, то что написано под MMX. И там и там одинаковые команды.
← →
Dmk © (2016-04-03 00:51) [1]Забыл добавить. По сути там только умножение со сдвигом:
pmullw mm1, mm2
pmullw mm0, mm3
paddusw mm0, mm1
psrlw mm0, 8
← →
Sapersky (2016-04-03 02:16) [2]Есть, SSE обрабатывает 128 бит вместо 64-х, плюс не надо дёргать EMMS. Даже если обрабатывать столько же данных за итерацию цикла, получается на 20% быстрее, а если больше, то соот-но в 2 с лишним раза.
Разве что к выравниванию данных более жёсткие требования.
Так-то уже есть и AVX2 с его 256 битами, но там, говорят, получается обычно меньше 2-х раз относительно SSE.
И если это всё тот же альфа-блендинг:
https://habrahabr.ru/post/273109/
← →
Dmk © (2016-04-03 02:45) [3]Ну да, блендинг. У меня 2560x1600 (наложение цвета на картинку) блендится со скоростью 110 fps и это еще с учетом вывода на экран BitBlt. Не знаю, много это или мало для MMX. Буду пробовать SSE.
← →
Dmk © (2016-04-03 02:55) [4]Просто понадобилась библиотека примитивов с блендингом.
Вот набросал немного: https://cloud.mail.ru/public/7Znj/BPZUF2rNj
Линий не создавай сильно много, еще отсечение не сделал. Тормозить будет.
Там 2 ini файла создадутся. Не могу их пока отключить.
Сильно много от большого проекта завязано.
← →
Sapersky (2016-04-03 04:16) [5]Я бы такое делал аппаратной графикой.
https://drive.google.com/file/d/0B_vHqwd58bsUSzFESDBic3RXaDQ/view?usp=sharing
(демка изначально была на китайском, но можно разобраться методом тыка)
Говорят, что качество OpenGL"евских сглаженных линий может варьироваться в зависимости от конкретного драйвера. Я каких-то особенных глюков не видел, разве что сочленения толстых линий AMD-шная карта рисует некорректно.
При желании можно имитировать линии полигоном с текстурой, можно рисовать их в шейдере, но это уже сложнее.
← →
Rouse_ © (2016-04-03 10:34) [6]Так то вообще SSE пошустрее будет, MMX он больше скажем как костыль для 32 битных ядер шел, а сейчас в век 64 битных процессоров - вообще смысла большого не имеет (если ПО 64 битное).
← →
Dmk © (2016-04-03 11:30) [7]Sapersky (03.04.16 04:16) [5]
Вот потому свое и делаю. Качество примитивов отвратительное.
OpenGL круто по скорости, может потом прикручу.
Для моих целей пока моей библиотеки хватает. 35-40 fps - 10000 объектов с отсечением, поворотом и масштабом. Даже с большим запасом. Обычно одновременно трансформируется не более 250-500 объектов. Это около 170-200 fps на софте. Потому железо пока не нужно.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2018.04.15;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.002 c