Аннотация

Курс содержит введение в технологии параллельного программирования для вычислительных систем различных классов. В него включены краткие сведения об архитектурах параллельных систем, рассмотрены понятия и виды параллелизма, описаны технологии параллельного программирования OpenMP для систем с общей памятью, CUDA и OpenCL для графических процесссоров и гетерогенных компьютеров, а также интерфейс передачи сообщений MPI для систем с распределенной памятью. Соответствует актуальным требованиям Федерального государственного образовательного стандарта высшего образования. Для студентов высших учебных заведений, обучающихся по инженерно-техническим направлениям. Может использоваться студентами, магистрантами и аспирантами других специальностей при изучении родственных дисциплин, а также преподавателями смежных дисциплин.

Аннотация

B третьей части учебного пособия рассматриваются задачи, решаемые семантическими анализаторами и генераторами объектного кода трансляторов. Основное внимание уделяется принципам, закладываемым в организацию памяти транслируемой программы, и методам доступа к локальным и нелокальным данным процедур. На этой основе рассмотрены применяемые в современных языках подходы к контролю типов данных и функции семантического анализа. Обсуждаются основные задачи генератора кода, такие как формирование последовательности тетрад, управление памятью, выбор инструкций, распределение регистров и порядок вычислений; рассматриваются методы оптимизации кода. Пособие адресовано студентам старших курсов и аспирантам, а также преподавателям смежных дисциплин. Оно может быть полезно студентам и аспирантам ряда Других технических специальностей, связанных с разработкой и использованием программного обеспечения.

Аннотация

Первая часть конспекта содержит обзорные сведения по некоторым раз- Делам комплекса программных средств, обеспечивающих анализ, разработку, поддержку и визуализацию параллельных программ для различных архитектур многопроцессорных вычислительных систем. Работа содержит вводный анализ проблем организации высокопроизводительных вычислений, основные сведения об информационной структуре алгоритмов и некоторых существующих средствах ее автоматизированного анализа и визуализации. Рассматриваются возможности и способы практического использования систем автоматического и автоматизированного распараллеливания программ, в том числе известных визуальных систем параллельного программирования. Описываются структура, возможности и способы применения программных средств визуализации процессов фактического исполнения параллельных программ на примере библиотеки МРЕ из состава интерфейса передачи сообщений МР1 – фактического стандарта ДЛЯ систем с распределенной памятью. Изложение сопровождается графическими материалами и скринщотами (снимками состояния визуальных интерфейсов) рассматриваемых программных средств. Адресовано студентам V курса дневной формы обучения АВТФ (направления 230100.68 «Информатика и вычислительная техника» и 231000.68 «Программная инженерия»).

Аннотация

Изложены теоретические основы аппарата определения лексики (регулярные выражения) и синтаксиса (формальные грамматики) языков программирования, элементы теории конечных автоматов без памяти и методы ее практического применения для автоматизированного преобразования системы регулярных выражений в конечный автомат – лексический анализатор. Изучаются нисходящие и восходящие методы синтаксического анализа, основанные на преобразовании формальных грамматик в конечные автоматы с магазинной памятью. Рассматриваются различные способы решения задачи нейтрализации синтаксических ошибок. Изучаются наиболее типичные задачи, решаемые на этапе семантического анализа: организация памяти программы, доступ к локальным и нелокальным данным, контроль типов. Обсуждаются основные задачи генератора кода, такие как управление памятью, выбор инструкций, распределение регистров и порядок вычислений; рассматриваются методы оптимизации кода. Приводится описание учебного программного обеспечения и методические указания по выполнению лабораторных работ и курсового проектирования. Учебник рекомендуется студентам старших курсов и аспирантам, а также преподавателям смежных дисциплин, а также студентам и аспирантам ряда других технических специальностей, связанных с разработкой и использованием программного обеспечения.

Аннотация

Во второй части учебного пособия изложены основные свойства формальных грамматик и их связь с задачей автоматного синтаксического анализа, нисходящие и восходящие методы синтаксического акцепта, т. е. восстановления дерева грамматического разбора, теоретические основы и методы проверки пригодности формальных грамматик для реализации этих методов, способы преобразования грамматик в конечные автоматы со стековой памятью (так называемые распознаватели), а также основные способы расширения акцепторов до синтаксических анализаторов, решающих задачи нейтрализации ошибок и преобразования входного текста в промежуточную форму представления – постфиксную запись. Пособие рекомендуется студентам старших курсов и аспирантам, а также преподавателям смежных дисциплин. Оно может быть полезно студентам и аспирантам ряда других технических специальностей, связанных с разработкой и использованием программного обеспечения.

Аннотация

В первой части рассмотрены процедурная и автоматная модели лексического анализа, изложены теоретические основы аппарата определения лексики (регулярные выражения) языков программирования, элементы теории конечных автоматов без памяти и методы ее практического применения для автоматизированного преобразования системы регулярных определений в лексический анализатор, способы организации информационных таблиц трансляторов, алгоритмы поиска в таблицах и пополнения таблиц. Адресовано студентам старших курсов и аспирантам, а также преподавателям смежных дисциплин. Может быть полезно студентам и аспирантам ряда других технических специальностей, связанных с разработкой и использованием программного обеспечения.

Аннотация

Пособие содержит: краткое введение в архитектуру параллельных вычислительных систем; введение в проблематику параллельного программирования для параллельных систем различных классов: «множественный поток команд, множественный поток данных» (МКМД) с общей памятью, МКМД с распределенной памятью и «одиночный поток команд, множественный поток данных» (ОКМД); сведения о технологии OpenMP и ее использовании при разработке параллельной программы для вычислительной системы с общей памятью, об архитектуре NVIDIA CUDA и ее использовании при разработке параллельной программы для графического процессора, об интерфейсе передачи сообщений MPI, а также о библиотеке MPE и их использовании при разработке параллельных программ для вычислительных систем с распределенной памятью. Предназначено для студентов старших курсов (бакалавриат, магистратура), обучающихся по укрупненной группе направлений и специальностей 230000 «Информатика и вычислительная техника». Может использоваться студентами, магистрантами и аспирантами других специальностей при изучении родственных дисциплин, а также преподавателями смежных дисциплин.

Аннотация

В учебном пособии содержатся материалы, которые можно использовать при изучении структурной и функциональной организации суперкомпьютеров и параллельных вычислительных систем, а также для освоения принципов их использования. Описываются основные архитектурные решения двух основных современных классов параллельных вычислительных систем – кластеров высокой производидельности и массивно-параллельных процессоров. Пособие адресовано студентам, обучающимся по специальностям 09.03.01 «Информатика и вычислительная техника» и 09.03.04 «Программная инженерия».

Аннотация

В издании изложены теоретические основы аппарата определения лексики (регулярные выражения) и синтаксиса (формальные грамматики) языков программирования, элементы теории конечных автоматов без памяти и методы ее практического применения для автоматизированного преобразования системы регулярных выражений в конечный автомат лексический анализатор. Изучаются нисходящие и восходящие методы синтаксического анализа, основанные на преобразовании формальных грамматик в конечные автоматы с магазинной памятью. Автор пособия приводит наиболее типичные задачи, решаемые на этапе семантического анализа: организация памяти программы, доступ к локальным и нелокальным данным, контроль типов. Кроме того, обсуждаются основные задачи генератора кода, такие как управление памятью, выбор инструкций, распределение регистров и порядок вычислений; рассматриваются методы оптимизации кода. Приводится описание учебного программного обеспечения и методические указания по выполнению лабораторных работ и курсового проектирования.

Аннотация

Учебное пособие представляет краткое введение в проблематику параллельного программирования для параллельных систем различных классов. В него включены краткие сведения об архитектурах многопроцессорных систем, рассмотрены понятия и виды параллелизма, изложена технология параллельного программирования OpenMP для систем с общей памятью, а также подробно описан интерфейс передачи сообщений MPI. Материал глав, содержащих описание конкретных технологий параллельного программирования, сопровождается контрольными вопросами.