stringtranslate.com

Блок с плавающей точкой

Блочная плавающая точка ( BFP ) — это метод, используемый для обеспечения арифметики, приближающейся к плавающей точке , при использовании процессора с фиксированной точкой . BFP назначает группу мантиссов (неэкспоненциальную часть числа с плавающей точкой) одной экспоненте, а не одной мантиссе, назначаемой ее собственной экспоненте. BFP может быть выгоден для ограничения использования пространства в оборудовании для выполнения тех же функций, что и алгоритмы с плавающей точкой, путем повторного использования экспоненты; некоторые операции над несколькими значениями между блоками также могут быть выполнены с уменьшенным объемом вычислений. [1]

Общая экспонента находится по данным с наибольшей амплитудой в блоке. Чтобы найти значение экспоненты, необходимо найти количество ведущих нулей ( count leading zeros ). Для этого количество левых сдвигов, необходимых для данных, должно быть нормализовано к динамическому диапазону используемого процессора. Некоторые процессоры имеют средства, чтобы найти это самостоятельно, например, инструкции по обнаружению экспоненты и нормализации. [2] [3]

Алгоритмы с блочной плавающей точкой были подробно изучены Джеймсом Харди Уилкинсоном . [4] [5] [6]

BFP можно воссоздать программно для небольшого прироста производительности.

Форматы микромасштабирования (MX)

Форматы микромасштабирования (MX) — это тип формата данных Block Floating Point (BFP), специально разработанный для рабочих нагрузок ИИ и машинного обучения. Формат MX, одобренный и стандартизированный основными игроками отрасли, такими как AMD, Arm, Intel, Meta, Microsoft, NVIDIA и Qualcomm, представляет собой значительный прогресс в форматах данных с узкой точностью для ИИ. [7] [8] [9]

Формат MX использует единый общий коэффициент масштабирования (экспонента) для блока элементов, что значительно сокращает объем памяти и вычислительные ресурсы, необходимые для операций ИИ. Каждый блок из k элементов использует этот общий коэффициент масштабирования, который хранится отдельно от отдельных элементов.

Первоначальная спецификация MX вводит несколько конкретных форматов, включая MXFP8, MXFP6, MXFP4 и MXINT8. Эти форматы поддерживают различные уровни точности:

Форматы MX продемонстрировали свою эффективность в различных задачах ИИ, включая большие языковые модели (LLM), классификацию изображений, распознавание речи и системы рекомендаций. [10] Например, MXFP6 близко соответствует FP32 для задач вывода после тонкой настройки с учетом квантования, а MXFP4 можно использовать для обучения генеративных языковых моделей лишь с незначительным снижением точности.

Формат MX был стандартизирован через Open Compute Project (OCP) как Microscaling Formats (MX) Specification v1.0. [7] Также были опубликованы библиотеки эмуляции, чтобы предоставить подробную информацию о подходе к науке о данных и выбрать результаты MX в действии. [11]

Поддержка оборудования

Операции BFP поддерживает следующее оборудование:

Смотрите также

Ссылки

  1. ^ "Блочная плавающая точка". Словарь BDTI DSP . Berkeley Design Technology, Inc. (BDTI). Архивировано из оригинала 2018-07-11 . Получено 2015-11-01 .
  2. ^ Чхабра, Арун; Айер, Рамеш (декабрь 1999 г.). "TMS320C55x A Block Floating Point Implementation on the TMS320C54x DSP" (PDF) (Отчет о применении). Digital Signal Processing Solutions. Texas Instruments . SPRA610. Архивировано (PDF) из оригинала 2018-07-11 . Получено 2018-07-11 .
  3. ^ Элам, Дэвид; Иовеску, Сезар (сентябрь 2003 г.). "Реализация блочной плавающей точки для N-точечного БПФ на ЦСП TMS320C55x" (PDF) (Отчет о применении). Программные приложения TMS320C5000. Texas Instruments . SPRA948. Архивировано (PDF) из оригинала 11.07.2018 . Получено 01.11.2015 .
  4. ^ Уилкинсон, Джеймс Харди (1963). Ошибки округления в алгебраических процессах (1-е изд.). Энглвуд Клиффс, Нью-Джерси, США: Prentice-Hall, Inc. ISBN  978-0-486-67999-0. МР  0161456.
  5. ^ Мюллер, Жан-Мишель; Бризебар, Николя; де Динешен, Флоран; Жаннерод, Клод-Пьер; Лефевр, Винсент; Мелькионд, Гийом; Револь, Натали ; Стеле, Дэмиен; Торрес, Серж (2010). Справочник по арифметике с плавающей запятой (1-е изд.). Биркхойзер . дои : 10.1007/978-0-8176-4705-6. ISBN 978-0-8176-4704-9. LCCN  2009939668.
  6. ^ Овертон, Майкл Л. (2001). Численные вычисления с использованием арифметики с плавающей точкой IEEE — включая одну теорему, одно практическое правило и сто одно упражнение (1-е изд.). Общество промышленной и прикладной математики (SIAM). ISBN 0-89871-482-6. 9-780898-714821-90000.
  7. ^ ab "Open Compute Project". Open Compute Project . Получено 2024-06-03 .
  8. ^ Рухани, Бита Дарвиш; Чжао, Ричи; Мор, Анкит; Холл, Мэтью; Ходаморади, Алиреза; Дэн, Саммер; Чоудхари, Дхрув; Корнеа, Мариус; Деллингер, Эрик (19 октября 2023 г.). «Микромасштабирование форматов данных для глубокого обучения». arXiv : 2310.10537 [cs.LG].
  9. ^ D'Sa, Rani Borkar, Reynold (2023-10-17). "Стимулирование развития инфраструктуры ИИ посредством стандартизации". Блог Microsoft Azure . Получено 2024-06-03 .{{cite web}}: CS1 maint: несколько имен: список авторов ( ссылка )
  10. ^ Рухани, Бита; Чжао, Ричи; Эланго, Венмугил; Шафипур, Расул; Холл, Мэтью; Месмахосрошахи, Марал; Мор, Анкит; Мельник, Леви; Голуб, Максимилиан (12.04.2023). «С общими микроэкспонентами небольшое смещение имеет большое значение». arXiv : 2302.08007 [cs.LG].
  11. ^ microsoft/microxcaling, Microsoft, 2024-05-29 , получено 2024-06-03
  12. ^ Кларк, Питер (28.08.2023). «Платформа генеративного ИИ на базе чиплетов повышает производительность LLM». eeNews Europe . Получено 23.04.2024 .
  13. ^ [SPCL_Bcast] Архитектура генеративного вывода на основе чиплетов с блочными типами данных с плавающей точкой . Получено 2024-04-23 – через www.youtube.com.
  14. ^ ab "Ускорители ИИ Tenstorrent" (PDF) .
  15. ^ Боншор, Гэвин. «AMD анонсирует серию Ryzen AI 300 для мобильных устройств: Zen 5 с RDNA 3.5 и XDNA2 NPU с 50 TOPS». www.anandtech.com . Получено 03.06.2024 .
  16. ^ "AMD расширяет лидерство в области искусственного интеллекта и высокой производительности в центрах обработки данных и ПК с новыми процессорами AMD Instinct, Ryzen и EPYC на выставке Computex 2024". Advanced Micro Devices, Inc. 2024-06-02 . Получено 2024-06-03 .

Дальнейшее чтение