Skip to content
README.md 895 B
Newer Older
David Álvarez's avatar
David Álvarez committed
# Conjugate Gradients

## Description

This example is an adaptation from the conjugateGradientCudaGraphs CUDA sample that can be found in
[NVIDIA's github](https://github.com/NVIDIA/cuda-samples) using OmpSs-2. It is meant to display
how one can use cuBLAS and other CUDA libraries by leveraging the `nanos6_get_current_cuda_stream()` API call.

It also uses the *delayed taskwait* pattern, by which each iteration checks if the previous one converged, to prevent having to use
a full taskwait in every iteration to check for convergence.

## Execution instructions

This benchmark can only be executed in an environment with one GPU device (no support for multiple GPUs),
and with a CUDA installation which supports unified memory and has the cuBLAS and cuSPARSE libraries.

To run the program use:
```
make run
```

The previous command will also build the program in case it is not already.