Говорим о новых архитектурах как крупных мировых производителей, так и стартапов — waferscale-чипах, тензорных процессорах и устройствах на базе графов.

Подборка по теме:



Фото — Jason Leung — Unsplash

Waferscale для глубокого обучения


При производстве классических процессоров кремниевую подложку делят на индивидуальные кристаллы. Но в случае с waferscale-процессорами полупроводниковую пластину не делят — она становится большим чипом. В результате компоненты оказываются ближе друг к другу, а производительность системы возрастает.

Этот подход использовали инженеры из Cerebras Systems и TSMC, разработав чип для глубокого обучения — Cerebras WSE. Его показали на конференции Hot Chips в конце лета. Устройство представляет собой квадратный кристалл со сторонами в 21,5 см. Он состоит из 1,2 трлн транзисторов, объединённых в 400 тыс. ядер. Эти ядра «общаются» между собой при помощи проприетарной системы Swarm с пропускной способностью 100 Пбит/с.

Разработчики говорят, что чип предварительно оптимизирует вычисления, отфильтровывая нулевые данные в матричных операциях — они составляют от 50 до 98% всех значений. В итоге обучение модели на Cerebras происходит в сто раз быстрее, чем на классических графических процессорах. Однако в NYTimes к подобным заявлениям отнеслись со здоровой долей скептицизма — аппаратное обеспечение пока не тестировали независимые эксперты.

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

Еще один проект в сфере waferscale-устройств для МО — Silicon Interconnect Fabric (Si-IF). Его разрабатывают в лаборатории Калифорнийского университета. Si-IF представляет собой устройство, объединяющее десятки GPU на одной кремниевой пластине. Разработчики уже представили два прототипа на 24 и на 40 графических процессоров. Их производительность в 2,5 раза превышает возможности классических устройств. Систему планируют использовать в ЦОД.

Тензорные процессоры


В мае 2018 года Google анонсировали TPU v3 — третье поколение своих тензорных процессоров для работы с библиотекой машинного обучения TensorFlow. О технических характеристиках нового устройства известно немного. Продакшн-версия будет изготовлена по 12- или 16-нм техпроцессу. Тепловая расчетная мощность — 200 ватт, производительность — 105 TFLOPS при работе с bfloat 16. Это — 16-битная система представления с плавающей запятой, которую используют в глубоком обучении.

На ряде задач производительность второго поколения Google TPU превысила возможности NVIDIA Tesla V100 в пять раз. Инженеры говорят, что третье поколение в восемь раз мощнее своего предшественника. На чипы даже пришлось установить жидкостное охлаждение.


Фото — Cineca — CC BY

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

Чипы, работающие со сложными графами


Британский стартап Graphcore разработал чип для задач глубокого обучения — Colossus IPU (Intelligence Processing Unit). Он содержит 1200 ядер и набор специализированных трансцендентных функций. Каждое ядро обрабатывает шесть потоков. Железо работает в паре с программным обеспечением Poplar. Оно компилирует модели и строит на их основе сложные многоступенчатые алгоритмические графы, которые запускаются на IPU-процессорах. Испытания первых образцов Graphcore показали, что они обладают в сто раз большей производительностью, чем традиционные GPU.

Стартап уже поставляет полноразмерную карту PCI-E для серверов. Она имеет в своем составе два IPU-чипа, выполненные по 16-нм техпроцессу и состоящие из 24 млрд транзисторов. Вычислительная мощность такого устройства составляет 125 TFLOPS. Карты рассчитаны на работу в дата-центрах IaaS-провайдеров и автомобилях с автопилотом. Основатели стартапа говорят, что с их устройствами работает более ста клиентов, однако не называют конкретные компании.

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


Партнёрская программа 1cloud.ru. Пользователи нашего облака могут получать доход и сократить расходы на аренду виртуальной инфраструктуры.

Например, мы предлагаем услугу «Частное облако». С её помощью можно развернуть IT-инфраструктуру для проектов любой сложности.

Комментарии (10)


  1. DesertFlow
    20.10.2019 17:05

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


    А вот в обратную сторону это масштабирование не работает — нельзя сразу получить маленькую максимально эффективную нейронную сеть. По крайней мере, современные математические методы обучения не позволяют это сделать.


    Так что пусть гиганты рынка делают и обучают сверхсложные нейросетки на спец. устройствах. В итоге они придут и на бытовые устройства. Или цена спец. вычислителей снизится ).


  1. rPman
    21.10.2019 08:38

    Гугловские TPU конечно же купить нельзя, только аренда :(

    А что вообще доступно и можно купить? только чтобы цена на производительность не была такой неадекватно высокой что чтобы окупить разницу в энергопотреблении нужно сотню лет нагружать железо?


  1. Max_Drevo
    21.10.2019 09:55

    Все зависит от задачи. Если сетка маленькая и задача достаточно простая то можно выбрать blakcfin
    или ПЛИС(даже яндекс ПЛИС использует к примеру). Есть линейка NVIDIA JETSON (TK1 например продается до сих пор в виде чипа и на плату в принципе можно поместить несколько). Qualcomm еще с 2018 обещают инструменты для машинного обучения на их процессорах, но цена вхождения и ежемесячная абонентка очень велики для маленьких компаний.


    1. rPman
      21.10.2019 10:17

      Это же не готовое железо а чипы, по ссылке именно они
      И к сожалению on chip memory там считанные килобайты с надо несколько мегабайт… Гонять через память медленно.


      Где посмотреть готовое железо с подключением по usb/pcie?


      1. Max_Drevo
        22.10.2019 21:56

        О том и речь что нужно сначала с задачей определиться. Вот вам зачем подключать их по USB/PCI? TK1 -например вообще ARM процессор с видео ядром на 128 ядер CUDA(между неcколькими процессорами можно задачи разбивать). По PCI Совместно сейчас только Xavier работают на сколько знаю. Так же у NVIDIA есть DRIVE PX и сделанная ими для теслы плата с 4-мя процессорами, с тенсор ядрами(но как частное лицо вы их можете получить только в конечном продукте).

        А из подключить по USB можно только дорогую пробу пера от Intell получить (Intel Neural Compute Stick). Лично мне данная разработка только во время презентации понравилась. Я вряд ли ее еще раз в руки возьму. Но это лично мое мнение и мой опыт. есть ребятки которые принаровились и к этой железке… правда как-то ни одного реального проекта на ней я не видел. Только совсем любительские даже не прототипы чего-то для мас маркета. А это что-то да говорит об устройствах для машинного обучения работающих по USB интерфейсу, пускай и 3.0.

        Ах нет, чуть не забыл есть еще Mustang-M2BM-MX2 от Intel, который они представили без цен, и с поддержкой библиотек(где каждое второе слово со *). Чтобы не быть голословным вот.

        Так что начинайте с Т.З. И поймете что большая часть всех этих радостей вам или избыточна, или бессполезна, например по тому что мы код написали до того как железку получили, а большая их часть его не поддерживает, или что более вероятно, у вас никакого желания нет тратить месяцы на изучение новых библиотек и методов работы с ними, а хочется работать с тем где вы уже наработали некий опыт.


        1. rPman
          22.10.2019 22:38

          Не важно, pcie, usb или ethernet, пусть будет встроенный процессор.

          О чем я и сказал, готовое железо в розницу не купишь либо цена будет бессмысленно высокой.

          p.s. само собой железо не для того чтобы лежало покупается, оно должно выполнять задачи. Просто можно заранее выбирать фреймворк/библиотеку/подход под железо.

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


          1. Max_Drevo
            22.10.2019 23:33

            ну во первых для машинного обучения ничего не мешает использовать jetson nano за 140$ в наших широтах. Да звезд с неба не хватает. но стабильные 28 кадров на датасет в 10 000 обьектов на ней запустить можно. что уж там про расчеты говорить… вообще летать будут. а самое главное все библиотеки жует. Себе личную взял, гоняю и нравится. А для чего по серьезней есть 2 пути. Jetson TX2 или Mini ITX c PCI слотом и видео картой. Они доступные и более чем. Видел народ еще пользует LattePanda Alpha с видео картой, но там PCIe 4x и карточку видео с ней на полную гонять не получится.


            1. rPman
              23.10.2019 13:08

              Мне нужно не для распознавания, а для анализа датасетов и обучения нейросетей.

              Jetson nano хорошая железка, компактная, но производительность на бакс у нее (и тем более TX2) хуже чем десктопное железо и игровые видеокарты… я хочу лучше видеокарт.


              1. old_bear
                23.10.2019 13:28

                IMHO, обучение на локальном железе слишком узкая ниша, чтобы можно было найти что-то универсальное и при этом более эффективное, чем видеокарты.
                Если задачи большие, то остаётся только аренда в облаке чего-то по вашему вкусу — пулы видеокарт, TPU и тому подобное. Есть ещё Intel Nervana, но я не в курсе, продают её уже или нет.
                Если задачи маленькие, типа обучения на оконечном устройстве, универсальную железку ещё сложнее найти в продаже.


                1. rPman
                  23.10.2019 17:01

                  Google TPU эффективнее видеокарт только по словам самого гугла в 8 раз, а когда рассказывали об их ИИ играющего в игры, 4 TPU прошлого поколения заменяли 200 видеокарт.

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