compas-toolkit
High-Performance GPU library for quantitative MRI research
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.8%) to scientific vocabulary
Keywords
Repository
High-Performance GPU library for quantitative MRI research
Basic Info
- Host: GitHub
- Owner: NLeSC-COMPAS
- License: apache-2.0
- Language: Cuda
- Default Branch: main
- Homepage: https://nlesc-compas.github.io/compas-toolkit/
- Size: 5.87 MB
Statistics
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 10
- Releases: 1
Topics
Metadata Files
README.md
Compas Toolkit
The Compas Toolkit is a high-performance C++ library offering GPU-accelerated functions for use in quantitative MRI research. The toolkit offers fast simulations of various MRI sequences and k-space trajectories commonly used in qMRI studies. While the core of the toolkit is implemented using CUDA, the functionality is accessible from both C++ and Julia.
Features
- Flexible API that can be composed in different ways.
- Highly tuned GPU kernels that provide high performance.
- Implemented using CUDA, optimized for Nvidia GPUs.
- Usable from Julia and C++.
Prerequisites
Compilation requires the following software:
- CMake (version 3.10 or higher)
- NVIDIA CUDA Compiler (version 11.0 or higher)
- Julia (version 1.9 or later, only for Julia bindings)
Installation
To install the Compas Toolkit, follow these steps:
Clone the repository
First, clone the GitHub repository:
bash
$ git clone --recurse-submodules https://github.com/NLeSC-COMPAS/compas-toolkit
Compiling the C++ code
Next, configure the CMake project inside a new build directory:
bash
$ mkdir -p build
$ cd build
$ cmake -B. -DCMAKE_BUILD_TYPE=Release -DCMAKE_CUDA_ARCHITECTURES=80 ..
After the configuration, build the toolkit by running:
bash
$ make compas-toolkit
This generates a static library named libcompas-toolkit.a.
Compiling the Julia bindings
To compile the Julia bindings, use the following command.
This will install the library into a local lib/ directory:
bash
$ make install
If everything has gone as planned, you'll now have a shared library called libcompas-julia.so in the local lib/ directory. Additionally, a Julia file should have been automatically generated as CompasToolkit.jl/src/CompasToolkit.jl.
Usage
To use the Compas Toolkit in Julia, simply build the Julia bindings using the instructions above and then add the directory CompasToolkit.jl to you Julia project.
```julia $ julia
using Pkg; Pkg.add(path="
/CompasToolkit.jl/") ```
You can then import the library with using CompasToolkit.
For examples of using the toolkit, take a look at the scripts available in the CompasToolkit.jl/tests directory.
Owner
- Name: NLeSC-COMPAS
- Login: NLeSC-COMPAS
- Kind: organization
- Repositories: 1
- Profile: https://github.com/NLeSC-COMPAS
GitHub Events
Total
- Issues event: 1
- Issue comment event: 1
- Push event: 89
- Pull request event: 4
- Create event: 2
Last Year
- Issues event: 1
- Issue comment event: 1
- Push event: 89
- Pull request event: 4
- Create event: 2
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 1
- Total pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Issue authors: 1
- Pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.0
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- isazi (15)
- stijnh (4)
Pull Request Authors
- stijnh (5)
- isazi (3)