Hermes: Memory-Efficient Pipeline Inference for Large Models on Edge Devices

Xueyuan Han, Zinuo Cai, Yichu Zhang, Chongxin Fan, Junhan Liu +2 more
9/6/2024
cs.DCcs.AIcs.LG

No confident code implementation found for this paper. 4 possible matches can be shown below.

Abstract

The application of Transformer-based large models has achieved numerous success in recent years. However, the exponential growth in the parameters of large models introduces formidable memory challenge for edge deployment. Prior works to address this challenge mainly focus on optimizing the model structure and adopting memory swapping methods. However, the former reduces the inference accuracy, and the latter raises the inference latency. This paper introduces PIPELOAD, a novel memory-efficient pipeline execution mechanism. It reduces memory usage by incorporating dynamic memory management and minimizes inference latency by employing parallel model loading. Based on PIPELOAD mechanism, we present Hermes, a framework optimized for large model inference on edge devices. We evaluate Hermes on Transformer-based models of different sizes. Our experiments illustrate that Hermes achieves up to 4.24 X increase in inference speed and 86.7% lower memory consumption than the state-of-the-art pipeline mechanism for BERT and ViT models, 2.58 X increase in inference speed and 90.3% lower memory consumption for GPT-style models.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 4 weaker matches are hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{han2024hermes,
  title  = {Hermes: Memory-Efficient Pipeline Inference for Large Models on Edge Devices},
  author = {Xueyuan Han and Zinuo Cai and Yichu Zhang and Chongxin Fan and Junhan Liu and Ruhui Ma and Rajkumar Buyya},
  year   = {2024},
  eprint = {2409.04249},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2409.04249v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2409.04249.svg)](https://codeofpaper.com/paper/2409.04249)

Discussion