Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Вопрос знатокам ассеблера и современных процессоров   Найти похожие ветки 

 
GDI+   (2010-02-25 16:26) [0]

Что быстрее MUL или MOV из вычисленной таблицы(256 * 4 int)? Насколько я понял MUL на современных процессорах выполняется за 1 такт?


 
Alx2 ©   (2010-02-25 16:55) [1]

MOV, если таблица в кэше. MUL, когда stall-циклы ожидания ее подгрузки.


 
Сергей М. ©   (2010-02-25 16:56) [2]

При прочих равных условиях производительность той или иной инструкции зависит от аргументов.
К тому же есть еще LEA - почему ее не рассматриваешь как альтернативу ?


 
GDI+   (2010-02-25 17:56) [3]

Почитал спецификацию. Понял что єто дело муторное и запутанное. Похоже буду через Mov, так как все дополнительные таблицы занимают 16K в памяти.


 
Eraser ©   (2010-02-25 19:56) [4]

практика - критерий истины )


 
Pavia ©   (2010-02-25 22:08) [5]

Быстрее через pmul.

mov она не спаривается и для каждого байта требует 1 такт.
Умножение оно спаривается так что их за 1 так может выполняться несколько штук. А еще лучше задействовать SSE. И получить до 8 умножение за такт.

Вычисления они быстрее чем mov из таблице в большинстве случаев.

Хотя надо учесть размер таблицы и кэша. А также сложность вычисления.


 
GDI+   (2010-02-26 01:57) [6]

При проверке (тупо набросал команд mul и mov) если сложение и выборка из таблицы это 1х времени, то такое же количество непрерывно идущих mul 2х. Ну и таблица влазит в кеш 1-го уровня (на AMD он жирный).

ММХ быстрее не будет так как это распаковка YTV2->RGB24. При создании таблицы там остаётся только сложения, сдвиги и занесение всего это в память.


 
Германн ©   (2010-02-26 02:28) [7]


> Eraser ©   (25.02.10 19:56) [4]
>
> практика - критерий истины )
>

+1
Так что не надо спрашивать, надо "трясти".


 
Anatoly Podgoretsky ©   (2010-02-26 11:19) [8]

> Германн  (26.02.2010 02:28:07)  [7]

Правильно, чего тут думать.



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.245 c
4-1234435898
Fran
2009-02-12 13:51
2010.08.27
Как узнать имя пользователя терминальной программы?


2-1269669606
NBAH1990
2010-03-27 09:00
2010.08.27
Помогите разобраться с компонентом TsListView


2-1272631952
HF-Trade
2010-04-30 16:52
2010.08.27
Динамический TTimer - как узнать Tag таймера


15-1275913323
user123
2010-06-07 16:22
2010.08.27
Нужны данные о принтерах и картриджах (в виде таблиц)


2-1275568785
O.O
2010-06-03 16:39
2010.08.27
Проблемы со шрифтами в W7 и Vista