Высокопроизводительные вычисления стали сегодня реальностью не только на уровне суперкомпьютеров и вычислительных кластеров, но и для персональных компьютеров и мобильных устройств. Речь идёт о решении инженерных, экономических и научных задач с использованием высокопроизводительных вычислений и написанием параллельных приложений (прикладных программ).
Параллельные программы нужны для того, чтобы использовать вычислительные мощности многоядерных процессоров и графических ускорителей. В данной работе мы рассмотрим технологию автоматической организации параллельных потоков для многоядерных вычислительных машин.
Нам предстоит оценить параметры эффективности распараллеливания программы на конкретной конфигурации вычислительной системы. По результатам измерения быстродействия определяются показатели ускорения и эффективности распараллеливания. Это опыт исследования и практического знакомства с технологией – не по учебнику, а в форме личногго знакомства. Каждое положение и утверждение можно проверить, «покрутить в руках» и убедиться в его правильнсти или ошибочности.
Мы рассмотрим задачу численной оценки значения определённого интеграла – по двум причинам. Во-первых, многие практические задачи сводятся к нахождению суммы или интеграла. Во-вторых, численные методы интегрирования хорошо поддаются распараллеливанию. Каждое отдельное значение подынтегрального выражения можно вычислять независимо от всех остальных значений. Поэтому численное интегрирование – подходящая задача для знакомства с высокопроизводительными вычислениями.