Описание:Основным способом повышения производительности вычислителей является увеличение числа параллельно работающих процессоров, однако реализация алгоритмов для подобных вычислителей (таких как суперкомпьютер «Ломоносов» производительностью более 400 ТФлопс) требует специальных знаний и подходов. В рамках курса изучаются методы параллельного программирование в вычислительных сетях (кластерах) с использованием языка С++ и технологии MPI, система параллельного программирования OpenMP, методы многопотокового программирования в системах под управлением UNIX (pthreads), а также особенности системной архитектуры UNIX-систем, и использование системных вызовов UNIX для наиболее эффективного решения ресурсоемких вычислительных задач. Кроме того, рассматриваются способы организации сетевого взаимодействия программ, и приемы эффективного ввода-вывода данных. При этом акцент ставится не на системное программирование как таковое, а на использование всего упомянутого аппарата для повышения эффективности вычислений и обработки данных. По материалам данного спецкурса проводится компьютерный практикум для студентов 4го курса (Зубюк А.В.).