vix.ing · top · new · best · stats · spec

Dragon-Alpha&cu32: A Java-based Tensor Computing Framework With its High-Performance CUDA Library

2023/05/15 by Zhiyi Zhang, Pengfei Zhang, Zhang, Zhiyi +3
Computer Science · Mathematics · #Computational Physics and Python Applications #FOS: Computer and information sciences #Machine Learning (cs.LG) #Parallel Computing and Optimization Techniques #Software Engineering (cs.SE) #Tensor decomposition and applications

paper · pdf · doi:10.48550/arxiv.2305.08819

openalex publication_date 2023/05/15 · openalex created_date 2023/05/17 · openalex updated_date 2026/07/28

Abstract

Java is very powerful, but in Deep Learning field, its capabilities probably has not been sufficiently exploited. Compared to the Java-based deep-learning-frameworks, the Python-based (PyTorch, TensorFlow, etc) are undoubtedly the mainstream, due to their easy-to-use, flexibility and better ecosystem. Dragon-Alpha is a Java-based Tensor Computing Framework, with easy-to-use, high-scalability and high-performance, trying to break Java's dilemma in deep learning field and make it more effective. Dragon-Alpha supports different levels of APIs, and can be used as a deep-learning-framework through its user-friendly high-level APIs. Dragon-Alpha has potential to aggregate computing-power across heterogeneous platforms and devices, based on its multi-layer architecture and Java's big-data ecosystem. Dragon-Alpha has its asynchronized APIs to improve parallelism, and highly-optimized CUDA library cu32 which adopts unique convolution\deconvolution operators for small feature maps. The experiments show that, compared to PyTorch&cuDNN, Dragon-Alpha&cu32 costs less time and memory (75.38% to 97.32%, 29.2% to 66.4%), to train some typical neural networks (AlexNet, VGG, GoogleNet, ResNet) on Cifar-10.

Related