Мне любопытно, используют ли новые компиляторы некоторые дополнительные функции, встроенные в новые процессоры, такие как MMX SSE, 3DNow! и так?
Я имею в виду, что в оригинальном 8086 не было даже FPU, поэтому старый компилятор даже не может его использовать, а новые компиляторы могут, поскольку FPU является частью каждого нового процессора. Итак, используют ли новые компиляторы новые функции ЦП?
Или правильнее было бы спросить, используют ли новые функции стандартной библиотеки C / C ++ новые возможности?
Спасибо за ответ.
РЕДАКТИРОВАТЬ:
Итак, если я вас правильно понял, даже некоторые стандартные операции, особенно с числами с плавающей запятой, можно выполнять с помощью SSE быстрее.
Чтобы использовать его, я должен включить эту функцию в моем компиляторе, если он ее поддерживает. Если это так, я должен быть уверен, что целевая платформа поддерживает эти функции.
В случае некоторых системных библиотек, требующих максимальной производительности, таких как OpenGL, DirectX и т. Д., Эта поддержка может поддерживаться в системе.
По умолчанию из соображений совместимости компилятор не поддерживает ее, но вы можете добавить эту поддержку, используя специальные функции C, предоставляемые, например, Intel. Это должен быть лучший способ, поскольку вы можете напрямую контролировать, когда и когда вы используете специальные функции желаемой платформы, для написания приложений с поддержкой нескольких процессоров.
add
реализован по-разному на разных семействах процессоров. При выборе между выводом PPC и выводом Intel компилятор выполняет те же основные действия, что и при выборе между выводом SSE и выводом без SSE. - person Dennis Zickefoose   schedule 18.05.2010