Я компилирую свой код fortran90 с помощью Intel Visual FORTRAN в Windows Server 2003 Enterprise X64 Edition. Когда я компилирую код для 32-битной структуры и использую опции автоматической и ручной векторизации. Код будет скомпилирован, векторизован. И когда я запускаю его на 8-ядерной системе, скомпилированный код использует 70% процессора, что показывает мне, что векторизация работает. Но когда я компилирую код с помощью 64-битного компилятора, он говорит, что код векторизован, но когда я запускаю его, он показывает использование ЦП только около 12%, что является полным использованием для одного ядра из 8, поэтому это означает, что в то время как компилятор говорит, что код векторизован, векторизация не работает.
И это странно для меня, потому что это на Windows X64 Edition, и я ожидал увидеть обратный результат. Я подумал, что лучше было бы запустить код, скомпилированный для 64-битной архитектуры в 64-битных окнах.
У кого-нибудь есть идеи, почему скомпилированный код не может использовать всю мощь нескольких ядер для 64-битной версии?