Skip to content

Commit

Permalink
Add workflows
Browse files Browse the repository at this point in the history
  • Loading branch information
amontoison committed Dec 3, 2023
1 parent 48eee2d commit 2753dc6
Show file tree
Hide file tree
Showing 6 changed files with 112 additions and 8 deletions.
17 changes: 17 additions & 0 deletions .github/workflows/Aqua.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Aqua
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: julia-actions/setup-julia@latest
with:
version: '1'
- name: Aqua.jl
run: julia --color=yes -e 'using Pkg; Pkg.add("Aqua"); Pkg.develop(path="."); using Aqua, CUDSS; Aqua.test_all(CUDSS, ambiguities=false); Aqua.test_ambiguities(CUDSS)'
23 changes: 23 additions & 0 deletions .github/workflows/Documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Documentation
on:
push:
branches:
- main
tags: '*'
pull_request:
types: [opened, synchronize, reopened]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: julia-actions/setup-julia@latest
with:
version: '1'
- name: Install dependencies
run: julia --project=docs --color=yes -e 'using Pkg; Pkg.develop(PackageSpec(path=pwd())); Pkg.instantiate()'
- name: Build and deploy
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}
run: julia --project=docs --color=yes docs/make.jl
43 changes: 43 additions & 0 deletions .github/workflows/Invalidations.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Invalidations
# Uses SnoopCompile to evaluate number of invalidations caused by `using` the package
# using https://github.com/julia-actions/julia-invalidations
# Based on https://github.com/julia-actions/julia-invalidations

on:
pull_request:

concurrency:
# Skip intermediate builds: always.
# Cancel intermediate builds: always.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
evaluate:
# Only run on PRs to the default branch.
# In the PR trigger above branches can be specified only explicitly whereas this check should work for master, main, or any other default branch
if: github.base_ref == github.event.repository.default_branch
runs-on: ubuntu-latest
steps:
- uses: julia-actions/setup-julia@v1
with:
version: '1'
- uses: actions/checkout@v3
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-invalidations@v1
id: invs_pr

- uses: actions/checkout@v3
with:
ref: ${{ github.event.repository.default_branch }}
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-invalidations@v1
id: invs_default

- name: Report invalidation counts
run: |
echo "Invalidations on default branch: ${{ steps.invs_default.outputs.total }} (${{ steps.invs_default.outputs.deps }} via deps)" >> $GITHUB_STEP_SUMMARY
echo "This branch: ${{ steps.invs_pr.outputs.total }} (${{ steps.invs_pr.outputs.deps }} via deps)" >> $GITHUB_STEP_SUMMARY
- name: Check if the PR does increase number of invalidations
if: steps.invs_pr.outputs.total > steps.invs_default.outputs.total
run: exit 1
15 changes: 15 additions & 0 deletions .github/workflows/TagBot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: TagBot
on:
issue_comment:
types:
- created
workflow_dispatch:
jobs:
TagBot:
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
runs-on: ubuntu-latest
steps:
- uses: JuliaRegistries/TagBot@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
ssh: ${{ secrets.DOCUMENTER_KEY }}
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,17 @@
# CUDSS.jl

## Installation

CUDSS.jl can be installed and tested through the Julia package manager:

```julia
julia> ]
pkg> add https://github.com/exanauts/CUDSS.jl.git
pkg> test CUDSS
```

## Examples

```julia
using CUDA, CUDA.CUSPARSE
using CUDSS
Expand Down
15 changes: 7 additions & 8 deletions src/interfaces.jl
Original file line number Diff line number Diff line change
Expand Up @@ -130,15 +130,10 @@ end
"""
cudss(phase::String, solver::CudssSolver, x::CuVector, b::CuVector)
cudss(phase::String, solver::CudssSolver, X::CuMatrix, B::CuMatrix)
cudss(phase::String, solver::CudssSolver, X::CudssMatrix, B::CudssMatrix)
The available phases are:
"analysis"
"factorization"
"refactorization"
"solve"
"solve_fwd"
"solve_diag"
"solve_bwd"
The available phases are "analysis", "factorization", "refactorization" and "solve".
The phases "solve_fwd", "solve_diag" and "solve_bwd" are available but not yet functional.
"""
function cudss end

Expand All @@ -153,3 +148,7 @@ function cudss(phase::String, solver::CudssSolver, X::CuMatrix, B::CuMatrix)
rhs = CudssMatrix(B)
cudssExecute(handle(), phase, solver.config, solver.data, solver.matrix, solution, rhs)
end

function cudss(phase::String, solver::CudssSolver, X::CudssMatrix, B::CudssMatrix)
cudssExecute(handle(), phase, solver.config, solver.data, solver.matrix, X, B)
end

0 comments on commit 2753dc6

Please sign in to comment.