Знающие люди подскажите какие выводи можно сделать из того что следующие три фрагмента кода работают одинаковое время:
1
.L13
addq $1, %rax
subsd %xmm0, %xmm2
cmpq %rdx, %rax
subsd %xmm0, %xmm3
jne .L13
2
.L13
addq $1, %rax
subsd %xmm0, %xmm2
cmpq %rdx, %rax
jne .L13
3
.L13
addq $1, %rax
subpd %xmm0, %xmm2
cmpq %rdx, %rax
jne .L13
Из 2 и 3 => вычитание двух упакованных чисел с плавоющей точкой двойной точности по скорости равно вычитанию одного не упакованного числа
Из 1 и 3 => вычитание двух упакованных чисел с плавоющей точкой двойной точности по скорости равно вычитанию двух неупакованных чисел
Что-то не вяжется или фича в параллельном исполнении инструкций cmp и subsd хотя и в этом случае не вяжется
Может кто знает как отличается скорость операций с упакованными числами от операций с неупакованными числами?
ЗЫ: или фича в том что в обоих вариантах операций < 4(5) а за раз конвеер может выполнять до 4 операций в том числе и SSE (на коре 2 ) и по факту операции все равно выполняются параллельно...
Ответ на:
комментарий
от phasma
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Производительность (2015)
- Форум производительность (2014)
- Форум Производительность (2009)
- Форум ...производительность (2003)
- Форум производительность (2004)
- Форум Производительность grid (2015)
- Форум Производительность видеокарт (2016)
- Форум Производительность C++ (2016)
- Форум Производительность игр (2017)
- Форум производительность linux (2016)