Коллектив Авторов - Цифровой журнал «Компьютерра» № 161
Тем не менее и сегодня ещё стопроцентная надёжность остаётся недостижимой. Даже дата-центры таких гигантов бизнеса, как Amazon, Facebook, Google, Microsoft, обеспечивают аптайм лишь с одной девяткой после запятой (онлайн 99,9 процента времени). Вправе ли мы надеяться, что однажды научимся строить вычислительные машины, сохраняющие работоспособность вне зависимости от качества кода, решаемых задач, любых других обстоятельств? Учёные — пожалуй, единственные, кто ещё не растерял оптимизма. На днях группа британских компьютерщиков (University College, London) обнародовала результаты эксперимента, в рамках которого была создан действующий прототип именно такой — абсолютно надёжной! — машины.
Британцы оттолкнулись от простого рассуждения. Мы строим компьютеры и разрабатываем программы, равняясь на последовательное исполнение команд. Суперскалярные фокусы в микропроцессорах (уже Intel Pentium умел исполнять несколько команд одновременно) и суперкомпьютеры с их тысячами параллельно работающих узлов лишь маскируют это препятствие. Взгляните на картину в целом: весь компьютерный мир всё ещё крутится вокруг идеи последовательного исполнения. Если одна команда в потоке приводит к непредвиденному результату, выполнение прекращается — и вся задача остаётся нерешённой.
Представьте, как смешно выглядел бы, скажем, человек, надели нас природа таким вычислителем. Мы застывали бы на месте, если под ногой вдруг обнаруживалась бы лужа, теряли дар речи, если «синтезатор голоса» вместо слов вдруг выдавал бы хрипы и кашель. Слава богу (или эволюции), живые системы строятся по иному принципу. В живой природе балом правит децентрализованный, вероятностный, массивно-параллельный подход. Выполняя свои повседневные функции, тело получает информацию из нескольких источников, обрабатывает их независимо и не в унисон, а в случае непредвиденных ситуаций адаптируется, оценивая и корректируя состояние вышедших из строя узлов за счёт узлов, сохранивших работоспособность.
Это и попытались воспроизвести в виде компьютерной архитектуры британцы. Идея, несколько упрощая, следующая: каждая большая задача разбивается на множество независимых кусков, которые — и это важный момент — вместе с необходимыми исходными данными передаются на исполнение разным микропроцессорам. Авторы назвали это «системными вычислениями», потому что каждый микропроцессор с порученной ему частью задачи здесь фактически является самодостаточной системой (архитектура HAoS — Hardware Architecture of Systemic computation). Работают они одновременно, асинхронно, словно пчелиный рой или части человеческого тела. Вышла из строя одна система? Не беда! Можно добавить избыточности, сделав резервные системы, ждущие повода вступить в игру, а можно заставить некоторые из систем следить за соседями, скажем, перезагружая их в случае необходимости. Результатом станет машина, не просто чрезвычайно устойчивая к сбоям, но и обладающая необычной для компьютеров способностью «лечить» себя на ходу.
Строго говоря, авторы HAoS Америки не открыли, но научная пресса комментирует их работу тепло: британцы спроектировали и построили (с помощью имеющихся на рынке FPGA и графических процессоров) действующий, практически применимый образчик сверхнадёжного компьютера с архитектурой, отличной от доминирующей фон-неймановской, а попутно ещё и доказали, что такая машина может быть производительней, нежели предполагалось ранее.
HAoS — больше, чем просто эксперимент: уже есть конкретные планы её практического применения. К сожалению, пока не дома и не в офисе, где цена компьютерного сбоя не настолько велика, чтобы оправдать смену вычислительной архитектуры. HAoS планируется применить в науке — для эффективной симуляции живых систем (вроде очень сложных генетических алгоритмов или нейросетей). А следующим кандидатом считаются военные и представители космических отраслей. Так управление дроном кажется задачей, хорошо укладывающейся в идею и возможности HAoS. Равно и частные космические извозчики вроде SpaceX могут заимствовать такую архитектуру для своих бортовых компьютеров.
Будут ли и персоналки когда-нибудь строиться из системных кубиков а-ля HAoS? Очень может быть. Но тут необходимо сделать приятную поправку: на самом-то деле миллиарды человек уже пользуются преимуществами HAoS-подобных систем. Каждый день! Для того чтобы это увидеть, необходимо переключить внимание с микроуровня на уровень макро. Вспомните о коммерческих дата-центрах, с которых начался сегодняшний рассказ. «Облака», в которых хранятся данные и выполняются веб-сервисы Google, Facebook и прочих, к настоящему моменту превратились из просто серверных ферм в сложное целое, функционирующее в соответствии с принципами, очень похожими на живую природу.
Посмотрите, как строит своё облако, скажем, Microsoft. Кирпичиком, мельчайшей функциональной единицей для неё сегодня стал — как она сама его нарекла — ITPAC: контейнер размером с небольшой загородный домик, вмещающий тысячи серверов (на фото выше). Такой «кирпич» полностью самодостаточен: извне ему требуется только какой-никакой источник электричества и широкий интернет-канал, но, строго говоря, даже качество этих двух компонент особой роли не играет. ITPAC бросают в любой точке Земли — и он вливается в облако, беря на себя часть вычислений. Избыточность и высшая степень абстракции решаемых задач от «железа» позволяют не беспокоиться о судьбе конкретного «кирпича»: облако составлено из тысяч подобных юнитов — и если сколько-то из них выйдут из строя, на работоспособности облака в целом это не скажется. Та же картина в Google (где сломавшиеся серверы даже не трудятся менять сразу, ибо смысла в такой спешке нет), в Facebook (где петабайтные кластеры, работающие в том числе и под Erlang, обслуживают лишь несколько человек), в Amazon, Dropbox и многих других крупных компаниях.
Тот факт, что облака периодически всё-таки «зависают», говорит не столько о неспособности инженеров справиться с вечной проблемой, сколько о достигнутом консенсусе между спросом и предложением. Надёжности в 99,9 процента, очевидно, достаточно для бизнеса и рядовых пользователей. А конкуренция со временем улучшит эту цифру — возможно, и путём заимствования наработок из проекта HAoS. В любом случае, необходимость беспокоить рядового пользователя сменой архитектуры появится вряд ли.
К оглавлению
Инновации
Почему стартаперам не нужно сразу бежать за инвестициями в Sequoia
Игорь Балк, управляющий директор Global Innovation Labs
Опубликовано 18 февраля 2013
В России государство пытается внедрять механизмы «инновационных лифтов». В теории каждый из инновационных проектов должен проезжать «этажи», на каждом из которых определённые структуры предоставляют ему господдержку — чаще всего финансирование в той или иной форме. То есть от предпосевной стадии (pre-seed) до как минимум этапа рыночного расширения (expansion) стартап может рассчитывать на инвестиции при участии институтов развития, причём, как правило, достаточно крупных.
Пока трудно утверждать, что такая схема в нашей стране заработала. Тем временем в США вопросы финансирования стартапов на ранних этапах развития решаются благодаря механизму ангельского инвестирования, то есть без участия инвестиционных гигантов. И это принципиальная деталь. На Западе стартаперы, как правило, не стремятся брать деньги на ранних стадиях у таких ведущих игроков, как, скажем, Sequoia Capital. По одной простой причине: вот инноваторы взяли деньги у Sequoia. Но… что делать, если этот же инвестор откажется давать деньги в рамках следующего раунда? Представьте себе ситуацию: крупный инвестор, на которого вы рассчитывали, вам отказывает. И уже не важно, почему именно. В таком случае двери во все другие фонды для вас тут же закроются. Ибо клеймо «Этому проекту отказали в самой Sequoia Capital!» будет уже не смыть. Никто не поверит, что известный фонд «просто так» отказался от продолжения сотрудничества. И все будут искать изъяны в молодом бизнесе…
В США стартаперы сами мотивированы брать деньги сначала у мелких инвесторов, начиная переговоры с крупным инвестфондам позднее, когда риски уже существенно ниже. В рамках такого сценария куда ниже вероятность того, что в следующем раунде привлечение средств компания не сможет «поднять» деньги.
Итак, преимущества цепочки «от мелких инвесторов к крупным» очевидны. А что в России? Я лично знаю ребят, которые, располагая только идеями, красивой презентацией и промоматериалами, получили 20 млн долларов инвестиций, тогда как подобному проекту в США не дали бы и 5 млн. Справедливая оценка этого стартапа не превышала 2-4 млн долларов. Да, эти деньги инноваторы получили бы. Но инвестор наверняка сказал бы им: «Берите деньги, сделайте что-нибудь, а потом мы будем смотреть, что у вас получается. И — стоит ли с вами дальше иметь дело».