Два подхода........................................................................................4
Адресное пространство памяти........................................................6
Основные выводы..............................................................................6
Intel агитирует независимых поставщиков поддержать MMX....7
Что день грядущий нам готовит.......................................................8
Система CISC
CISC (англ. complex instruction set computing или complex instruction set computer) — тип процессорной архитектуры, которая характеризуется следующим набором свойств:
· нефиксированное значение длины команды;
· арифметические действия кодируются в одной команде;
· небольшое число регистров, каждый из которых выполняет строго определённую функцию.
Методика построения системы команд CISC противостоит методике, применяемой в другом распространённом типе процессорных архитектур — RISC, где используется упрощённый набор инструкций.
Типичными представителями CISC-архитектуры являются процессоры на основе команд x86, процессоры Motorola MC680x0, процессоры мейнфреймов zSeries. Благодаря распространённости процессоров архитектур x86 и x86-64, CISC-системы являются самыми распространённым в мире вычислительной техники — они доминируют в сегментах рабочих станций, персональных компьютеров, серверов начального и среднего уровня, а также мейнфреймов (RISC-системы превалируют в сегментах мобильных устройств, микроконтроллеров и Unix-серверов старшего уровня). При этом поздние х86-процессоры (Intel Pentium 4, Pentium D, Core, AMD Athlon, Phenom), хотя и CISC-совместимы, но являются процессорами с RISC-ядром, и в формальном смысле считаются гибридными[1]. В таких гибридных CISC-процессорах CISC-инструкции преобразовываются в набор внутренних RISC-команд, при этом одна команда x86 может порождать несколько RISC-команд (в случае процессоров типа P6 — до четырёх RISC-команд в большинстве случаев), исполнение команд происходит на суперскалярном конвейере одновременно по несколько штук.
Основной недостаток CISC-архитектуры в сравнении с RISC — более сложный подход к распараллеливанию вычислений.
Два подхода
Семейства Pentium и Pentium Pro компании Intel продолжают реализацию более традиционной вычислительной архитектуры с полным набором машинных команд (CISC). CISC-процессоры содержат в сотни раз больше команд, чем RISC-процессоры, и используют от 8 до 12 способов адресации памяти по сравнению с 2-3 способами в RISC. Однако технические различия между RISC и CISC в последние годы становятся все менее четкими, особенно в том, что касается общей производительности систем. И CISC-, и RISC-системы, например, показывают в тестах обработки транзакций близкие результаты - от 5000 до 8000 транзакций в минуту, в зависимости от особенностей конфигурации. Для некоторых типов задач CISC-системы могут превзойти RISC. Два года назад это было бы неслыханно.
Одна архитектура заимствует хорошие идеи у другой. RISC-процессоры определялись как микропроцессоры с количеством команд меньше 128, сейчас же они имеют 200 команд - сравните с набором из 300 и более команд в CISC. Сегодня CISC-процессоры используют конвейеризацию и суперкамерные технологии. Оба лагеря применяют большую кэш-память для повышения производительности.
Лежащий в основе системы микропроцессор по-прежнему играет определяющую роль при выборе сервера, однако покупателей теперь интересует не только техническая архитектура процессора. Основное внимание уделяется смежным проблемам: производительности приложений, масштабируемости, цене, доступности программного обеспечения, адресному пространству памяти и дизайну подсистем.
Ниже рассматриваются обе категории, дается обзор микропроцессорных архитектур, и анализируются пути решения этих проблем. В плане масштабируемости RISC-системы раньше обладали явным преимуществом благодаря поддержке симметричной многопроцессорности (SMP). Для организаций, которым нужны SMP-серверы среднего и высокого уровня, системы на базе RISC остаются наиболее предпочтительным выбором.
Однако преимущества RISC в основном обусловлены использованием операционной системы Unix, а не какими-либо характерными особенностями RISC-процессора.
Проблема SMP-систем в том, как операционная система распределяет работу между множеством процессоров. И здесь Intel приходится ждать, пока поставщики ОС не справятся с этой задачей. В настоящее время тандем RISC/Unix в этой области пользуется преимуществом.
По словам Гардена, серверы CISC/Intel, оснащенные операционной системой Windows NT производства Microsoft, могут без проблем поддерживать четыре процессора и даже доводить их число до шести для SMP-систем младшего класса. Как сообщает Джонатан Энис, аналитик компании Illuminata, для систем высокого уровня с массовым параллелизмом, где операционная система в любом случае настраивается на аппаратную архитектуру, компании NCR, Data General, Unisys, Sequent Computer Systems и другие предлагают большие серверы с параллельной обработкой на базе Intel, на которых работают различные реализации Unix. Серверы с параллельной обработкой на базе Intel имеют десятки и даже сотни процессоров.
"Масштабируемость больше не является преградой для CISC/Intel", - говорит Джонатан Энис. Выбор масштабируемости зависит от того, какое масштабирование вы хотите выполнить. CISC подойдет, если вы намерены перейти к сложным системам с массовым параллелизмом, в которых десятки, если не сотни процессоров. Но в менее сложных SMP-системах, с числом процессоров от четырех до шести, предпочтительнее иметь RISC.
Адресное пространство памяти
С появлением приложений классов хранилищ данных и добычи данных выбор между RISC и CISC, возможно, будет определяться 64-разрядной обработкой, для которой в настоящее время требуется RISC. CISC-процессоры 32-разрядные, но Intel сообщает о разработке 64-разрядного процессора, хотя пока это дело будущего. Выбор между RISC и CISC зависит от того, какой объем памяти вам необходим. В 64-разрядном процессоре адресное пространство памяти составляет 15 эксабайт (эксабайт больше мегабайта в 100 в четвертой степени раз).
Объем адресного пространства памяти в 32-разрядных процессорах составляет 4 Гбайт. Intel "выжимает" из своего процессора 64-гигабитное адресное пространство, используя нестандартные расширения микропроцессорной архитектуры, но операционные системы, работающие на Intel, еще не могут даже близко подойти к таким размерам адресации. По словам Эниса, даже самые большие 64-разрядные RISC-системы в общем случае обеспечивают только от 10 до 12 Гбайт памяти.
Если вы работаете с сложными приложениями баз данных или добычи данных, наличие 64-разрядного адресного пространства и 64-разрядных данных может обеспечить значительные преимущества в производительности. "64-разрядные процессоры позволяют вам использовать больше памяти, делая доступ к данным в 100 раз быстрее", - объясняет Олтсик.
Добавление в RISC-систему гигабайт памяти в результате приводит к дорогому серверу, но даже для критичных приложений, которым необходимо стократное повышение производительности, лучшего выбора, видимо, не существует.
Основные выводы
Используйте RISC/Unix для высокоскоростных серверов с интенсивной вычислительной нагрузкой, для 64-разрядного адресного пространства памяти и для SMP-масштабируемости.
С другой стороны, системы старшего класса с массовым параллелизмом переходят к CISC/Intel. Для среднего уровня выбирается RISC или CISC с ОС Unix или Windows NT. Системы младшего класса безраздельно принадлежат Intel.
С практической точки зрения, большинство пользователей выберут ту операционную систему, Unix или NT, с которой они чувствуют себя комфортно, и тот частный диалект Unix, который они использовали раньше. Если эти решения приняты, то выбор процессора осуществится сам собой.