A C plus plus Library for Tensor Decomposition

被引:0
|
作者
Huang, Jiapeng [1 ]
Kong, Linghe [1 ]
Liu, Xiao-Yang [2 ]
Qu, Wenhao [1 ]
Chen, Guihai [1 ]
机构
[1] Shanghai Jiao Tong Univ, Shanghai, Peoples R China
[2] Columbia Univ, New York, NY 10027 USA
关键词
Tensor Decomposition; Many-core Computing;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In this paper, we develop a new library TenDeC++ for tensor decompositions in C++. TenDeC++ supports popular tensor decomposition functions including Canonical Polyadic, Tucker, tensor-train, and t-SVD, assisting C++ programmers to shorten the development cycle of deep learning applications. Compared with the resource-intensive Python and MATLAB, C++ has the nature advantages on fast running time and high compatibility. To further explore potentials of C++, we propose a novel underlying technology PointerDefomer leveraging the unique pointer. Since the transformation between tensor and size-specific matrix is indispensable in tensor decompositions, PointerDefomer can virtually achieve such a transformation by controlling the movement of pointer in memory address. As a result, the conventional transformation steps can be skipped to accelerate the decomposition process and there is no memory needed for saving the intermediate results of tensor transformation. In our experiment, TenDeC++ reduces decomposition time and support larger size of tensor compared with the classic Tensorly in Python and TensorLab in MATLAB, respectively.
引用
收藏
页数:2
相关论文
共 50 条
  • [41] ColorFull: a C plus plus library for calculations in SU(Nc) color space
    Sjodahl, Malin
    EUROPEAN PHYSICAL JOURNAL C, 2015, 75 (05):
  • [42] CAMORRA: A C plus plus library for recursive computation of particle scattering amplitudes
    Kleiss, R.
    van den Oord, G.
    COMPUTER PHYSICS COMMUNICATIONS, 2011, 182 (02) : 435 - 447
  • [43] Multi-Target Vectorization with MTPS C plus plus Generic Library
    Kirschenmann, Wilfried
    Plagne, Laurent
    Vialle, Stephane
    APPLIED PARALLEL AND SCIENTIFIC COMPUTING, PT II, 2012, 7134 : 336 - 346
  • [44] SplineLib: A modern multi-purpose C plus plus spline library
    Frings, Markus
    Hosters, Norbert
    Mueller, Corinna
    Spahn, Max
    Susen, Christoph
    Key, Konstantin
    Elgeti, Stefanie
    ADVANCES IN ENGINEERING SOFTWARE, 2020, 146
  • [45] A C plus plus Library for Fast Simulation of Queues and Some Experimental Results
    Munoz, David F.
    INTERNATIONAL CONFERENCE ON NUMERICAL ANALYSIS AND APPLIED MATHEMATICS 2022, ICNAAM-2022, 2024, 3094
  • [46] The toolkit for nuclei library (TkN): a C plus plus interface to nuclear databases
    Dudouet, Jeremie
    Gruyer, Diego
    EUROPEAN PHYSICAL JOURNAL PLUS, 2024, 139 (07):
  • [47] Chaste: An Open Source C plus plus Library for Computational Physiology and Biology
    Mirams, Gary R.
    Arthurs, Christopher J.
    Bernabeu, Miguel O.
    Bordas, Rafel
    Cooper, Jonathan
    Corrias, Alberto
    Davit, Yohan
    Dunn, Sara-Jane
    Fletcher, Alexander G.
    Harvey, Daniel G.
    Marsh, Megan E.
    Osborne, James M.
    Pathmanathan, Pras
    Pitt-Francis, Joe
    Southern, James
    Zemzemi, Nejib
    Gavaghan, David J.
    PLOS COMPUTATIONAL BIOLOGY, 2013, 9 (03)
  • [48] StochHMM: a flexible hidden Markov model tool and C plus plus library
    Lott, Paul C.
    Korf, Ian
    BIOINFORMATICS, 2014, 30 (11) : 1625 - 1626
  • [49] HepLib: A C plus plus library for high energy physics (version 1.1)
    Feng, Feng
    Tang, Shan-Rong
    Gao, Ya-Di
    COMPUTER PHYSICS COMMUNICATIONS, 2023, 285
  • [50] The new C plus plus serialization library supporting backward and forward compatibility
    Breiter, Michal
    Nowak, Robert M.
    PHOTONICS APPLICATIONS IN ASTRONOMY, COMMUNICATIONS, INDUSTRY, AND HIGH-ENERGY PHYSICS EXPERIMENTS 2019, 2019, 11176