Смекни!
smekni.com

Основные закономерности развития компьютерных систем (стр. 3 из 6)

Приведем примеры взаимосвязи и взаимозависимости показателей. В конце 40-х годов Г. Грош сформулировал эмпирический закон, согласно которому пропорциональность КС пропорциональна квадрату стоимости. Следовательно, для того чтобы выполнить некоторую вычислительную работу в два раза дешевле, ее надо выполнить в четыре раза быстрее (К. Е. Найт экспериментально подтвердил справедливость этого закона для первых трех поколений компьютеров). Другой пример взаимозависимости общей производительности векторной супер-ЭВМ от двух режимов ее работы. Известно, что программы, которые могут быть векторизованы компилятором, выполняются в векторном режиме с высокой скоростью, а программы, не содержащие векторного параллелизма (или которые компилятор не обнаруживает), выполняются с низкой скоростью в скалярном режиме. В 1967 г. Дж. Амдал вывел закон, согласно которому в такой системе низкоскоростной режим доминирует в общей производительности.

И напоследок еще один более близкий и современный нам пример. Не секрет, что процессоры Intel Pentium-4 первого поколения (под Socket-423) имеют высокое энергопотребление, большую теплоотдачу и довольно-таки внушительные размеры. Недавно в сети даже ходили шуточки насчет того, что если так пойдет и дальше, то в недалеком будущем компьютеры в обязательном порядке будут поставляться с портативной атомной электростанцией и радиатором водяного охлаждения в комплекте, а материнская плата будет свариваться из стального проката (в том смысле, что иначе она рассыплется от тяжести комплектующих). Конечно, не все так плохо, но определенный резон в этих замечаниях действительно присутствует. Поэтому Intel вскоре перевела процессор на более тонкий техпроцесс, в результате чего удалось сделать его очень маленьким (гораздо меньше, чем CPU предыдущих поколений), экономичным в плане потребления энергии и выделяющим мало тепла. Но с другой стороны, примерно до 10% повысилась стоимость изделия (и это несмотря на то, что площадь чипа, напрямую влияющая на стоимость, уменьшилась). И в чисто технологическом плане изменения не дались даром: новый процессор получился более требовательным к устойчивости параметров питания, так что пришлось оснастить его новым (Socket-478) интерфейсом, где дополнительные контакты обеспечивают нужную стабильность напряжения, подаваемого на процессор.

Или, еще, сравним архитектуры все тех же CPU от AMD и от Intel. Про вторую мы только что упоминали, поэтому рассмотрим продукцию первой. Известно, что эту самую продукцию (CPU Athlon различных модификаций) отличает весьма небольшая по сравнению с Pentium стоимость при примерно равной производительности. Чем этого удалось добиться? Ответ: применением менее высоких (и поэтому более дешевых), чем у Intel, технологий изготовления чипов и усовершенствованием внутренней архитектуры процессора: изощренные алгоритмы кэширования, оптимизированный конвейер и проч. Примерно то же можно сказать и о DDR SDRAM. DDR (Double Data Rate) SDRAM по многим параметрам и способам изготовления мало чем отличается от обычной SDRAM: та же синхронизация шины памяти с системной шиной, практически то же производственное оборудование, энергопотребление, почти не отличающееся от SDRAM, площадь чипа больше лишь на несколько процентов. Изменения заключаются только в применении популярной в последнее время в компонентах PC технологии передачи данных одновременно по двум фронтам сигнала, когда за один такт передаются сразу два пакета данных. В случае с используемой 64-битной шиной это дает 16-байтный за такт. Или, в случае со 133 мегагерцами, уже не 1064, а 2128 Mb/s. Это позволило сразу без значительных материальных и временных издержек создать новую быстродействующую память, причем по цене, мало отличающейся от обычной SDRAM (кстати, DDR SDRAM еще иногда именуют SDRAM-II). То есть мы видим, что новая память при ближайшем рассмотрении есть усовершенствованная старая. В результате стоимость готовой системы процессор+память+системная плата от AMD ниже аналогичной от Intel раза чуть ли не в два, но, очевидно, ее структурная сложность существенно выше.

2.7 Относительное и временное разрешение противоречий в КС

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

В середине 60-х годов в связи с появлением первых мини-компьютеров возникла проблема длины слова. Известно: чем больше длина слова, тем большее число команд должно быть у машины [процессора – здесь и далее прим. мои], тем эффективнее реализуется ее проблемная ориентация; чем больше длина слова, тем выше точность обработки данных. Однако стоимость машины растет пропорционально длине слова. Эти противоречивые факторы служат классическим примером компромисса при проектировании, когда приходиться либо поступиться рабочими характеристиками, либо отказаться от экономии.

Кстати, в настоящее время очень типичным примером целой совокупности подобного рода компромиссов являются персональные компьютеры: в них используются куда более дешевые, но и более медленные, чем в крупных серверах и суперкомпьютерах, элементы. А вот пример временного противоречия. Начиная где-то с 486-х процессоров наметился постоянно возрастающий разрыв в скорости CPU и RAM. Нынешний год стал годом широкого освоения очередных новых типов локальной оперативной памяти – RDRAM (Rambus DRAM) и вышеупомянутой DDR SDRAM (в противовес SDRAM, Rambus использует узкую – 16 бит – шину и огромную по сравнению с ней частоту – 400 MHz, что, учитывая также применяемую технологию DDR дает аж 800 MHz). Причина в их появлении очевидна: при применении старой SDRAM процессор большую часть времени будет простаивать из-за неполучения данных (падение производительности в среднем 40%-50% при использовании CPU с частотой 1.5-2.0 GHz). Противоречие разрешить удалось, но также ясно, что пройдет еще немного времени, и придется снова говорить о необходимости повышения быстродействия подсистемы памяти.

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

2.8 Аппаратные и программные решения

Как известно, многие задачи можно решить двумя принципиально разными путями – аппаратным и программным. (Естественно, в конечном счете все вычисления реализуются программно (причем, что интересно, с другой точки зрения можно сказать, что полностью аппаратно, поэтому это не суть важно), но так называемый «программный» метод базируется на использовании ресурсов центрального процессора и основной памяти КС, в то время как «аппаратный» предполагает наличие другого специализированного элемента (ов)). Преимущество первого заключается, как правило, в хорошем быстродействии и независимости от мощности основных элементов компьютера, однако он недостаточно гибок и довольно дорог, а программные решения, наоборот, недороги, универсальны и легко модернизируются, но требуют наличия мощного компьютера.

Вообще, глядя на историю развития КС, можно отметить интересный факт: с совершенствованием технологий многие аппаратные решения заменяются на их программные эмуляторы. Примеров можно привести довольно много. Например, в первых ЭВМ аппаратно реализовался алгоритмический язык программирования, вскоре эта функция стала программной. Или обратимся к так называемой «оконной» технологии. Первым коммерческим «оконным» продуктом был Xerox 8010 (в 1981 году печально известный под именем Star). Затем появились Apple LISA (1983 год) и Macintosh (1984 год). Вслед за этим произошла принципиальная перемена. Следующим продуктом, реализующим «оконную» технологию, стал Topview фирмы IBM (1984), за ним последовали Windows от Microsoft (1985) и позднее – X Windows System (1987) для UNIX. Эти продукты уже представляли программные реализации системы, которые обеспечивали доступность «оконной» технологии на обычных машинах, не оснащенных специальной аппаратурой. Список примеров можно продолжить (скажем, аналогичным путем развивались текстовые редакторы).

Из более же современного можно отметить мультимедийные технологии. Сначала возьмем те же звуковые платы. Еще относительно недавно они были тотально аппаратными, а сегодня любая современная плата обязательно так или иначе использует ресурсы системы (например, WT-таблицы для синтеза MIDI-музыки). Кроме удешевления конечной системы, это также позволило получить большую гибкость в функционировании. Несколько лет назад появилась и сейчас находится на весьма неплохом уровне чисто программная реализация звука (AC’97 кодек), который позволяет при очень небольших затратах получить весьма качественный звук. Также нельзя не упомянуть о разного рода MP3/MPEG1/MPEG2 и проч. декодерах, лет 6-8 назад являлись необходимыми устройствами «истинного» мультимедиа-РС (беру слово в кавычки потому, что понятие абстрактно и очень быстро меняет свою сущность). Сейчас же, когда мощности CPU вполне хватает для декомпрессии MP-потоков, платы MPEG2-декодера хотя еще и можно найти в продаже, но нечасто, а о MPEG1-платах, а тем более аппаратных MP3-плейерах многие даже вообще не слышали, и звучит это сейчас по меньшей мере смешно. Или вот еще: программные модемы, которые в последнее время из-за своей дешевизны получили повсеместное распространение. Или TV-тюнеры. Или программные системы видеомонтажа. Или… В общем, в процессе развития (сиречь повышения мощности) компьютеров наблюдается множество примеров вытеснения аппаратных реализаций программными. Однако хорошо это или плохо, точнее, в какой степени хорошо? Если в общем, то это смотря для чего. Например, использовать сейчас в РС вышеупомянутые MPEG-декодеры (пусть и с самым непревзойденным качеством картинки) и в самом деле абсурдно, так как даже самый хилый из продаваемых в настоящее время процессоров прекрасно справиться с необходимыми вычислениями самостоятельно, а вот та же система видеомонтажа в профессиональной студии вряд ли будет программной – там стоимость чуть ли не 128-й критерий, на первый план выступают качество и надежность. И программные решения в области звука тоже не являются средством на все случаи жизни, хотя у них много очевидных преимуществ. И всякие «выньмодемы» (приношу извинения за «жаргон», но это слово поразительно точно передает сущность предмета) тоже имеют много противников, и автор в их числе, но все же в магазинах их великий выбор, а значит покупают, потому что дешево. Или, например, сетевая сфера: есть множество программ, реализующих маршрутизацию, кэширование трафика, организацию мостов и проч., которые в целях экономии средств обычно оказывается целесообразно применять для небольших серверов. Но будут ли они эти программы сколь либо эффективно работать на крупном серверном комплексе, к которому одновременно обращаются тысячи пользователей? Тут уж никакой процессорной мощности не хватит, придется использовать отдельные устройства и подсистемы. Нельзя однозначно ответить на поставленный вопрос. Но в любом случае побеждает та технология, которая одновременно является наиболее гибкой, качественной, по возможности универсальной и недорогой. Причем время, как правило, лучше всяких прогнозов определяет такие технологии.