Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ekzam.docx
Скачиваний:
7
Добавлен:
18.09.2019
Размер:
3.23 Mб
Скачать

2. Продуктивність комп’ютера

Из года в год стоимость компьютерных систем снижается, а их функцио­нальные возможности возрастают. В ближайшем специализированном магазине можно меньше чем за $1 000 приобрести персональный компьютер, который по возможностям не уступает большой вычислительной машине, выпущенной IBM всего-навсего десяток лет назад. Под кожухом системного блока этого компьюте­ра, где находятся СБИС микропроцессора, памяти и других функциональных узлов, "спрятались" свыше 100 млн. транзисторов. Сложно представить себе, 100 млн. чего еще можно купить за эти деньги. Даже за 100 млн. бумажных салфеток придется выложить не менее $100 000.

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

  • обработка изображений;

  • распознавание речи;

  • проведение видеоконференций;

  • создание звуковой и видеоаннотаций к файлам.

Вычислительные комплексы, объединяющие множество рабочих станций, стали непременной принадлежностью любой конструкторской или исследова­тельской организации, на их основе создаются системы научных расчетов, авто­матизированного проектирования, моделирования реальных физических процес­сов и множество других приложений. Обширной областью применения совре­менных компьютеров является и сфера бизнеса.

Если же на все это великолепие взглянуть с точки зрения архитектуры и структурной организации компьютерных систем, то следует отметить, что, с од­ной стороны, современный компьютер в самых общих чертах не намного отлича­ется от компьютера IAS, разработанного фон Нейманом еще 50 лет назад, а с другой — методы "выдавливания" всех потенциальных возможностей из новой технологии за эти 50 лет стали намного более изощренными.

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

3. Швидкодія мікропроцесорів

Вичислительная мощь таких современных микропроцессоров, как Pentium или PowerPC, объясняется в первую очередь тем, что их изготовители неутомимо трудят­ся над повышением быстродействия чипов. Эволюция этих компонентов по-прежнему "вписывается" в закон Мура, о котором мы говорили выше. До тех пор пока этот закон будет соблюдаться, изготовители компонентов будут каждые три го­да переходить на выпуск продукции следующего поколения с количеством транзи­сторов вчетверо большим, чем у предшествующего. В области элементной базы уст­ройств памяти емкость динамических микросхем (DRAM dynamic random access memory) увеличивается в четыре раза каждые три года. С тех пор, как фирма Intel в 1978 году начала выпуск своих микропроцессоров семейства 80x86, каждые три года производительность новых изделий повышается в четыре-пять раз за счет новых схемных решений и сокращения расстояния между элементами.

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

Прогнозирование ветвления (branch prediction). Процессор просматри­вает команды выполняемого фрагмента программы и прогнозирует, как пойдет вычислительный процесс после очередной команды условного перехода (команды ветвления). Процессор может заранее подготовиться к выполнению этого фрагмента, в частности извлечь соответствующие команды из оперативной памяти и записать их в свой буфер. В резуль­тате, если в большинстве случаев прогноз оправдывается, процессор не простаивает, дожидаясь формирования условия, на основании которого должен быть совершен переход, а занимается полезным делом. Сущест­вует и более сложный вариант этой стратегии, который предусматривает предварительный просмотр не только ближайшей команды условного

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

* Анализ потока данных (data flow analysis). Процессор анализирует, вы­полнение каких команд в текущем фрагменте программы зависит от результатов предшествующих команд, и формирует оптимизированный план выполнения. Этот план обеспечивает сокращение ненужных простоев в ожидании формирования промежуточных результатов.

Предпочтительное выполнение (speculative execution). Этот, метод пред­ставляет собой дальнейшее развитие методов прогнозирования ветвления и анализа потока данных. Процессор не только извлекает команды прогнози­руемой ветви программы, но и организует их выполнение, сохраняя резуль­таты в отдельном массиве ячеек памяти. Если впоследствии окажется, что выбранная ветвь не отвечает сформированным условиям перехода, резуль­тат предпочтительного выполнения аннулируется» но если в среднем про­гноз оправдывается, простои процессора сокращаются. Эти и другие методы способствуют повышению загрузки процессора и со­кращению относительного времени его простоя, приближая его производитель­ность к тому потенциальному пределу, который определяется динамическими характеристиками микросхемы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]