"Оптимизация для PENTIUM процессора" - читать интересную книгу автора


И еще, на этот раз последнее. Я не знаю как Ангер Фог, но я точно имею много
против при использовании данного текста с комерческой целью. Конечно, вы
можете применить знания, полученные из данного текста по вашему усмотрению,
а так же распросронять его на любых носителях, не получая от распростанения
комерческой выгоды. То есть, если вы захотите использовать его при написании
собственной книги, то желательно все-таки спросить у самого Агнера Фога, для
начала, ну а если захотите использовать мой перевод, то и у меня...

Дмитрий Померанцев
03.12.1997
2:5020/1140.26


1. ВВЕДЕНИЕ
===========
Это руководство подробно описывает, как составлять оптимизированный код,
на языке ассемблер, с конкректными примерами для Pentium(r) микропроцессора.

Это руководство более подробно, чем то, которое вы найдете где-нибудь еще,
в большинстве случаев позволит вам вычислить - сколько тактов будет
выполняться конкректная часть кода.

Програмировать на ассемблере гораздо труднее, чем на языке высокого уровня.
Ошибки очень легко допустить , а вот обнаружить их гораздо труднее. И так,
вы предупреждены! Я буду надеяться, что читатель уже имеет опыт
програмирования на ассемблере, а если нет, то я рекомендую сначала изучить
пособия по програмированию на ассемблере и только потом приступать к сложным
оптимизациям.

При разработке чипа Pentium, были ускорены некоторые часто используемые
инструкции или группы инструкций, без использования общих методов оптимизации.
Следовательно правила оптимизации програмного обеспечения сильно усложнились и
имеют много исключений, но потенциальный прирост производительности будет
большим.

Прежде чем вы начали перекладывать вашу программу на ассемблер убедитесь, что
вы уже максимально оптимизировали алгоритм. Гораздо чаще вы можете ускорить
свою программу оптимизируя алгоритм, а не исполняемый код.

Кроме того, многие компиляторы с языков высокого уровня уже весьма неплохо
оптимизируют код под Pentium, и дальнейшая оптимизация имеет смысл только в
критических по скорости участкам программы.

Intel недавно заявил, что скоро они будут производить новые версии Pentium и
PentiumPro процессоров, содержащих 57 новых инструкций для целочисленных
векторных операций. Эта технология будет называться инструкциями расширения
мультимедии (MMX). Поведение чипа Pentuim с MMX будет несколько отличаться
от Pentium без MMX. Эти отличия будут отражены в соответствующей документации.
PentuimPro процессор ведет себя совершенно по другому и будет лишь