Все новости от 4 октября 2004 г. Инструменты программирования Intel для новых 64-разрядных чипов
Intel сделала важный шаг в направлении реализации преимуществ нового поколения процессоров, выпустив инструменты программирования, позволяющие разработчикам создавать ПО для 64-разрядных чипов х86.
В понедельник компания планирует анонсировать новую версию своего компилятора — важного инструмента, который преобразует ПО, написанное программистами, в инструкции, воспринимаемые компьютером.
В этом году Intel начала продавать процессоры Xeon и Pentium 4 с 64-битным расширением набора команд EM64T, которое позволяет им легко использовать память емкостью свыше 4 Гбайт. 64-разрядные чипы Intel появились больше чем через год после того, как конкурент Advanced Micro Devices предложил в своих продуктах Opteron и Athlon 64 собственную версию реализации этой идеи, AMD64.
Компиляторы создают код для чипов как от Intel, так и от AMD, сказал директор по маркетингу отделения программных продуктов Intel Джеймс Рейндерс. «Нашим заказчикам нужна возможность создавать код, который хорошо работал бы на их машинах. Какой-то процент этих машин может быть не-Intel машинами. Наш код работает, по крайней мере, не хуже любого другого компилятора для процессоров AMD».
Компиляторы Intel выйдут для Linux, которая уже существует в 64-битных версиях от Red Hat и Novell, и для Windows, которая будет поддерживать 64-разрядные чипы х86 не ранее 2005 года.
В число заказчиков инструментов программирования Intel входят IBM и Oracle, которые строят с их помощью свои СУБД. И даже несмотря на то, что программисты open-source в подавляющем большинстве предпочитают компилятор GCC (который сам является проектом open-source), их используют разработчики Red Flag Linux и базы данных MySQL.
Компьютерная индустрия пристально следит за распространением 64-разрядных процессоров х86, которые могут исполнять и существующее 32-битное ПО. Intel много лет продвигала другую 64-разрядную конструкцию, Itanium, которая плохо совместима с 32-битным ПО для архитектуры х86, но в последнее время позиционирует этот процессор только для наиболее мощных машин, а ярый сторонник Itanium, компания Hewlett-Packard отказалась от рабочих станций Itanium в пользу 64-разрядных моделей х86.
Компилятор для программ на языках C и C++ для Windows и Linux стоит $399; версии для программ на языке Fortran продаются по цене от $499 до $1399.
Sun Microsystems, относительно новый игрок на рынке серверов х86, агрессивно продвигает операционную систему Solaris для этих чипов, но Intel не планирует ее поддерживать. «Мы хотим угождать своим заказчикам, а они уходят от версий Unix, ориентированных на конкретного поставщика оборудования, к Linux для х86, поэтому и мы сосредоточили усилия в этом направлении», — сказал представитель компании Майкл Хоулиган.
Основную часть доходов Intel получает от процессоров, но программное обеспечение компании служит важным катализатором использования преимуществ ее чипов. Сейчас компания делает упор не только на 64-битные расширения, но и на новые процессоры, которые лучше приспособлены к решению нескольких задач одновременно.
Первое поколение этих многозадачных чипов вышло с технологией гиперпоточности Intel, которая позволяет процессору быстро переключаться на вторую последовательность инструкций, или поток, пока первая ожидает поступления новых данных. Следующее поколение этой технологии выйдет в 2005 году, когда Intel выпустит двуядерные процессоры, объединяющие на одном кремниевом кристалле по два обрабатывающих ядра.
С точки зрения программного обеспечения многопоточность и многоядерность ставят перед программистами одну и ту же проблему: как писать программы, решающие несколько задач одновременно. Это сложная проблема, и массовое программное обеспечение решает ее в минимальной степени, говорит Рейндерс.
Иногда программисты разбивают задачи на два потока — например, один для основного механизма программы и один для пользовательского интерфейса, — но это делается не с целью повышения производительности, а для удобства программирования.
Следующим шагом станет разбиение на отдельные потоки программных модулей. Например, в видеоигре, моделирующей физические эффекты, вместо того, чтобы направлять весь физический механизм по одному потоку, можно реализовать каждый физический эффект в виде отдельного потока.
Чтобы облегчить внесение этих изменений, Intel предлагает и другие программные инструменты. Ее программа VTune измеряет производительность по отдельным потокам, так что программисты могут определить, насколько эффективны те или иные подходы. А программа Thread Checker контролирует ПО во время работы, фиксируя случаи некорректной синхронизации двух потоков.
«Нехорошо, когда один (поток) должен записывать данные, а другой — считывать их, и они выбиваются из правильного порядка, а еще хуже то, что ошибки синхронизации трудно обнаружить ввиду их непредсказуемости. Опыт переноса программы на многопоточную среду может быть очень разочаровывающим», — признает Рейндерс.
Предыдущие публикации:
В продолжение темы:
|