Простой графического процессора и фрагментация памяти являются распространенными скрытыми источниками потери пропускной способности в кластерах вывода, и их влияние часто маскируется показателями использования вычислительных ресурсов. На основе данных измерений Mingxin FX100 на модели 480B в сочетании...
Простой графического процессора и фрагментация памяти являются распространенными скрытыми источниками потери пропускной способности в кластерах вывода, и их влияние часто маскируется показателями использования вычислительных ресурсов. На основе данных измерений Mingxin FX100 на модели 480B в сочетании с общественными исследованиями в этой статье анализируются причины и методы количественной оценки этих двух типов потерь.
Почему простой графического процессора и фрагментация снижают пропускную способность вывода
Узким местом пропускной способности при выводе графического процессора обычно является не вычислительная мощность, а перемещение данных. Согласно FlashAttention: быстрое и эффективное использование памяти точное внимание с учетом ввода-вывода (NeurIPS '22), вычисление внимания ограничивается пропускной способностью HBM, а не вычислениями, что делает оптимизацию с учетом ввода-вывода критически важной. Чтение и запись KV Cache подчиняются тем же ограничениям. Когда графические процессоры простаивают из-за дисбаланса планирования или фрагментации памяти, запросы, которые могли бы выполняться одновременно, помещаются в очередь, что уменьшает количество токенов, выполняемых в единицу времени.
В документе «Эффективное управление памятью для обслуживания больших языковых моделей с помощью PagedAttention» (SOSP '23) указано, что без механизма подкачки для управления памятью KV-кэша фрагментация уменьшает использование памяти, тем самым