Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

SSE vs MMX


Страницы:   1 2

Dmk ©   (2016-04-03 00:46:00) 

Есть ли разница в быстродействии между SSE и MMX? Я к тому, что стоит ли переписывать под SSE, то что написано под MMX. И там и там одинаковые команды.


Q3   (2016-04-22 20:37:00) [1]

Удалено модератором


Германн   (2016-04-20 01:24:00) [2]

Удалено модератором


vegarulez   (2016-04-19 21:25:00) [3]

Удалено модератором


Dmk   (2016-04-11 05:08:00) [4]

Здесь версия в которой можно переключать расширения на лету:
https://cloud.mail.ru/public/CJiN/pHbkSPvcJ

Хорошо видно на прямоугольниках с заливкой и прозрачностью.
Есть 3 варианта: без расширений, MMX и SSSE3.
Разница конечно существенная :)


Dmk   (2016-04-10 17:20:00) [5]

Первая ссылка неправильная.
Правильная вот: https://cloud.mail.ru/public/G2TH/ioSe4cT2Z


Dmk   (2016-04-10 16:25:00) [6]

Вот, если интересно кому:
https://cloud.mail.ru/public/KuuT/fdDDrxmmG

SSE-SSSE3 только при прозрачности.


Dmk   (2016-04-10 07:44:00) [7]

Радует то, что железо не используется ;)
Поставил тут старенький FarCry - 700-900 fps на GTX 980 Ti.
На старом Radeon 9800 Pro (топовая карта в те времена) еле 30 fps вытягивал.


Dmk   (2016-04-10 07:40:00) [8]

Переделал блендинг под SSE. Получилось быстрее MMX в 2 раза.
SSE3 - 2560x1600 ~95 fps
MMX - 2560x1600 ~47 fps

Мелочь, а приятно.


Dmk   (2016-04-10 07:40:00) [9]

Переделал блендинг под SSE. Получилось быстрее MMX в 2 раза.
SSE3 - 2560x1600 ~95 fps
MMX - 2560x1600 ~47 fps

Мелочь, а приятно.


Германн   (2016-04-04 01:18:00) [10]


> Dmk ©   (04.04.16 01:09) [13]
>
> >"16 бит" и "реальный режим" это далеко не одно и то же.
>
> Мне это известно

Тогда должно быть известно и то, что "16 бит" полностью умерло только с появлением 64 бит. Речь о Windows. А "реальный режим" в Windows умер намного раньше. Сначала с появлением Windows NT и окончательно с исчезновением линейки Win9x.


Dmk   (2016-04-04 01:09:00) [11]

>"16 бит" и "реальный режим" это далеко не одно и то же.
Мне это известно ;) Еще со времен DOSa и ADOSa ;)


Германн   (2016-04-04 01:06:00) [12]


> Сейчас же уже не пишут 16 бит или все еще есть страдальцы
> реального режима?

"16 бит" и "реальный режим" это далеко не одно и то же.


Dmk   (2016-04-03 14:03:00) [13]

>64-битный компилятор
круто. 32 бита будет отмирать потихоньку, как и 16 бит в свое время. Сейчас же уже не пишут 16 бит или все еще есть страдальцы реального режима?


Sapersky   (2016-04-03 13:03:00) [14]

64-битный компилятор и так использует SSE для плавающей точки (без векторизации).


DVM   (2016-04-03 12:26:00) [15]


> Round64 SSE double - 507.6 млн/сек
> Round64 SSE single - 493.2 млн/сек
> Round (Delphi System) - 493.2 млн/сек

Имхо, ловля блох. В данном конкретном случае. 3% прирост всего.


Dmk   (2016-04-03 11:38:00) [16]

Провел небольшой тест. SSE-шный Round самый шустрый.
SSE «влечет» ;)

?Цикл: 800 млн вызовов
-----------------------
Round64 SSE double - 507.6 млн/сек
Round64 SSE single - 493.2 млн/сек
Round (Delphi System) - 493.2 млн/сек
Trunc - 488.4 млн/сек
Frac - 344.2 млн/сек
Int - 224.9 млн/сек
Floor - 141.6 млн/сек
Ceil - 128.8 млн/сек
-----------------------


Dmk   (2016-04-03 11:30:00) [17]

Sapersky   (03.04.16 04:16) [5]
Вот потому свое и делаю. Качество примитивов отвратительное.
OpenGL круто по скорости, может потом прикручу.

Для моих целей пока моей библиотеки хватает. 35-40 fps - 10000 объектов с отсечением, поворотом и масштабом. Даже с большим запасом. Обычно одновременно трансформируется не более 250-500 объектов. Это около 170-200 fps на софте. Потому железо пока не нужно.


Rouse_   (2016-04-03 10:34:00) [18]

Так то вообще SSE пошустрее будет, MMX он больше скажем как костыль для 32 битных ядер шел, а сейчас в век 64 битных процессоров - вообще смысла большого не имеет (если ПО 64 битное).


Sapersky   (2016-04-03 04:16:00) [19]

Я бы такое делал аппаратной графикой.
https://drive.google.com/file/d/0B_vHqwd58bsUSzFESDBic3RXaDQ/view?usp=sharing
(демка изначально была на китайском, но можно разобраться методом тыка)

Говорят, что качество OpenGL'евских сглаженных линий может варьироваться в зависимости от конкретного драйвера. Я каких-то особенных глюков не видел, разве что сочленения толстых линий AMD-шная карта рисует некорректно.
При желании можно имитировать линии полигоном с текстурой, можно рисовать их в шейдере, но это уже сложнее.


Dmk   (2016-04-03 02:55:00) [20]

Просто понадобилась библиотека примитивов с блендингом.
Вот набросал немного: https://cloud.mail.ru/public/7Znj/BPZUF2rNj
Линий не создавай сильно много, еще отсечение не сделал. Тормозить будет.

Там 2 ini файла создадутся. Не могу их пока отключить.
Сильно много от большого проекта завязано.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо