Раcсказ о двух из многочисленных новаций, представленных на IDF. День второй на IDF был богат многими событиями. Про Banias мы уже рассказывали. Теперь речь пойдет о двух новых технологиях, имеющих отношение к программированию. Попутно заметим, что в Intel сотрудников, занимающихся созданием программного обеспечения, больше, чем в Microsoft (утверждение самих интеловцев ;)). Мы наш, мы новый софт построим Значительное внимание на IDF уделяется программированию, в котором Intel также собирается сказать новое слово. "Именно в совершенствовании процеса разработки новых приложений лежит один из основных ключей к прогрессу," - подчеркивал в первый день Пол Отеллини. Эту мысль во второй день расширил и углубил старший вице-президент Intel, глава подразделения Wireless Communications and Computing Group. Как сказал Рон Смит, в прошлом программные приложения разрабатывались, компилировались и отлаживались отдельно для каждой архитектуры.Сейчас, по мнению Рона Смита, настало время иного подхода. Разработка должна идти для всех архитектур одновременно (конечно, имеются в виду Intel-архитектуры). Готовые модули Intel Integrated Performance Primitives (IPP) позволяют писать единый исходный код на C/C++, Java или ASM для Itanium, 32-разрядных процессоров и карманных компьютеров, затем пропускать все это через компилятор Intel Compiler, и отлаживать с помощью утилиты Vtune, которая имеет один и тот же интерфейс для всех архитектур. С помощью предоставляемых Intel инструментов Рон Смит призвал создавать универсальные приложения, которые пишутся один раз, но «узнают» о своей среде исполнения (device-aware apps) и ведут себя сообразно ей. Помимо создания собственных средств разработки Intel сотрудничает с другими поставщиками софтверного инструментария.Идея упросить создание кросс-платформенных приложений, конечно, звучит довольно заманчиво. Однако в каких-то случаях такой подход работать будет, в каких-то - нет. Ибо помимо общих приложений, которые можно представить на любой платформе (например, коммуникаторов), каждой архитектуре свойственны присущие только ей особенности (взять хотя бы организацию памяти), полное использование которых дает максимальную эффективность приложения. Приведение же приложений к общему знаменателю может в ряде случаев отрицательно сказаться на размере и скорости работы приложений - пример Visual Basic перед глазами. Хотя, с другой стороны, медленно работающие приложения требуют быстро работающих процессоров... MMX: старое название новой песни Лежащая у меня шкафу футболка образца 1997 года с надписью MMX Technology, которая надолго пережила рекламируемый ею процессор, вновь будет выглядеть актуальной. На пленарном выступлении второго дня IDF вице-президент Intel Рон Смит объявил технологию Wireless MMX - аппаратную поддержку 64-разрядных мультимедийных инструкций в будущих версиях процессора XScale, предназначенного для КПК и представляющего собой развитие Intel ARM-архитектуры.Знакомые с набором инструкций MMX программисты (ау, где вы), по словам Рона Смита, смогут использовать уже привычные им приемы программирования для быстрого портирования на платформу XScale различных приложений, как-то двухмерных и трехмерных игр, видеопроигрывателей, разпознавалок речи, а также как нельзя более актуальных сегодня криптопрограмм.Преимущества Wireless MMX были продемонстрированы на примере проигрывания видео из MPEG4-файла. При использовании инструкций MMX число кадров в секунду возрастало на 60%. Если подойти к этому с другой стороны и зафиксировать FPS, можно добиться выигрыша в энергопотреблении процессора примерно на одну треть.Автоматического портирования MMX-приложений, как сообщили представители Intel, не получится - архитектуры процессоров все-таки различны, но изменения в коде будут минимальными. С другой стороны, это и хорошо - будет повод лишний раз взглянуть на код, задумавшись над его оптимизацией. Несколько смущает, впрочем, наблюдающееся и по сей день малое разнообразие программ, использующих расширения MMX и наследующих их SSE и SSE 2. Впрочем, КПК еще не скоро догонят по мощности настольные компьютеры (да это и не нужно), и использование дополнений MMX будет реально востребовано рынком. По словам Рона Смита, дополнительный набор инструкций может использоваться всем распространенными на рынке операционными системами: Pocket PC от Microsoft, Symbian OS, Palm OS и Linux от Montavista и Embedix. В помощь разработчикам корпорация предлагает пакет ПО Intel Wireless MMX Technology Software Development Kit.Впрочем, для увеличения производительности имеются и другие, не документированные резервы. По неофициальной информации, 400-мегагерцовый XScale содержит ошибку в работе с памятью, которая не позволяет в полной мере проявиться приросту производительности по сравнению с 250-мегагерцовым. Компания ASUSTeK Computer, обошедшая эту ошибку с помощью дополнительного чипа, получила 30%-прирост производительности. Естественно, что в следующих версиях процессора XScale ошибку исправят, что сделает их более быстрыми.