Тензорный процессор Google (Google Tensor Processing Unit, Google TPU) — тензорный процессор, относящийся к классу нейронных процессоров, являющийся специализированной интегральной схемой, разработанной корпорацией Google и предназначенной для использования с библиотекой машинного обучения TensorFlow. Представлен в 2016 году на конференции Google I/O, при этом утверждалось, что устройства к тому моменту уже использовались внутри корпорации Google более года
TensorFlow — открытая программная библиотека для машинного обучения, разработанная компанией Google для решения задач построения и тренировки нейронной сети с целью автоматического нахождения и классификации образов, достигая качества человеческого восприятия[4]. Применяется как для исследований, так и для разработки собственных продуктов Google. Основной API для работы с библиотекой реализован для Python, также существуют реализации для C Sharp, C++, Haskell, Java, Go и Swift.
По сравнению с графическими процессорами, рассчитан на более высокий объём вычислений с уменьшенной точностью (например, всего 8-разрядную точность[3]) при более высоких производительности на ватт и отсутствие модуля для растеризации и текстурных блоков[1][2].
Утверждается, что тензорные процессоры применялись в серии игр в го программы AlphaGo против Ли Седоля[2] и в следующих подобных поединках[4]. Также корпорация применила тензорные процессоры для обработки фотографий Google Street View на предмет извлечения текста, сообщалось, что весь объём обработан менее чем за пять дней. В Google Фото один тензорный процессор может обрабатывать более 100 миллионов фотографий в день. Также устройство применяется для самообучающейся системы RankBrain, обрабатывающей отклики поисковой системы Google.
Архитектура
Устройство реализовано как матричный умножитель для 8-разрядных чисел, управляемый CISC-инструкциями центрального процессора по шине PCIe 3.0. Изготавливается по технологии 28 нм, тактовая частота составляет 700 МГц и имеет тепловую расчётную мощность 28—40 Вт. Оснащается 28 Мбайт встроенной оперативной памяти и 4 Мбайт 32-разрядных аккумуляторов, накапливающих результаты в массивах из 8-битных множителей, организованных в матрицу размером 256×256. Инструкции устройства передают данные на узел или получают их из него, выполняют матричные умножения или свёртки[5]. В такт может производиться 65536 умножений на каждой матрице; в секунду — до 92 трлн[
Это если очень сжато и просто....специальный процессор для систем машинного обучения, главная задача которого не точность, а скорость вычислений. Но точность при этом все равно достаточно высокая и не влияет на конечный результат.
Это сообщение отредактировал BigJew - 18.11.2019 - 14:57