Ginkgo.jl

Using the numerical linear algebra software package Ginkgo in Julia!
Author youwuyou
Popularity
15 Stars
Updated Last
6 Months Ago
Started In
September 2023

logo_light_horizontal

Dev Build Status Coverage

Ginkgo.jl is a Julia wrapper for the high-performance numerical linear algebra library Ginkgo that aims to leverage the hardware vendor’s native programming models to implement highly tuned architecture-specific kernels. Separating the core algorithm from these architecture-specific kernels enables high performance while enhancing the readability and maintainability of the software. Seamlessly integrating Julia with Ginkgo, Ginkgo.jl interoperates with the C++ source library through a C API.

Structure

Ginkgo.jl
├── CNAME
├── LICENSE
├── README.md
├── docs            # Documentation page with Documenter.jl
├── examples        # Example code using Ginkgo.jl
├── Manifest.toml
├── Project.toml
├── res             # For generating lower-level C API
├── src             # Contains low- and high-level Julia wrapper
└── test            # Tests

Getting Started

You can install Ginkgo.jl from the Julia REPL. Press ] to enter pkg mode, and run:

pkg> add Ginkgo

To start using Ginkgo.jl, simply use the package within your Julia script:

using Ginkgo

Testing

For testing purposes, make sure you are in the project environment when accessing interactive shell using julia --project. Then execute tests within the package environment and run test

$ julia --project
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.9.1 (2023-06-07)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> ]
(Ginkgo) pkg>
(Ginkgo) pkg> test

Features

  • ✓ implemented
  • ✗ not implemented
  • ~ partial implementation
  • n/a not applicable
OpenMP CUDA HIP DPCPP
Dense Matrix ~
Sparse Matrix CSR ~
Preconditioners
Solvers ~
Loggers
Stopping Criteria
Utilities
IO ~
... ... ... ... ...

Required Packages

Used By Packages

No packages found.