Железо не стоит на месте, и многие задачи, которые год назад имело смысл параллелить, сейчас спокойно обрабатываются в реальном времени на одном ядре. Скажем, на моем C2D E8500 одно ядро шифрует AES-256-CBC 100MB в секунду. Это сравнимо со скоростями дисков и сети, т.е. в большинстве случаев не является боттлнеком. Blowfish, например, еще быстрее. Про аудио кодеки вы вообще не весть к чему ляпнули - уже много лет не существует аудио кодеков, которые не укладываются в realtime. С видео тоже особых проблем нет - man mencoder | grep thread, к тому же видео оффлоудится в GPU со своей собственной параллельностью и гораздо большей эффективностью. Короче, это автоматическое распараллеливание - фича для ленивых программистов, которая позволит в _некоторых_ случаях ускорить _некоторые_ алгоритмы. Разумеется, со своим оверхедом. А в `обычных приложениях' боттлнек вобщем-то и не в CPU, а в memory latency, так что серебряной пули нет :)
|