Часть полного текста документа:Архитектура и производительность серверных ЦП Сегодня центральные процессоры (ЦП) - неотъемлемая часть современной компьютерной техники, но так было не всегда. Первые "серверы" в современном понимании (мэйнфреймы) не имели ЦП как таковых. Вычислительные функции в них выполняли неспециализированные наборы системной логики (стандартные микросхемы и прочие полупроводниковые компоненты). Однако по мере развития компьютерных технологий появилась возможность создавать все более сложные микросхемы, в том числе специализированные - процессоры. Когда появились первые персональные компьютеры и начали быстро расти их продажи (в 1970-1980-х годах), рынок серверного оборудования серьезно изменился: наметились тенденции взаимопроникновения технологий и архитектур из сегмента серверной техники в сегмент персональных компьютеров, и наоборот. Не стали исключением и ЦП: некоторые серверные модели после незначительной модернизации стали использоваться в персональных компьютерах, а ЦП, изначально разработанные для массового рынка, проникали на рынок серверов и суперкомпьютеров. Наиболее очевидная причина этого - экономический фактор: параллельная разработка двух или более процессорных архитектур может оказаться непосильной даже для довольно крупной компании, а конечная стоимость обоих решений будет значительной, что неминуемо ухудшит конкурентные возможности конечной продукции на рынке. Хотя процессорные архитектуры, ориентированные исключительно на серверы и суперкомпьютеры, до сих пор существуют, более распространены "универсальные" процессорные ядра, пригодные как для массового, так и для серверного рынка. Общая архитектура ЦП Функциональные устройства ЦП Любой ЦП независимо от его предназначения располагает рядом функциональных устройств (ФУ): блоками целочисленных вычислений (Integer Execution Unit, E-box, арифметико-логическое устройство), обработки адресов (Address Translation Unit, A-box), контроллером системной шины (System Bus Controller, B-box), декодером команд (Instruction Decoding Unit, I-box). Для проведения вычислений и хранения промежуточных результатов используется так называемый файл регистров (их может быть несколько), состоящий из фиксированного количества записей определенной длины (регистров). Практически во всех современных ЦП реализованы и средства предсказания направления условных переходов. С начала 1990-х гг. общепринятой стала практика внедрения в ядро ЦП блока вещественных вычислений (Floating-Point Unit, F-box). Если дизайн определенной аппаратной платформы предполагал использование кэш-памяти с прямым доступом, то в ЦП вводился блок взаимодействия с кэш-памятью (Cache Memory Interface Unit, C-box). В современных ЦП нередко также реализованы контроллеры памяти, периферийных шин и т. д. Набор команд ЦП В зависимости от представления команд процессоры принято делить на RISC (Reduced Instruction Set Computing, вычисления при помощи ограниченного набора команд) и CISC (Complex Instruction Set Computing, вычисления при помощи расширенного набора команд). В настоящее время "чистокровных" представителей того или иного семейства встретить все труднее - у большинства ЦП есть черты обеих архитектур. Архитектура RISC появилась как попытка избавиться от недостатков, присущих CISC-процессорам. В 1970-х гг. были проведены исследования, которые показали, что около 20% всех команд CISC-процессора занимают при выполнении около 80% всего процессорного времени, а остальные 80% команд - оставшиеся 20%, т. ............ |