Поток Building Block библиотеки или MPI?какой из них лучше для меня? - PullRequest
2 голосов
/ 02 февраля 2010

Я планирую изучать параллельные вычисления, сейчас я думаю о MPI или TBB. На самом деле, у меня нет особого опыта в этом. Полагаю, мне лучше начать с чего-то простого в управлении. Сначала я могу попробовать что-то вроде грубого кода. Какой из них может быть проще для меня? Спасибо.

Ответы [ 2 ]

2 голосов
/ 02 февраля 2010

Это зависит от вашего определения параллелизма и того, что вы пытаетесь достичь. Смысл TBB заключается в использовании преимуществ многоядерных процессоров. В этом сценарии параллелизм означает одновременную работу на нескольких ядрах.

Однако основным преимуществом MPI является распределенная память параллельных вычислений. В этом сценарии ваше приложение запускается в кластере на разных физических машинах и взаимодействует друг с другом по TCP или другому проприетарному протоколу.

Таким образом, в зависимости от вашей проблемы пространство может быть лучше. Это действительно зависит от проблемы, которую вы пытаетесь решить.

1 голос
/ 02 февраля 2010

MPI и TBB очень, очень различаются по подходу.

MPI - это в основном библиотека для передачи сообщений .Это сложнее использовать для разработки многопоточного приложения, поскольку оно обеспечивает более строгие правила изоляции.Однако он позволяет масштабировать до нескольких процессов, работающих в нескольких системах.

TBB , с другой стороны, действительно направлен на то, чтобы значительно упростить многопоточность в одном приложении.и более доступным.Это очень похоже на подход к времени выполнения параллелизма Microsoft и даже TPL в мире .NET .

...