Атлас искусственного интеллекта: руководство для будущего. Кейт Кроуфорд
Кейптауна[170]. Однако термин получил распространение только в 1960-х годах, особенно после того, как был использована в вычислительной технике, начиная с Дартмутской системы разделения времени. Математики Джон Кемени и Томас Курц разработали программу разделения времени для доступа к вычислительным ресурсам после предложения одного из первых основателей ИИ Джона Маккарти. Как они писали в журнале Science в 1968 году: «Во-первых, все вычисления пользователей происходят на ведомом компьютере, а исполнительная программа („мозг“ системы) находится на ведущем компьютере. Поэтому невозможно, чтобы ошибочная или беглая пользовательская программа на ведомом компьютере „повредила“ исполнительную программу и тем самым остановила всю систему»[171]. Проблематичный вывод о том, что управление эквивалентно интеллекту, будет продолжать формировать область ИИ в течение десятилетий. Как утверждает Рон Эглаш, эта формулировка сильно перекликается с рассуждениями о беглых рабах до Гражданской войны[172].
Терминология «хозяин-раб» была воспринята многими как оскорбительная и была удалена из Python, языка кодирования, распространенного в машинном обучении, и Github, платформы для разработки программного обеспечения. Однако она сохраняется в одной из самых обширных вычислительных инфраструктур в мире. Spanner от Google – названный так потому, что охватывает всю планету, – это массивная, глобально распределенная, синхронно реплицируемая база данных. Это инфраструктура, которая поддерживает Gmail, поиск Google, рекламу и все распределенные сервисы Google.
Функционируя по всему миру, Spanner синхронизирует время на миллионах серверов в сотнях центров обработки данных. В каждом центре есть «хозяин», который постоянно получает GPS-время. Но поскольку серверы опрашивали различные задающие генераторы, существовала небольшая задержка в сети. Как Как устранили эту неопределенность? Ответ заключался в создании нового сетевого протокола – запатентованной формы, – чтобы все серверы могли синхронизироваться независимо от того, в какой точке планеты они находятся. Google без иронии назвал этот новый протокол TrueTime.
TrueTime функционирует путем установления доверительных отношений между локальными часами центров обработки данных, чтобы они могли решать, с какими коллегами синхронизироваться. Благодаря достаточно большому количеству надежных часов, – включая GPS-приемники и атомные часы, которые обеспечивают чрезвычайно высокую степень точности, – и достаточно низким уровням сетевой задержки, TrueTime позволяет набору серверов гарантировать определенную последовательность событий в глобальной сети[173].
Самое замечательное в этой системе – это то, как TrueTime справляется с неопределенностью при наличии дрейфа на отдельных серверах. «Если неопределенность велика, Spanner замедляется, чтобы ее переждать», – объясняют исследователи Google[174]. Это воплощает фантазию о замедлении времени, о его перемещении по своему усмотрению и о приведении планеты
170
Eglash, «Broken Metaphor,» 361.
171
Kemeny and Kurtz, «Dartmouth Timesharing,» 223.
172
Eglash, «Broken Metaphor,» 364.
173
Brewer, «Spanner, TrueTime.»
174
Corbett et al., «Spanner,» 14, cited in House, «Synchronizing Uncertainty,» 124.