Цель работы:
Научиться использовать Intel TBB для разработки параллельных программ и распараллеливания уже написанных программ, а также анализировать объемы программного кода, сложность программирования многопоточности, отладки, производительности по сравнению с многопоточным программированием с использованием библиотеки pthread. Задания этой лабораторной работы повторяют задачи, которые предлагались к решению в лабораторной работе, в которой использовалась библиотека pthread и OpenMP. Вспомните и проанализируйте программный код, созданный при выполнении этой лабораторной работы. Решите эту же задачу с помощью технологии Intel TBB. Сравните объемы программного кода, сложность программирования многопоточности, отладки, производительности.
Ход работы:
1. Разработать и реализовать алгоритм решения задания с помощью последовательной программы и протестировать его на нескольких примерах.
2. Разработать алгоритм решения задания, с учетом разделения вычислений между несколькими потоками. Избегать ситуаций изменения одних и тех же общих данных несколькими потоками. Составить схему потоков.
3. Реализовать алгоритм в среде Intel TBB и протестировать его на нескольких примерах.