ПРОБЛЕМЫ И ПЕРСПЕКТИВЫ ПРИМЕНЕНИЯ СУПЕРКОМПЬЮТЕРНОЙ ТЕХНИКИ В УПРАВЛЕНИИ ИНФОРМАЦИОННЫМИ ПРОЦЕССАМИ
THE PROBLEMS AND FUTURE IMPLEMENTATION OF SUPERCOMPUTERS IN INFORMATION PROCESSING MANAGEMENT
К.т.н. А.А. Швеин
A. Shvein
В статье анализируются проблемы эффективности применения суперкомпьютерных вычислительных комплексов, создаваемых на многоядерных микропроцессорных платформах. В связи с наблюдаемыми признаками перехода компьютерной отрасли в новую фазу развития обсуждаются фундаментальные различия между данными, информацией и знаниями. Предлагается концепция построения нового класса эволюционно-технологических моделей, позволяющих анализировать процессы информационного взаимодействия в проблемном пространстве. Обсуждаются перспективные направления исследований и разработок, ориентированных на создание эффективного прикладного программного обеспечения суперкомпьютерных комплексов.
Keywords: supercomputers, problem space, information processing, developmental technologies
суперкомпьютерный вычислительный многоядерный микропроцессорный
Эволюция компьютерных технологий и глобальный кризис
В результате фундаментальных научных открытий математиков, физиков и основоположников компьютерных наук начиная с конца 40-х гг. прошлого столетия в мире стремительно развивались компьютерные технологии, позволяющие с возрастающей скоростью вводить, обрабатывать и запоминать всё возрастающие объемы цифровых данных. По оценкам авторитетных экспертов [1] объемы передачи и хранения данных удваиваются каждые два года, стимулируя стремительно растущий рынок объемом более 15 млрд. долл. США.
Многие ученые еще на ранней стадии развития этого процесса прогнозировали грядущий «информационный взрыв». На протяжении жизни одного поколения, которому довелось перешагнуть рубеж второго и третьего тысячелетий, этот процесс, выражаясь терминами синергетики [2], достиг стадии бифуркации. Произошел Большой Информационный Взрыв, который в значительной степени и привел цивилизацию к глобальному кризису. Многие из субъектов, переживших этот процесс, поставлены на грань выживания.
Масштабы этого явления, непредсказуемость его последствий и почти полная неуправляемость процессами взаимодействия субъектов цивилизации с окружающим миром побуждают ученых переосмысливать фундаментальные законы бытия, а политиков и менеджеров - искать адекватные рычаги управления организациями, обеспечивающие их адаптацию к изменяющимся условиям окружающей среды и полноценное развитие.
Развитие и применение компьютерных технологий в современных условиях является ключевым системообразующим фактором, играющим решающую роль в решении задач формирования и развития нового социально-технологического уклада, который часто называют информационным обществом, экономикой знаний, инновационной инфраструктурой и другими модными терминами.
Для стран, претендующих на ведущие роли в мировой инфраструктуре, стратегически важное место занимают суперкомпьютерные технологии. В 2009 году производительность наиболее мощных суперкомпьютеров превысила порог 1 Петафлоп (1015 операций с плавающей запятой в секунду). К настоящему времени в мире существует 5 суперкомпьютеров, пиковая производительность которых превосходит 1 Петафлоп: три в США, один в Японии и один в Китае. Задачи создания и развития российских суперкомпьютерных технологий и их эффективного применения включены Президентом РФ в перечень пяти приоритетных направлений технологического прорыва. Реализация этих задач является необходимым условием для других приоритетных направлений: создания ядерных технологий нового поколения и нанотехнологий, ракетно-космических технологий и систем глобальной навигации, медицинских технологий и технологий производства новых лекарственных препаратов, а также общедоступных информационно-коммуникационных технологий для науки, образования и населения страны.
Решение перечисленных задач требует концентрации усилий ученых и специалистов, работающих не только в области разработки и производства микроэлектронных компонентов, компьютерных технологий, системного и прикладного программного обеспечения, но и в соответствующих предметных областях. Для инфраструктурного обеспечения и эффективного управления реализацией приоритетных прорывных направлений модернизации страны в настоящее время формируются центры развития, институты развития, регионы развития.
В данной статье приводится краткий анализ текущего состояния исследований, разработок, производства и применения суперкомпьютерной техники за рубежом и в России. Этот анализ показывает, что переживаемый в настоящее время в данной области фазовый переход приводит к серьезным проблемам, имеющим не только технологический характер. Для эффективного решения этих проблем потребуется проведение фундаментальных исследований, уточняющих и развивающих такие классические и общеизвестные, но неоднозначно понимаемые понятия, как данные, информация, знания, коммуникации, инновации, время, управление, и их роль в создании, внедрении и эффективном применении информационно-коммуникационных технологий.
С целью структуризации проблемно-информационного пространства и последующего формирования адекватной сегодняшним проблемам стратегии деятельности институтов развития предлагается концептуальная эволюционно-технологическая модель, на которой иллюстрируются процессы трансформации фундаментальных научных знаний в инновационные технологии и проводится анализ результатов внедрения этих технологий, приводящих к формированию новых социально-технологических укладов.
Современное состояние и проблемы проектирования и применения суперкомпьютерной техники
Один из авторитетных российских экспертов в области анализа тенденций развития современных компьютерных технологий Леонид Черняк приходит к следующему выводу: «Компьютерные технологии чаще всего называют информационными, хотя, по существу, это неверно, поскольку в подавляющем большинстве своем они имеют косвенное отношение к информации. Они предназначены почти исключительно для работы с данными и только в самое последнее время появились отдельные компании, которые берут на себя смелость утверждать, что их новые технологии предназначены для работы непосредственно с информацией» [3].
Среди таких «отдельных компаний» - пионер в создании первых компьютеров и признанный мировой лидер в этой отрасли на протяжении всей, более чем 60-летней, истории развития этой отрасли - корпорация IBM. В последнее время эта корпорация разрабатывает и продвигает своим клиентам новый пакет сервисов под названием «Информация как услуга» и мотивирует эту стратегию следующим образом: «… мы обнаружили, что сотрудники крупных компаний тратят ежедневно 40% своего времени в попытках найти правильную информацию и иногда принимают решения, так и не обнаружив такой информации. Мы пришли к выводу, что доступность информации является ключевым «узким бутылочным горлышком» («bottleneck») для принятия правильных решений» [4].
Другое «узкое горлышко» в сфере компьютерных технологий упоминается в опубликованном в 2008 году обширном докладе рабочей группы DARPA (Департамента Обороны США) [5]. Речь идет об ограничениях архитектуры процессоров, основанной на модели фон Неймана, которая была предложена еще в середине 40-х гг. и до сих пор остается «классической» моделью обработки данных. Упомянутый выше доклад DARPA посвящен анализу сложных проблем (вызовов - challenges), которые обостряются по мере роста производительности вычислительных комплексов за счет роста количества процессорных ядер. По прогнозам авторов этого доклада к 2020 году суперкомпьютерные комплексы и крупные центры обработки данных достигнут Экзафолпной производительности (1018 операций с плавающей запятой в секунду), вычислительные комплексы масштаба департамента - Петафлопной производительности (1015), а встраиваемые вычислительные системы - Терафлопной производительности (1012).
Достижение производительности таких масштабов потребует создания технологий управления десятками и сотнями миллионов параллельно работающих и взаимодействующих между собой процессорных ядер. В связи с этим авторы доклада приводят детальный анализ возникающих проблем, которые классифицированы по четырем категориям:
проблемы, связанные с потребляемой энергией и вычислительной мощностью;
проблемы хранения достаточно больших объемов данных и обеспечения достаточно быстрого доступа к ним;
проблемы управления параллельными вычислительными процессами и их локализацией;
проблемы создания технологий, обеспечивающих устойчивость к возможным аппаратным или программным сбоям (resiliency) вычислительной системы.
Для решения перечисленных проблем коллектив авторов доклада DARPA [7] рекомендует сосредоточить исследования и разработки в области создания новых компьютерных технологий по следующим четырем направлениям:
совместные исследования и разработки в области проектирования компьютерного оборудования и архитектуры вычислительной системы, направленные на достижение оптимального соотношения вычислительной мощности и энергопотребления;
совместные исследования и разработки в области проектирования архитектуры вычислительной системы и программных моделей, направленные на реализацию возможностей переноса на новую систему разработанных ранее решений и контроль взрывного роста степени распараллеливания вычислений с целью эффективной реализации прикладного программного обеспечения;
совместные исследования и разработки алгоритмов, прикладных программ, инструментальных средств и среды исполнения с целью полного и эффективного использования вычислительных мощностей новых многоядерных архитектур;
проведение исследований, направленных на глубокое понимание принципов построения многоядерных архитектур, учитывающих проблемы ускоренного роста аппаратной и алгоритмической сложности, суперкомпьютерных конфигураций, которая существенно увеличивает риск сбоев и обнаружение ошибок в программном обеспечении.
Авторы подчеркивают междисциплинарный характер рассматриваемых проблем, многие из которых имеют фундаментальную природу.
Проблемы первой категории (1) связаны с продолжающимся ростом количества транзисторов на кристалле, которое, согласно «закону Мура», продолжает удваиваться каждые 18 месяцев. Это приводит к росту энергопотребления: современные суперкомпьютеры и центры обработки данных потребляют десятки МВт электроэнергии. Стремительный рост количества таких комплексов в условиях дефицита энергоресурсов грозит обострением глобального кризиса.
Проблемы второй категории (2) связаны именно с упомянутым выше «узким горлышком» архитектуры фон Неймана. Речь идет о том, что на выполнение процессорных операций требуется существенно меньше времени, чем на загрузку и выгрузку обрабатываемых данных. На это обстоятельство еще в 1977 году обратил внимание Джон Бэкус на церемонии вручения ему Тьюринговской премии [6]: «Можно с уверенностью сказать, что должен существовать менее примитивный способ внесения больших изменений в хранилище (данных - А.Ш.), чем перегонять туда и обратно через узкое фон Нейманово горлышко огромное количество слов. Это не просто проблема узкой трубочки, через которую проходит поток данных, а, что существенно важнее, это интеллектуальное узкое горлышко, которое навязывает нам мышление в стиле «слово в единицу времени» вместо того, чтобы стимулировать наше мышление в терминах более высоких концептуальных понятий».
Вероятно, сейчас большинство программистов знают, что Джон Бэкус был основным разработчиком первых алгоритмических языков ФОРТРАН и АЛГОЛ, а также способа описания синтаксиса языков программирования в форме Бэкуса-Наура. Однако очень немногие из специалистов сейчас знают, что на упомянутой церемонии Дж. Бэкус предлагал для решения проблемы концепцию функционального программирования [6], уменьшающую интенсивность потока данных и переносящую акцент в управлении вычислительными процессами на более осмысленные понятия. Фундаментальное инновационное решение проблемы, предложенное Дж. Бэкусом в 1977 году, произвело впечатление на компьютерное сообщество, но так и не трансформировалось в течение 40 лет в инновационную технологию.
В эти годы развитие методов проектирования компьютерных технологий и методов их применения происходило как бы в «параллельных мирах» [7]. Прогресс в области производства полупроводниковых кристаллов, наряду с линейным ростом количества транзисторов, сопровождался линейным ростом тактовой частоты. Это позволяло пропорционально увеличивать количество выполняемых процессором операций в секунду и без особых проблем переносить нарабатываемое программное обеспечение на более производительный процессор с фактически прежней архитектурой. Критериями прогресса считались тактовая частота процессора и количество операций над (машинными) словами в единицу времени. Параллельно с этим армия программистов, мыслящих «в терминах более высоких интеллектуальных понятий», усовершенствовала способы взаимодействия человека с компьютером до такой степени, что этой машиной теперь может управлять не только программист, но и любой грамотный человек. В результате к концу XX века почти все знания [8], накопленные человечеством, доступны для компьютерной обработки в виде огромного количества наборов (машинных) слов. Этот процесс развивается уже не по линейному, а по экспоненциальному закону.