Как известно, история имеет обыкновение повторяться. Эта банальная истина снова (в который уже раз?) подтвердилась в начале мая: по сообщениям независимых источников, впоследствии официально подтвержденным представителями компании Intel, в процессорах Pentium Pro и Pentium II обнаружена ошибка.
«Идеальных процессоров не бывает»
«Опечатка», зарегистрированная в списке ошибок процессора Pentium Pro под номером 46, а Pentium II — 26, проявляется при выполнении операций преобразования чисел с плавающей запятой в целые. Ошибка происходит, если в программе встречаются команды FIST/FISTP с 16- или 32-разрядным отрицательным операндом (на 64-разрядные величины дефект не влияет). Природа ошибки такова, что дефект может (впрочем, уже «смог») проявиться совершенно неожиданно: допустим, некий разработчик, оптимизируя программу, отключил встроенные средства проверки корректности операндов в компиляторе, рассчитывая на то, что процессор должным образом среагирует на ошибки, но этого не произошло. Это отнюдь не умозрительные построения. При испытаниях одной из французских ракет ее бортовой компьютер, обнаружив ошибку, связанную с переполнением, записал в ОЗУ вместо реальных полетных данных отладочный дамп памяти. В результате ракета потерпела крушение.
В понедельник, 5 мая, создатель информационного узла Web Intel Secrets (http://www.x86.org) Роберт Коллинз объявил, что имеются основания предполагать наличие ошибки в процессорах Pentium Pro и Pentium II. Впрочем, первооткрывателем дефекта считается некий профессор, пожелавший остаться неизвестным. В рамках своей научной работы, связанной с необходимостью точных расчетов, он обнаружил, что при определенном сочетании входных параметров составленная им программа выдает неожиданные результаты. Первоначально он предположил, что это связано с ошибками в компиляторе языка программирования Фортран, однако ассемблерная программа, составленная по его просьбе Робертом Коллинзом, определила, что единственный «виновник» сбоев — процессор. После недели исследований инженеры Intel подтвердили — да, в ЦП имеется дефект (см. «Идеальных процессоров не бывает»). Ошибка была зарегистрирована в официальном перечне «опечаток», а представители корпорации заявили, что в самом ближайшем времени она будет исправлена. На этом технические проблемы были исчерпаны.
Зато немедленно возникло множество сложностей иного характера. Известие о дефекте в новейшем ЦП, с помощью которого Intel рассчитывала упрочить свои позиции в секторе высокопроизводительных рабочих станций, означало появление у ее соперников еще одного аргумента в свою пользу. Корпоративные клиенты, которые в последнее время всерьез рассматривали вопрос о переходе с компьютеров SUN, Silicon Graphics, HP и проч. на системы с процессорами Intel, могли засомневаться в целесообразности смены платформы и предпочесть другие ЦП (SPARC, Alpha, MIPS, PowerPC, PA-RISC и т. д.). В наихудшем варианте — если бы оказалось, что ошибка влияет на функционирование прикладных программ, — Intel была бы вынуждена поменять всем желающим дефектные ЦП. Высшие руководители компании (в частности, Крейг Баррет, не так давно посетивший нашу страну) заявляли о готовности действовать в соответствии со своей политикой замены, разработанной в 1994 г., — менять процессоры всем желающим и бесплатно. Это значило потерять на этот раз уже не миллионы, а миллиарды долларов (и кстати говоря, Intel всячески избегает упоминаний о возможности бесплатной замены дефектных ЦП). К тому же, несмотря на то, что технически этот дефект коренным образом отличается от печально известной «опечатки» в процессоре Pentium, в глазах многих потенциальных покупателей репутация нового ЦП была основательно «подмочена».
К моменту поступления информации о дефекте Intel уже успела отгрузить примерно 100 тыс. процессоров Pentium II, а количество проданных Pentium Pro исчислялось десятками и сотнями миллионов. Впрочем, именно это обстоятельство дало Intel возможность заявить, что дефект не настолько значителен, чтобы пользователи беспокоились: если за все годы существования Pentium Pro его никто не обнаружил, то есть все основания полагать, что большинство пользователей с ним не столкнутся и в будущем. «Специалисты Intel все еще исследуют проблему, — сказал Алексей Палладин, менеджер по техническому маркетингу московского представительства компании Intel, — но, судя по предварительным результатам, эта ошибка никак не сказывается на работе прикладных программ».
Раз вредных побочных эффектов пока не обнаружено, Intel не намерена задерживать процесс отгрузки процессоров Pentium Pro и Pentium II. «Фактически у нас не возникло проблем, связанных с отказом от поставок, — заметил Алексей Палладин, — напротив, процессоры Pentium Pro по-прежнему пользуются большим спросом у российских потребителей».
Пока неясно, как повлияет известие об ошибке в Pentium Pro и Pentium II на сбыт компьютеров с этими процессорами. Хотя по репутации нового процессора, как уже говорилось, был нанесен мощнейший удар, нельзя исключать, что маркетинговые мероприятия, проводимые сегодня Intel, позволят сгладить эффект, произведенный сообщением об ошибке. «Я думаю, что это известие не окажет сколько-нибудь существенного влияния на продажу компьютеров с процессорами Pentium II, — сказал Валерий Субботин, заместитель генерального директора по маркетингу компании «СКТБ компьютерных сетей», — большинство пользователей, думаю, никогда не столкнутся с ней». Это мнение разделяют многие реселлеры и фирмы — разработчики ПО. Подтвердив информацию о дефекте, компания немедленно поместила на своем Web-узле (http://www.intel.com) сообщения от разработчиков прикладных пакетов, из которых следует, что «опечатка» никак не влияет на их продукты.
Это подтверждают и российские разработчики ПО. «Сейчас мы проверяем информацию о новой errata [таково официальное название «опечаток» в процессорах] процессоров Pentium Pro, — сказал Василий Логинов, директор компании Stoik Software, — но пока мы не увидели никаких проявлений этого дефекта ни в одной из наших программ». «Обнаруженная в Pentium Pro ошибка возникает при экзотических обстоятельствах, которые не могут встретиться при нормальном выполнении программы. Нам не известны программные продукты, на работу которых она может хотя бы в принципе повлиять, — заметил Константин Анисимович, директор по исследованиям и разработкам BIT Software. — Думаю, что шумиха вокруг найденной ошибки искусственно раздута».