PyMAGMA: A Python']Python Interface for MAGMA

被引:0
|
作者
Halloy, Julian [1 ]
Qiu, Stephen [1 ]
Tomov, Stanimire [2 ]
Wong, Kwai [1 ]
机构
[1] Univ Tennessee, Knoxville, TN 37996 USA
[2] NVIDIA, Santa Clara, CA USA
基金
美国国家科学基金会;
关键词
SWIG; Interface; Wrapper; C plus; MAGMA; PyMAGMA; !text type='Python']Python[!/text;
D O I
10.1145/3626203.3670607
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The Matrix Algebra for GPU and Multicore Architectures (MAGMA) library is used for dense linear algebra computations on both CPUs and GPUs. MAGMA offers an extensive selection of linear algebra routines similar to those found in BLAS and LAPACK, but optimized and specifically designed for GPU acceleration. However, as MAGMA is a C library, C/C++ and MAGMA's C function interfaces can be challenging for non-computer scientists to learn and use. To address this problem, PyMAGMA provides a user-friendly Python interface. PyMAGMA employs C++ object-oriented programming methodologies to simplify the interfaces, particularly by reducing the number of arguments required for routines and eliminating the need for specifying the floating-point data format and arithmetic precision used. In particular, function overloading is employed to abstract routines and avoid precision specification. We show that the PyMAGMA library provides access to high-performance linear algebra using GPUs, while offering the typical benefits of Python, including ease of learning, versatility of use, extensive access to external libraries, large community and support, cross-platform compatibility, and capability for interactive work.
引用
收藏
页数:4
相关论文
共 50 条
  • [1] A Python']Python Interface to PISA!
    MacAvaney, Sean
    Macdonald, Craig
    PROCEEDINGS OF THE 45TH INTERNATIONAL ACM SIGIR CONFERENCE ON RESEARCH AND DEVELOPMENT IN INFORMATION RETRIEVAL (SIGIR '22), 2022, : 3339 - 3344
  • [2] Flopy: The Python']Python Interface for MODFLOW
    Leaf, Andrew T.
    Fienen, Michael N.
    GROUNDWATER, 2022, 60 (06) : 710 - 712
  • [3] odgf-python']python - A Python']Python Interface for the Open Graph Drawing Framework
    Fink, Simon D.
    Strobl, Andreas
    GRAPH DRAWING AND NETWORK VISUALIZATION, GD 2023, PT II, 2023, 14466 : 258 - 260
  • [4] ConKit: a python']python interface to contact predictions
    Simkovic, Felix
    Thomas, Jens M. H.
    Rigden, Daniel J.
    BIOINFORMATICS, 2017, 33 (14) : 2209 - 2211
  • [5] pyGlobus:: a Python']Python interface to the Globus Toolkit™
    Jackson, KR
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2002, 14 (13-15): : 1075 - 1083
  • [6] Introducing Parselmouth: A Python']Python interface to Praat
    Jadoul, Yannick
    Thompson, Bill
    de Boer, Bart
    JOURNAL OF PHONETICS, 2018, 71 : 1 - 15
  • [7] ACPYPE - AnteChamber PYthon']PYthon Parser interfacE
    da Silva, Alan W. Sousa
    Vranken, Wim F.
    BMC RESEARCH NOTES, 2012, 5
  • [8] PySHMEM: A High Productivity OpenSHMEM Interface for Python']Python
    Welch, Aaron
    Shamis, Pavel
    Hao, Pengfei
    Chapman, Barbara
    2015 9TH INTERNATIONAL CONFERENCE ON PARTITIONED GLOBAL ADDRESS SPACE PROGRAMMING MODELS (PGAS), 2015, : 99 - 101
  • [9] An array-oriented Python']Python interface for FastJet
    Roy, Aryan
    Pivarski, Jim
    Freer, Chad Wells
    20TH INTERNATIONAL WORKSHOP ON ADVANCED COMPUTING AND ANALYSIS TECHNIQUES IN PHYSICS RESEARCH, 2023, 2438
  • [10] JBrowse Jupyter: a Python']Python interface to JBrowse 2
    Martinez, Teresa De Jesus
    Hershberg, Elliot A.
    Guo, Emma
    Stevens, Garrett J.
    Diesh, Colin
    Xie, Peter
    Bridge, Caroline
    Cain, Scott
    Haw, Robin
    Buels, Robert M.
    Stein, Lincoln D.
    Holmes, Ian H.
    BIOINFORMATICS, 2023, 39 (01)