Архитектура потоковой супер ЭВМ, построенной на принципах схемной эмуляции

Статья - Компьютеры, программирование

Другие статьи по предмету Компьютеры, программирование

?уктуре решаемой задачи.

Можно сказать, что идея РВС в настоящее время завоевывает все большее число сторонников и более того, воспринимается многими именно той "фишкой", которая ляжет в основу архитектуры ЭВМ нового типа. Тем не менее, как на мой взгляд, "всенародная любовь" эта является скорее вынужденной, что можно объяснить просто отсутствием должной альтернативы, чем совершенством имеющегося метода. Потому как у изначально красивой идеи, на этапе реализации обнаружилось немало системных проблем.

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

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

Представляемая на суд читателя статья является, по сути, первой попыткой заявить вслух, что нет смысла и дальше бороться с "ветряными мельницами". Потому что на самом деле есть другой путь - более дешевый, эффективный, надежный и доступный каждому! И, к тому же, свободный от каких-либо системных "болезней". Путь, который почему-то совершенно выпал из поля зрения идеологов и разработчиков вычислительных систем, имя которому - моделирование.

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

Целью данной статьи есть стремление показать, что именно идея моделирования, предварительно развитая автором до понятия эмуляции алгоритмов и систем, обладает поразительной возможностью к развитию. Она открывает альтернативный подход к проектированию вычислительных систем, основанный на том, что заниматься реконфигурированием их среды каждый раз заново от задачи к задаче - как раз и не нужно! Достаточно только один раз "заточить" ее под структуру авторского модуля схемной эмуляции, а потом просто эмулировать задачи пользователей, элементарно загружая их в уже подготовленную среду. В этом случае отпадает всякая необходимость ценой неимоверных аппаратно-программных усилий стремиться подогнать структуру вычислительной системы (S*) к структуре пользовательской задачи (S), потому что в среде эмуляции мы уже непосредственно работаем с исходным информационным графом задачи пользователя (G). Предлагаемый подход прост в реализации и совершенно свободен от недостатков, которыми в избытке наделены абсолютно все известные архитектуры, включая и реконфигурируемые вычислительные структуры.

Не менее интересной прелестью предлагаемой к рассмотрению архитектуры является практически абсолютная ее способность к так называемому масштабированию. Это означает, что ее вычислительная мощность растет практически линейно включенному в архитектуру оборудованию, состоящего, к тому же, из однотипных узлов. Можно сказать, что высокая степень масштабирования с легкостью позволяет практически разрешить наверно самый глобальный недостаток известных суперкомпьютеров - чрезвычайно малый срок морального устаревания, составляющий примерно пять лет.

Для изделий, чья стоимость начинается от сотен тысяч долларов и достигает десятков миллионов - это очень важный фактор, заметно сдерживающий развитие суперкомпьютерной отрасли в целом!

Суперкомпьютер, спроектированный в соответствии с предлагаемой автором идеей, в заметно меньшей степени будет зависеть от такого понятия как срок морального устаревания.

Корнями идея эмуляции алгоритмов и систем уходит к классу программных продуктов, известных как схемные симуляторы. В качестве примера можно упомянуть такие, как Micro-CAP от "Spectrum SoftWare", PSpice от "MicroSim Corp." и т.д., которые у нас еще принято называть программами моделирования электронных устройств.

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

В таких программах уровни входных сигналов, выбираемые из так называемого массива входных воздействий, шаг за шагом подаются на вход программной модели устройства. Разумеется, что само слово "массив" - это атрибут программистских "штучек