Курс, изложенный в учебном пособии, посвящен описанию базовых методов построения параллельных алгоритмов и программ для вычислительных систем с общей и с распределенной памятью. В первых четырех главах дается краткая характеристика архитектур параллельных вычислительных систем,рассматриваются основные области их применения, модели параллельных алгоритмов и программ, обсуждаются вопросы создания масштабируемых алгоритмов и излагаются базовые параллельные методы решения широкого круга задач. В следующих двух главах подробно рассмотрены методы построения масштабируемых параллельных алгоритмов сортировки больших объемов данных и особенности согласованной параллельной генерации последовательностей псевдослучайных чисел. Последние три главы посвящены обсуждению общих проблем применения многопроцессорных систем для решения сеточных задач: декомпозиции графов, динамической балансировки загрузки, визуализации сеточных данных. В курсе обсуждаются методы построения эффективных масштабируемых параллельных алгоритмов, направленных на сокращение времени решения задач описываемых большими объемами данных. В связи с этим, существенное внимание уделяется анализу эффективности базовых параллельных алго ритмов и параллельных методов решения ряда задач обработки данных. Пособие предназначено для широкого круга студентов, аспирантов и специалистов, желающих изучить и практически использовать методы создания алгоритмов для решения вычислительно трудоемких задач на параллельных вычислительных системах. Учебное пособие основано на материалах лекций, читавшихся на протяжении многих лет в Московском физико-техническом институте (государственном университете). Рекомендовано Советом учебно-методического объединения классических университетов по прикладной математике и информатике. Moscow Institute of Physics and Technology (State University) Mikhail Yakobovskiy Introduction to the Parallel Methods of Problem Solving The aim of the course is to describe the basic methods for parallel algorithms and programs creation for the distributed and shared memory computer systems. The fi rst four chapters provide a brief description of architectures of parallel computing systems; the main application areas of parallel computing systems as well as the diff erent parallel programming models and algorithms are considered; the problems of scalable algorithms creation are discussed and the basic parallel methods suitable for a wide range of applications are described. In the following two chapters the methods of designing scalable parallel algorithms for large data sorting are considered and the specifi city of the concordant parallel generation of pseudorandom number sequences is described in detail. The last three chapters are devoted to the general problems of multiprocessor systems application for various mesh problems: graph decomposition, dynamic load balancing, and mesh data visualization. Methods of designing eff ective scalable parallel algorithms which allow reducing the run-time