dan123222123 / KAPseudospectra.jl

Accelerated pseudospectral calculations using KernelAbstractions.jl

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

KAPseudospectra.jl

Accelerated pseudospectral calculations using KernelAbstractions.jl

Installation

  1. Clone this repo
  2. Inside of the Julia REPL (preferably within a top-level environment e.g. @v1.10, etc.) run ]dev path/to/KAPseudospectra.jl
  3. You may need to run ]instantiate to resolve package dependencies of KAPseudospectra.jl

Examples

Check out examples/ for three scripts that showcase usage of this package.

They are:

  • ihlpsa_backends.jl -- a good starting point, showing how to switch between device-specific backends (CUDA and AMDGPU have been tested thusfar) Note, AMDGPU currently requires running Julia with a single thread (there is a bug in Julia when running with multiple threads, likely related to premature garbage collection)
  • test_real_structured_psa.jl -- compute structured/unstructured pseudospectra for a matrix using CPU() and plot them together
  • test_ihlpsa_large.jl -- compute pseudospectra for increasingly large matrices using CUDABackend(), writing timing information and plots to examples/test_large_results/

Run ]add LinearAlgebra MatrixDepot Plots LaTeXStrings PyPlot KernelAbstractions to be able to run ihlpsa_backends.jl and test_real_structured_psa.jl. Optionally, run ]add CUDA if you have a cuda-enabled device to run test_ihlpsa_large.jl.

About

Accelerated pseudospectral calculations using KernelAbstractions.jl

License:GNU General Public License v3.0


Languages

Language:Julia 100.0%