ChatPaper.aiChatPaper

Полностью объединенные многослойные перцептроны на графических процессорах центров обработки данных Intel.

Fully-fused Multi-Layer Perceptrons on Intel Data Center GPUs

March 26, 2024
Авторы: Kai Yuan, Christoph Bauinger, Xiangyi Zhang, Pascal Baehr, Matthias Kirchhart, Darius Dabert, Adrien Tousnakhoff, Pierre Boudier, Michael Paulitsch
cs.AI

Аннотация

Данный документ представляет собой реализацию SYCL многослойных перцептронов (MLP), которая ориентирована и оптимизирована для графического процессора Intel Data Center GPU Max 1550. Для повышения производительности наша реализация минимизирует медленный доступ к глобальной памяти путем максимизации повторного использования данных в общем регистровом файле и общей локальной памяти путем объединения операций в каждом слое MLP. Мы показываем с помощью простой модели roofline, что это приводит к значительному увеличению арифметической интенсивности, что приводит к улучшению производительности, особенно для вывода. Мы сравниваем наш подход с аналогичной реализацией CUDA для MLP и показываем, что наша реализация на графическом процессоре Intel Data Center превосходит реализацию CUDA на графическом процессоре Nvidia H100 в 2,84 раза для вывода и 1,75 раза для обучения. В документе также демонстрируется эффективность нашей реализации SYCL в трех значимых областях: сжатие изображений, нейронные радиационные поля и физически обоснованное машинное обучение. Во всех случаях наша реализация превосходит реализацию Intel Extension for PyTorch (IPEX) на том же графическом процессоре Intel вплоть до 30 раз и версию CUDA PyTorch на графическом процессоре Nvidia H100 вплоть до 19 раз. Код можно найти по ссылке https://github.com/intel/tiny-dpcpp-nn.
English
This paper presents a SYCL implementation of Multi-Layer Perceptrons (MLPs), which targets and is optimized for the Intel Data Center GPU Max 1550. To increase the performance, our implementation minimizes the slow global memory accesses by maximizing the data reuse within the general register file and the shared local memory by fusing the operations in each layer of the MLP. We show with a simple roofline model that this results in a significant increase in the arithmetic intensity, leading to improved performance, especially for inference. We compare our approach to a similar CUDA implementation for MLPs and show that our implementation on the Intel Data Center GPU outperforms the CUDA implementation on Nvidia's H100 GPU by a factor up to 2.84 in inference and 1.75 in training. The paper also showcases the efficiency of our SYCL implementation in three significant areas: Image Compression, Neural Radiance Fields, and Physics-Informed Machine Learning. In all cases, our implementation outperforms the off-the-shelf Intel Extension for PyTorch (IPEX) implementation on the same Intel GPU by up to a factor of 30 and the CUDA PyTorch version on Nvidia's H100 GPU by up to a factor 19. The code can be found at https://github.com/intel/tiny-dpcpp-nn.

Summary

AI-Generated Summary

PDF101December 15, 2024