Ради интереса хочу показать сообществу график, который демонстрирует производительность C# для матричных операций, по сравнению с C++, C++ с OpenMP, а также Parallel Extensions. По оси X — размер матриц. По оси Y — время выполнения операции умножения в секундах (шкала логарифмическая).
Что уважаемое сообщество думает на эту тему? Имеет ли смысл разрабатывать performance-critical приложения на .NET? Или стоит вкладывать больше энергии в изучение Intel-евских тулов? (Intel TBB, MKL, IPP)? Или просто использовать OpenMP?
P.S.: Картинка снята из моего блога. Полный очерк (на английском) тут.
Что уважаемое сообщество думает на эту тему? Имеет ли смысл разрабатывать performance-critical приложения на .NET? Или стоит вкладывать больше энергии в изучение Intel-евских тулов? (Intel TBB, MKL, IPP)? Или просто использовать OpenMP?
P.S.: Картинка снята из моего блога. Полный очерк (на английском) тут.