ОКО ПЛАНЕТЫ > Новости науки и техники > Найден способ избавить компьютер от зависаний и сбоев

Найден способ избавить компьютер от зависаний и сбоев


19-02-2013, 01:55. Разместил: virginiya100

Группа ученых из Университетского колледжа Лондона (Великобритания) сообщила о разработке принципиально новой компьютерной архитектуры, избавленной от отказов и зависаний. В ее основе лежат алгоритмы, заимствованные у природных хаотических систем. Компьютер на базе такой архитектуры (разработчики называют его «systemic», т. е. «общесистемный») может перепрограммировать себя, чтобы приспособиться к фактическим условиям работы и продолжить работу в условиях отказа одного или нескольких компонентов.

«Из хаоса возникает порядок»: это высказывание обычно выглядит, как красивая, но бесполезная на практике аксиома. Тем не менее, команда ученых во главе с Питером Бентли (Peter Bentley) нашла способ превратить абстрактную формулу в основу для безотказных компьютеров. Взять хотя бы такой пример, как автономные беспилотные летательные аппараты (БПЛА) – летающий робот с таким компьютером может быстро изменить программу своих действий, справляясь с полученными в ходе боя повреждениями. Есть и другие применения для новой вычислительной архитектуры, включая создание более реалистичных моделей человеческого мозга.

Современные компьютеры плохо приспособлены к моделированию природных процессов – работы нейронов или образования пчелиного роя. Корень этих проблем заключен в линейном характере функционирования: в общем случае компьютер предназначен для последовательного исполнения инструкций в определенном порядке. Как поясняет Питер Бентли: «В природе все по-другому. Природные процессы имеют распределенный, децентрализованный и вероятностный характер. Также они устойчивы к отказам и могут восстанавливаться после значительных повреждений. Компьютеры тоже должны получить такие способности».

Современный компьютер как конвейер: берет одну инструкцию из памяти, выполняет ее, сохраняет результат, затем цикл повторяется. Вся работа привязана к одному центральному механизму, «счетчику команд». Как конвейер обеспечил большой рост производительности труда в свое время, компьютеры открыли огромные возможности для выполнения расчетов и автоматизации. В то же время, традиционный подход плохо приспособлен для параллельного исполнения задач. Даже когда пользователь думает, что на компьютере работает несколько приложений сразу, фактически компьютер постоянно переключает цепочки выполняемых инструкций, незаметно для человеческого глаза.

Питер Бентли и его коллега, Христос Сакеллариу (Christos Sakellariou) построили новый компьютер, в котором данные существуют на равных правах с инструкциями по обработке этих данных. Например, этот компьютер связывает между собой температуру воздуха на улице с действиями на случай жары. Результаты обработки согласно инструкциям делятся на пулы численных элементов, которые обозначаются термином «системы».

Каждая полученная «система» имеет собственную память, в которой содержатся контекстно-зависимые данные. Это значит, что отдельная «система» может взаимодействовать только с другими такими же «системами». Вместо счетчика команд работой «систем» управляет генератор псевдослучайных чисел – этот генератор призван имитировать случайность природных процессов. Системы выполняют свои команды одновременно, при этом ни одна из них не имеет преимущества перед другими. Весь пул систем взаимодействует параллельно и случайно, а результат вычислений получается, как итог всех этих взаимодействий.

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

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

По материалам сайта New Scientist, ITProPortal и The Verge.


Вернуться назад