2008-10-21 2 views
7

Должна ли моя программа поддерживать IA64, или она должна поддерживать только x64?Должна ли моя программа на C++ поддерживать IA64 или только x64?

Я сам не смог легко найти компьютеры IA64. Является ли IA64 мертвым?

MS, похоже, имеет широкую поддержку IA64, но мне потребовалось много времени, чтобы иметь возможность найти IA64, и мне пришлось в конечном итоге получить его на eBay.

ответ

7

Какое программное обеспечение вы разрабатываете? Если это не тип приложения центра обработки данных или приложение для хруста высокого класса, я был бы удивлен, если бы возникла потребность в версии ia64. И даже тогда я думаю, что это будет ситуация, когда вам нужно спросить, не стоит ли вам ее поддерживать, вам, вероятно, не нужно.

Пара вещей с верхней части моей головы, что может помешать в ia64 порт:

  • любые инструменты сторонних разработчиков или библиотеки вы в зависимости от необходимости поддерживать его
  • невыровненные доступы, которые идут в основном незамеченными на x86 и x64 будет вызывать головные боли на ia64

конечно, я не работаю на Gartner или IDC или тех, кто делает анализ рынка, поэтому вы должны принять то, что я говорю здесь с тем, что скепсис вы валяется.

Поинтересовались ли клиенты или потенциальные клиенты?

2

Вы единственный человек, которому разрешено судить о том, будут ли ожидаемые продажи покрывать расходы на разработку и поддержку.

-1

Если вы пишете на C++, это действительно имеет значение? Я имею в виду, что вы не говорите, что заставляет вашу программу «знать» о базовой архитектуре машины, на которой он работает. Из самого C++ вы должны быть достаточно хорошо защищены от любых различий между ними. Конечно, тестирование на эзотерической платформе может быть затруднено, но нужно ли тестировать его на всех платформах, которые вы «поддерживаете»?

+1

Я бы сказал, да, вы не можете продать продукт, который вы не тестировали. – quinmars 2008-10-21 08:37:34

+1

Также существует гораздо большая стоимость, чем просто разработка. Поддержка и QA приходят на ум как основные. – 2008-10-21 11:58:09

+1

И, конечно, если вам нужно тратить деньги на поддержку, вы хотите сделать достаточно дополнительных денег, чтобы компенсировать это. – 2010-01-01 21:52:01

0

Я бы не стал беспокоиться о поддержке IA64, если клиент конкретно не просит об этом. В противном случае это просто еще одна платформа для тестирования. Разве Intel все еще делает процессоры на базе IA64?

1

В теории, предполагая, что вы придерживаетесь хороших методов программирования на С ++, вам все равно, что то, что вы пишете, это x64, IA64 или даже SPARC или PowerPC или что-то еще. Просто убедитесь, что ваш код является 64-битным чистым (например, не предполагая, что целые числа и указатели имеют одинаковый размер), и все будет в порядке.

Кроме ...

Там всегда чудные условия бахромы, вызванные необычными проблемами с оборудованием, несоответствующими составителями или «реализацией определенным» острыми углами в вашем языке. (C и C++ и содержат много этих «осуществление определенного» вещи!)

Итак ...

Вы хотите проверить на вашей цели. Это может стать очень дорогостоящим, но есть места, которые позволят вам протестировать приложения на определенной аппаратной платформе за определенную плату. Если вы много работаете над кросс-платформенными материалами, для вашего оборудования может быть самым дешевым, но небольшие магазины и более редкие платформы часто лучше всего тестируются на арендованном оборудовании для центров обработки данных.

1

Если у вас есть доступ к IA64, то это абсолютно необходимо, чтобы ваш код работал на нем. Портирование вашего кода на другую архитектуру процессора выявит всевозможные скрытые проблемы.

Возможно, у вас может быть переполнение строки на 1, что не отображается в Linux/Windows/x86, но сбой программы из-за разной компоновки стека или выравнивания структуры. Вы можете предположить, что ~ 1UL == 0xFFFFFFFF.

Я сохраняю свой код на C++ IA64 чистым, но у меня уже есть несколько машин, потому что я фанат.

Смежные вопросы