шайтан-код 13.12.11 14:17 // оригинал
Исторически сложилось, что наш комплекс моделирования состоит из двух основных кусков - расчетный модуль, ядро которого восходит ко временам СМок, и относительно свежее междумордие со всякими рюшками и свистелками. Схемы крупные, время обсчета приличного трансгаза могло измеряться минутами даже на свежих процессорах, ну а до полного перетряхивания под современную архитектуру руки, разумеется, не доходили.
И все ж в какой-то момент решили поиграть с явным узким местом в виде решения героической СЛАУ, которое ну явно должно хорошо параллелиться (привет Гауссу, хоть и не по той причине, что сейчас у всех на слуху). Прицелились на ACML, где все по-взрослому, highly-tuned BLAS kernels, higher performance than standard LAPACK implementations, оптимизация под SSE2/SSE3 и т.п. Думали - будет выигрыш в десятки процентов, тогда ну его нафиг, будет в пару-тройку раз - отлично, берем.
Получили выигрыш в 30-40 раз.
Но это еще не конец, и весь рассказ вовсе не о крутизне АМДшной библиотеки. Допереварю сегодняшние результаты и продолжу.