Санкт-Петербургский государственный университет
Опубликован: 24.08.2014 | Доступ: свободный | Студентов: 1538 / 627 | Длительность: 08:35:00
Лекция 1:

Изменение вычислительно-информационной парадигмы: новые подходы и модели

Лекция 1: 12 || Лекция 2 >

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

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

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

Увеличение быстродействия вычислительных устройств и уменьшение их размеров с неизбежностью приводит к необходимости операций с "переходными" процессами. Серьёзным ограничением классической модели вычислений является разбиение памяти на изолированные биты. Во-первых, сокращение длины такта и расстояний между битами с определенного уровня делает невозможным рассматривать их изолированно в силу законов квантовой механики. Вместо примитивных операций с классическими битами в будущем логично перейти к операциям, задаваемыми теми или иными динамическими моделями микромира, оперирующими с наборами взаимосвязанных "битов" [Shor P., 1997; Tien D. K., 2003]. При этом простейшими "моделями" могут остаться классические операции с битами.

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

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

В некотором смысле, переход к разработке и созданию моделей сложных вычислений закономерный этап развития микропрограммирования. Понимание возможных преимуществ работы устройств с эффективным микрокодом отмечалось еще в 50-е годы прошлого века. Во втором ряду серии ЕС ЭВМ в конструкцию была заложена возможность динамического микропрограммирования. Хорошо известен целый ряд ЭВМ — от "Мир-1" до "Эльбруса", использующих языки высокого уровня (High Level LanguageHLL) как машинные [Терехов А. Н., 1993]. В настоящее время технологии микропрограммирования, т.е. создания программ в виде компилируемых текстов, естественным образом сдвигаются в сторону физических процессов.

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

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

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

Лекция 1: 12 || Лекция 2 >