Hardware - разное

       

Программная модель


Принята следующая модель работы PARIX-приложения.

  • При запуске на каждом узле стартует одна и та же программа

  • затем она определяет свое положение в решетке раздела и

  • организует обмен данными с другими своими копиями

    На каждом узле имеется набор глобальных данных (доступных программе), которые определяют положение узла в разделе. Именно

  • количество процессоров в разделе

  • идентификатор данного процессора

  • размеры решетки раздела

  • положение данного процессора в решетке (координаты)

    Обмен данных основан на концепции виртуальных связей между процессорами, которые образуют каналы ``точка-точка'' между любыми процессорами. Набор созданных виртуальных связей задает виртуальную топологию (решетка, конвейер, дерево, гиперкуб).

    В PARIX связи могут быть одного из следующих трех видов:

  • Синхронный канал. Это естественный для архитектуры Parsytec CC тип коммуникационного канала. Процессы, связанные синхронным каналом, синхронизуются при обмене данных: если одна сторона еще не готова к обмену данными, то другая будет ждать готовности. Следующие системные вызовы относятся к синхронным каналам: Send, Recv, Select, SendLink, RecvLink.

  • Синхронная ``случайная'' передача. Это единственный способ передачи данных, при котором не требуется создавать коммуникационный канал. Данные передаются по системным каналам. Однако, при большом размере сообщения библиотечные вызовы автоматически создают виртуальный канал, с целью повышения скорости обмена. Для сообщений данного типа PARIX предоставляет системные вызовы SendNode и ReceiveNode.

  • Асинхронный канал. Такой канал может осуществлять обмен данными не прерывая вычислений на узле. Поэтому канал такого типа улучшает кпд процессора. Прием/передача выполняются с буферизацией как на стороне передатчика, так и на стороне приемника. Следующие системные вызовы обслуживают асинхронные каналы: AInit, ASend, ARecv, ASync, AInfo, AExit



    Содержание раздела