Re: 32->16 (565)
От: Andrew S Россия http://alchemy-lab.com
Дата: 25.01.07 14:03
Оценка:
AS>В результате получили ... снижение производительности (небольшое — буквально тысячные доли процента, но тем не менее, стабильное).
AS>Вопрос — как бы это дело поинтереснее оптимизировать (без MMX — вариант для него уже есть). Тут уже дело, конечно, не в производительности, а просто самому стало интересно. Чувствую, что можно еще выжать из этого, но как — Видимо, глаз замылился? Интересно будет послушать ваши соображения

Если кому интересно, смог немного улучшить:

        mov eax, [esi + 4]
        mov ebx, eax        
        shl ax, 5
        shl ebx, 16
        shl eax, 8

        mov edx, [esi]
        add esi, 8
        mov bx, dx                
        shr edx, 8
        mov al, bl
        mov ah, dh
        shr al, 3
        shr ebx, 5
        and eax, 0F81FF81Fh
        and ebx, 07E007E0h
        add edi, 4
        or  eax, ebx
        mov [edi-4], eax


Все это вместе дало прибавку порядка 10 процентов над исходным вариантом, и 2.5 процентов над предыдущим. Вероятно, и тут еще есть над чем поработать, потому что даже простая перестановка команд меняет соотношения на проценты Но Code Analist у меня работать на домашней машине не захотел — просто вываливается с ошибкой доступа по адресу
http://www.rusyaz.ru/pr — стараемся писАть по-русски
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.