ТЕНДЕНЦИИ

Тактико-технические характеристики RWC

Для создания RWC-приложений были разработаны новые объектные языки программирования. Первым таким языком стал MPC++ - диалект С++, дополненный набором функций для параллельных вычислений. Немало идей, реализованных в MPC++, японские ученые взяли из схожего языка HPC++, стандартизованного в США, и из Europe C++ - параллельной версии С++, применяемой европейскими научными центрами. Еще один язык, OCore, реализованный на платформах Intel и Sun, дополнил объектные понятия новой концепцией “сообщества” - набором одновременно выполняющихся и активно взаимодействующих друг с другом объектов, синхронизация которых осуществляется из главного модуля. В OCore также встроены средства автоматического распределения памяти. Все эти языки были реализованы в виде кросс-платформных компиляторов, способных автоматически распараллеливать и масштабировать код, а также и оптимизировать выполнение программы на основе анализа истории ее работы.

Управление параллельными программами происходило с помощью специализированной ОС SCore с разделением времени, организующей очереди программ в форме иерархических деревьев.

Основной аппаратной платформой проекта стал компьютер RWC-1. Он основывался на архитектуре Reduced Interprocessor Communication Architecture (RICA), существенно снижающей трафик межпроцессорного взаимодействия. Для запуска нового потока параллельного приложения RWC-1 расходовал только один цикл, не вызывавший ни дополнительных прерываний, ни обращения к супервизору. Генерация нового потока осуществлялась посылкой управляющему ядру системы сообщения, на что также требовался всего один такт. Рассылка сообщений синхронизировалась дополнительным микропроцессорным механизмом.

RWC-1 предоставлял программам единую виртуальную память, гибко распределяя ресурсы по четырем уровням приоритетов выполнения. К 1996 г. в нем насчитывалось 1000 процессоров. В последних конфигурациях этой машины сосредоточено около 2000 вычислительных узлов.

Одновременно японские лаборатории проектировали дешевые параллельные компьютеры, основанные на коммерческих процессорах. В 1995 г. на кластере из пяти SPARC-станций были развернуты ОС SCore-S и компилятор MPC++. Год спустя новый кластер с 256 Мб ОЗУ объединил в 100 Мбит/с сети уже 64 процессора Intel Pentium Pro/200 МГц и достиг производительности суперкомпьютера Cray T3D. Задача формирования структуры белка (проект PAPIA), ранее решавшаяся на однопроцессорной машине за 79 мин, на этом кластере была выполнена за 89 с.

В 1998 г. под управлением ОС NetBSD и SCore-D в сети Myricom Myrinet (2,56 Гбит/с) заработал кластер из 128 процессоров. Японцам удалось портировать на него пакет трехмерной графики PGL, созданный в НАСА. Производительность системы составила 12,8 Гфлопс.

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

Параллели с реальным миром

В рамках RWC было создано множество проектов, имеющих как чисто научную, так и коммерческую ценность. Наиболее известны следующие системы.

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

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

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

Кластер действовал в сложных условиях: экспериментаторы всячески мешали их работе. Например, когда роботы создавали движущуюся цепочку, чтобы по принципу “глухой ведет слепого” всей группой добраться до нужной цели, эта цепочка разрушалась, и они должны были быстро восстановить исходный порядок. При этом глобальной управляющей структуры кластера не было: роботы сами координировали групповую активность и договаривались между собой о ролях. Интересно, что наиболее подходящей математической платформой для кластера оказались генетические самообучающиеся алгоритмы - как и в случае с автономным JANUS.

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

- Искусственная рука с 12 пальцами, оборудованная множеством сервомоторов и датчиками давления. Эта рука, установленная на заводе компании Yaskawa Electric, умеет аккуратно брать и перемещать хрупкие предметы (например, лампочки). Она уникальна тем, что способна работать с объектами произвольных и заранее неизвестных форм, для которых невозможно придумать готовый алгоритм нежного захвата и осторожного перемещения в пространстве. В основу ПО здесь положена самообучающаяся система программных агентов.

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

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

В отдельное направление были выделены работы над мультимодальным ПК. Его первый прототип был создан в 1996 г. и управлялся речью и жестами через интерфейс GSI-PC (Gesture-Speech Interface PC). Пользователь общался с образом виртуального человека на экране, который также отвечал ему голосом и жестами. Начальный вариант обладал словарным запасом из 100 популярных слов, понимал 30 категорий жестов, функционировал на ПК с процессором Pentium 133 МГц, 16 Мб ОЗУ и японской версией Windows 3.1. Изображение принималось на CCD-камеру (420 тыс. цветов), а распознавание выполнялось DSP-платой. Постепенно мультимодальный ПК научился выделять фазы диалога, тесно связанные одной смысловой темой, причем независимо от языка общения. Компания Sharp создала на основе этих наработок систему распознавания японской речи, мимики и жестов, учитывающую ориентацию головы собеседника и отслеживающую синхронность определенных жестов с произносимыми словами.

Интересно, что в ходе этих экспериментов японские ученые предсказали грядущий бум роботов-игрушек, а крупные корпорации прислушались к этим рекомендациям - и не прогадали. Собачку Sony Aibo сегодня знает весь мир.

Сделать им еще предстоит больше, чем сделано...

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

- алгоритмы распознавания и автоматической классификации шаблонов речевого и невербального общения людей;

- технологии семантической обработки текстов и отбора знаний, точно соответствующих поставленному запросу;

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

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

- средства распределенной интеграции компьютеров в масштабе страны;

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

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

Незаконченные RWC-работы разделены на конкретные научные и прикладные проекты. Наиболее перспективные направления были оформлены в отдельные организационные структуры с независимым финансированием. Достижения RWC применяются в таких японских компаниях, как Sanyo, NEC, Hitachi, Toshiba, Sharp, Fujitsu, Mitsubishi, Oki, Nippon и др.

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

Подробную информацию о проекте можно найти на сайте: www.rwcp.or.jp.

Версия для печати