Back to Search Start Over

VTensor: Using Virtual Tensors to Build a Layout-Oblivious AI Programming Framework.

Authors :
Yu, Feng
Zhao, Jia-Cheng
Cui, Hui-Min
Feng, Xiao-Bing
Xue, Jingling
Source :
Journal of Computer Science & Technology (10009000); Sep2023, Vol. 38 Issue 5, p1074-1097, 24p
Publication Year :
2023

Abstract

Tensors are a popular programming interface for developing artificial intelligence (AI) algorithms. Layout refers to the order of placing tensor data in the memory and will affect performance by affecting data locality; therefore the deep neural network library has a convention on the layout. Since AI applications can use arbitrary layouts, and existing AI systems do not provide programming abstractions to shield the layout conventions of libraries, operator developers need to write a lot of layout-related code, which reduces the efficiency of integrating new libraries or developing new operators. Furthermore, the developer assigns the layout conversion operation to the internal operator to deal with the uncertainty of the input layout, thus losing the opportunity for layout optimization. Based on the idea of polymorphism, we propose a layout-agnostic virtual tensor programming interface, namely the VTensor framework, which enables developers to write new operators without caring about the underlying physical layout of tensors. In addition, the VTensor framework performs global layout inference at runtime to transparently resolve the required layout of virtual tensors, and runtime layout-oriented optimizations to globally minimize the number of layout transformation operations. Experimental results demonstrate that with VTensor, developers can avoid writing layout-dependent code. Compared with TensorFlow, for the 16 operations used in 12 popular networks, VTensor can reduce the lines of code (LOC) of writing a new operation by 47.82% on average, and improve the overall performance by 18.65% on average. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
10009000
Volume :
38
Issue :
5
Database :
Complementary Index
Journal :
Journal of Computer Science & Technology (10009000)
Publication Type :
Academic Journal
Accession number :
174014842
Full Text :
https://doi.org/10.1007/s11390-022-1457-6