Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
3-1310464543
yurikon
2011-07-12 13:55
2018.04.15
Вычисляемое поле в SQL


3-1316799942
adigozelov
2011-09-23 21:45
2018.04.15
FastaReport print TObject


11-1266808579
Ruzzz
2010-02-22 06:16
2018.04.15
Стр. функция Format


2-1461228352
vegarulez
2016-04-21 11:45
2018.04.15
Как передать массив в Поток?


3-1317294720
OW
2011-09-29 15:12
2018.04.15
MSSQL. Не напомните, из-за чего и как обойти?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский