StrongARM vs. XScale
Колосс на глиняных ногах, или Украденные
мегагерцы
Геннадий Бойко
Как
бы вы отреагировали на то, что купленный
вами новый компьютер на процессоре Pentium 4
3,06 ГГц работал бы с той же скоростью, что и
ваш старый компьютер, уже не справляющийся
с возложенными на него обязанностями,
собранный на Pentium III 1 ГГц?
Испытали бы вы прилив искренней
радости и энтузиазма? Ну, насчет радости
сильно сомневаюсь, а вот насчет энтузиазма,
думаю, да... Вам бы очень захотелось
хорошенько треснуть по голове того, кто
убедил вас в том, что Pentium 4 - это
необыкновенно круто.
Вот точно также чувствуют себя многие
пользователи, купившие карманные
компьютеры на Intel XScale 400 МГц.
Покупая машинки на новой серии
процессоров, с вдвое увеличенной тактовой
частотой, они были вправе рассчитывать на
порядок большую, по сравнению с КПК,
выполненными на базе StrongARM,
производительность.
Да и не мегагерцем единым славен
XScale: мало того, что новый процессор имеет
вдвое большую частоту по сравнению со
своим предшественником, так у него еще и
кэш-память в четыре раза больше (32 кб + 32 кб
против 8 кб + 8 кб), и расширенный набор
команд ARM V5, который еще более должен
способствовать увеличению скорости
работы.
Ан, нет. Все новые Pocket PC, собранные
на Intel XScale 400 МГц, лишь изредка и
незначительно опережают карманные
компьютеры на базе StrongARM, а по некоторым
тестам, пусть и не очень сильно, но отстают-таки.
Как же так? Куда подевались все прелести
XScale? Как могло случиться, что столь мощный
и навороченный процессор практически
никак себя на деле не проявляет?
Чтобы как следует во все вникнуть
и понять, где тут, собственно, собака
порылась, сегодня мы устраиваем
показательный разбор полетов.
Версия первая, массовая
Если народные массы начинают
искать виновного, обычно он находится
очень быстро. В нашем случае им оказался
всем известный злодей, прозванный в народе
дедом Мастдаем, - компания Microsoft со своей
операционной системой Windows CE. "Вот кто
скушал наши мегагерцы!", - вскричали
недовольные пользователи и стали
забрасывать Мастдая гневными письмами с
провокационными вопросами и угрозами
немедленно прекратить его существование,
дабы избавить будущие поколения от
мучений.
А небедный, но благородный Microsoft
возьми, да и признайся, что, дескать,
действительно, не оптимизировал он
систему под ARM V5, а писал по старинке под ARM
V4. Ну, все! Что тут началось - чуть живьем не
съели. "Верните наши мегагерцы, лентяи!",
"Немедленно подавай нам
оптимизированный софт!" - так и никак
иначе звучали требования возмущенного
народа. Microsoft выбирал лучших своих
представителей и отправлял их в народ с
тем, чтобы объяснить, растолковать... Но ни
в каких объяснениях раздосадованный народ
не нуждался и слушать ничего не хотел!
А посланцы пытались рассказать,
что, оптимизируй они код под ARM V5, он
потерял бы совместимость с ранее
выпущенными КПК на StrongARM и прочих
совместимых на уровне команд процессоров.
И тогда, чтобы обеспечить полную
совместимость, пришлось бы либо делать
систему громоздкой, что совершенно
недопустимо на КПК, либо писать две разные
системы для ARM V4 и ARM V5, что лишено смысла,
поскольку реальный выигрыш составил бы
жалкие проценты.
Конечно, услышали эти слова и
поверили им очень немногие, остальные же
по-прежнему убеждены, что именно Microsoft
всему виной. Но давайте рассуждать здраво.
Оптимизация программного кода - дело,
несомненно, хорошее, но если "железное"
быстродействие вашей системы увеличилось
вдвое, то и старая программа будет
работать много быстрее, пусть и не вдвое,
но никак не на проценты.
Важно заметить, что Microsoft Pocket PC 2002
не стала много более громоздкой и
требовательной к ресурсам, по сравнению с
более ранними версиями Windows CE. Тут
абсолютная правда представителей Microsoft,
которые мягко пытаются нам намекнуть, что
проблема отнюдь не в операционной системе
и не в софте. Но если не в софте, то в чем же?
Версия вторая, очень похожая на
правду
Нашелся-таки человек, которому
удалось прояснить ситуацию. Им оказался
руководитель компании Amazing Games http://www.amazinggames.com/
Свен Майер (Sven Myhre) - известный специалист в
области Poket PC. В своем интервью полный
вариант которого можно найти на сайте http://www.pocketpcthoughts.com/
журналисту Энди Жострому (Andy Sjostrom) он
рассказал исключительно любопытнейшие
вещи, суть которых сводится буквально к
следующему.
Безусловно, Intel XScale 400 МГц много
производительнее своего младшего собрата
StrongARM 206 МГц, но это, так сказать, голая
скорость процессора, которая, дабы быть
полностью востребованной, должна
поддерживаться архитектурой машины. То
есть, мы должны быть уверены, что процессор
полностью загружен потоками команд,
данных, и результаты его вычислений
сохраняются в памяти.
Но все выпускаемые Pocket PC имеют 16-битную
шину памяти, а оба процессора - и Xscale, и
StrongARM - 32-разрядные RISC-процессоры,
использующие команды длиной 32 бита. В
итоге, чтобы полностью загрузить
процессор, частота шины памяти должна быть
вдвое больше частоты шины процессора (либо
данные должны передаваться и по фронту, и
по спаду тактового сигнала шины
процессора).
Плюс к этому, в идеале, чтобы
получить максимальную скорость работы КПК,
шине нужно иметь запас производительности
примерно 25% для операций передачи данных
между другими устройствами при выполнении
приложений.
Не трудно посчитать, что для
процессора XScale 400 МГц нужна шина памяти с
частотой 1000 МГц, для XScale 300 и 200 МГц,
соответственно, 750 и 500 МГц, и для StrongARM 206
МГц - 515 МГц. И вот тут-то мы подходим к
самому интересному - шина памяти Pocket PC
имеет тактовую частоту 100 МГц!
То есть, процессор, которому
требуется шина 1000 МГц, работает на шине,
имеющей на порядок (ровно в 10 раз) меньшую
производительность. Вот оно, то самое
место, где зарыты наши мегагерцы! Вот то
узкое горлышко, через которое не может
прорваться реальная мощь Intel XScale (да,
собственно, и мощь StrongARM, как мы видим,
сдерживается значительно). Какая тут
оптимизация кода, если на аппаратном
уровне творятся такие злодейства!
А нужны ли нам эти мегагерцы?
Нет, не нужны. Если вы используете
свой карманный компьютер всего лишь в
качестве необычного вида записной книжки
или органайзера, то вам вполне хватит
процессора DragonBall 20 МГц, и не стоит тратить
время на бесполезные поиски затерявшихся
мегагерц - пустое это. Но если вспомнить,
что PDA создавались как центральный
компонент мобильного офиса, а сейчас
постепенно превращаются еще и в мобильное
мультимедийное устройство, то станет
понятно, что еще многого им не достает,
чтобы таковыми стать.
Прежде всего, нельзя не заметить,
что все программное обеспечение для
наладонников, мягко говоря, слегка урезано
в своей функциональности, что можно,
конечно, считать особенностью этого софта,
от чего сильно легче не становится. А
потому тенденция такова, что разность
между мобильной и десктопной версией той
или иной программы постепенно сокращается,
и тут аппаратные ресурсы оказываются
вполне востребованными.
Мы, конечно, готовы мириться с
серьезными несовершенствами, такими, как,
например, жалкие 15-18 кадров в секунду при
воспроизведении не самого качественного
видео, но это лишь до поры, до времени.
Карты памяти становятся вполне
приличного размера и стоят относительно
недорого, мощность процессоров возрастает,
можно сказать, не по дням, а по часам,
разрабатываются чипы видеоускорителей, и,
в конце концов, мы уже имеем практически
весь спектр периферийных устройств.
Так что, перед разработчиками
встает серьезный вопрос
производительности КПК, которая, как
выяснилось, катастрофически сдерживается
несовершенством существующей архитектуры
Pocket PC.
И становится очевидным, что
грядут серьезные изменения в аппаратной
части наладонников, ибо понятно, что нет
никакого смысла устанавливать, к примеру,
в новый iPAQ процессор на ядре ARM 11 с тактовой
частотой 750 МГц, если вся его мощь все равно
упрется в старую медленную шину памяти, о
которую сломал свои зубы XScale 400 МГц.
Архитектура
Intel PCA
|
И StrongARM, и XScale - это процессоры
для беспроводных интернет-устройств
с архитектурой Intel PCA - Personal Internet Client
Architecture. И не просто процессоры, а
однокристалльные микрокомпьютеры,
имеющие на борту все, что необходимо
для создания КПК: здесь контроллеры
памяти (DRAM и Flash), контроллеры
прерываний (IRQ) и прямого доступа (DMA),
контроллер LCD-дисплея и контроллеры
PCMCIA/CF, MMC/SD, USB- и Bluetooth- интерфейсов, а
также часы (Real Time Clock) и интерфейс AC 97.
|
Источник: http://www.computery.ru/upgrade/
|