Memory Safe Computations with XLA Compiler

被引:0
|
作者
Artemev, Artem [1 ,2 ]
An, Yuze [1 ]
Roeder, Tilman [1 ]
van der Wilk, Mark [1 ]
机构
[1] Imperial Coll London, London, England
[2] Secondmind, Cambridge, England
关键词
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Software packages like TensorFlow and PyTorch are designed to support linear algebra operations, and their speed and usability determine their success. However, by prioritising speed, they often neglect memory requirements. As a consequence, the implementations of memory-intensive algorithms that are convenient in terms of software design can often not be run for large problems due to memory overflows. Memory-efficient solutions require complex programming approaches with significant logic outside the computational framework. This impairs the adoption and use of such algorithms. To address this, we developed an XLA compiler extension(1) that adjusts the computational data-flow representation of an algorithm according to a user-specified memory limit. We show that k-nearest neighbour, sparse Gaussian process regression methods and Transformers can be run on a single device at a much larger scale, where standard implementations would have failed. Our approach leads to better use of hardware resources. We believe that further focus on removing memory constraints at a compiler level will widen the range of machine learning methods that can be developed in the future.
引用
收藏
页数:13
相关论文
共 50 条
  • [21] Triton: An Intermediate Language and Compiler for Tiled Neural Network Computations
    Tillet, Philippe
    Kung, H. T.
    Cox, David
    PROCEEDINGS OF THE 3RD ACM SIGPLAN INTERNATIONAL WORKSHOP ON MACHINE LEARNING AND PROGRAMMING LANGUAGES (MAPL '19), 2019, : 10 - 19
  • [22] Compiler and runtime support for adaptive sparse computations on a multithreaded architecture
    Zoppetti, GM
    Agrawal, G
    PARALLEL AND DISTRIBUTED COMPUTING SYSTEMS, 2002, : 488 - 493
  • [23] Compiler and runtime support for enabling reduction computations on heterogeneous systems
    Ravi, Vignesh T.
    Ma, Wenjing
    Chiu, David
    Agrawal, Gagan
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2012, 24 (05): : 463 - 480
  • [24] FAIL-SAFE PROGRAMMING IN COMPILER OPTIMIZATION
    SCHILLING, JL
    SIGPLAN NOTICES, 1993, 28 (08): : 39 - 42
  • [25] Memory coloring: A compiler approach for scratchpad memory management
    Li, L
    Gao, L
    Xue, JL
    PACT 2005: 14TH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, 2005, : 329 - 338
  • [26] Compiler Testing with Relaxed Memory Models
    Geeson, Luke
    Smith, Lee
    2024 IEEE/ACM INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, CGO, 2024, : 334 - 348
  • [27] Effect of compiler optimizations on memory energy
    Kim, HS
    Irwin, MJ
    Vijaykrishnan, N
    Kandemir, M
    2000 IEEE WORKSHOP ON SIGNAL PROCESSING SYSTEMS: DESIGN AND IMPLEMENTATION, 2000, : 663 - 672
  • [28] Synopsys' Educational Generic Memory Compiler
    Goldman, R.
    Bartleson, K.
    Wood, T.
    Melikyan, V.
    Babayan, E.
    10TH EUROPEAN WORKSHOP ON MICROELECTRONICS EDUCATION (EWME), 2014, : 89 - 92
  • [29] OpenMP compiler for distributed memory architectures
    Jue Wang
    ChangJun Hu
    JiLin Zhang
    JianJiang Li
    Science China Information Sciences, 2010, 53 : 932 - 944
  • [30] OpenMP compiler for distributed memory architectures
    WANG Jue
    ScienceChina(InformationSciences), 2010, 53 (05) : 932 - 944