COMPASS
5.0.0
End-to-end AO simulation tool using GPU acceleration
carma_cusparse.h
Go to the documentation of this file.
1
// -----------------------------------------------------------------------------
2
// This file is part of COMPASS <https://anr-compass.github.io/compass/>
3
//
4
// Copyright (C) 2011-2019 COMPASS Team <https://github.com/ANR-COMPASS>
5
// All rights reserved.
6
// Distributed under GNU - LGPL
7
//
8
// COMPASS is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser
9
// General Public License as published by the Free Software Foundation, either version 3 of the License,
10
// or any later version.
11
//
12
// COMPASS: End-to-end AO simulation tool using GPU acceleration
13
// The COMPASS platform was designed to meet the need of high-performance for the simulation of AO systems.
14
//
15
// The final product includes a software package for simulating all the critical subcomponents of AO,
16
// particularly in the context of the ELT and a real-time core based on several control approaches,
17
// with performances consistent with its integration into an instrument. Taking advantage of the specific
18
// hardware architecture of the GPU, the COMPASS tool allows to achieve adequate execution speeds to
19
// conduct large simulation campaigns called to the ELT.
20
//
21
// The COMPASS platform can be used to carry a wide variety of simulations to both testspecific components
22
// of AO of the E-ELT (such as wavefront analysis device with a pyramid or elongated Laser star), and
23
// various systems configurations such as multi-conjugate AO.
24
//
25
// COMPASS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
26
// implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
27
// See the GNU Lesser General Public License for more details.
28
//
29
// You should have received a copy of the GNU Lesser General Public License along with COMPASS.
30
// If not, see <https://www.gnu.org/licenses/lgpl-3.0.txt>.
31
// -----------------------------------------------------------------------------
32
40
41
#ifndef CARMA_SPARSE_H_
42
#define CARMA_SPARSE_H_
43
44
#include <cuda_runtime_api.h>
45
/* Using updated (v2) interfaces to cublas */
46
#include <cusparse_v2.h>
47
48
cusparseStatus_t
carma_check_cusparse_status
(cusparseStatus_t status);
49
50
cusparseStatus_t
carma_init_cusparse
(cusparseHandle_t *cusparse_handle);
51
cusparseStatus_t
carma_shutdown_cusparse
(cusparseHandle_t cusparse_handle);
52
53
cusparseOperation_t
carma_char2cusparse_operation
(
char
operation);
54
55
/*
56
* _____ _____ __ __ ____ _ _ _____ _____ ____
57
*|_ _| ____| \/ | _ \| | / \|_ _| ____/ ___|
58
* | | | _| | |\/| | |_) | | / _ \ | | | _| \___ \
59
* | | | |___| | | | __/| |___ / ___ \| | | |___ ___) |
60
* |_| |_____|_| |_|_| |_____/_/ \_\_| |_____|____/
61
*
62
*/
63
64
#endif
/* CARMA_SPARSE_H_ */
carma_char2cusparse_operation
cusparseOperation_t carma_char2cusparse_operation(char operation)
carma_shutdown_cusparse
cusparseStatus_t carma_shutdown_cusparse(cusparseHandle_t cusparse_handle)
carma_check_cusparse_status
cusparseStatus_t carma_check_cusparse_status(cusparseStatus_t status)
carma_init_cusparse
cusparseStatus_t carma_init_cusparse(cusparseHandle_t *cusparse_handle)
libcarma
include.h
carma_cusparse.h
Generated by
1.8.18