原创 cuSPARSE庫:(十七)cusparseStatus_t 返回信息

(1)cusparseStatus_t  結構體的形式 typedef enum{     CUSPARSE_STATUS_SUCCESS=0,     CUSPARSE_STATUS_NOT_INITIALIZED=1,     CU

原创 cuSPARSE庫:(十六)求解大型稀疏矩陣線性方程組

NVIDIA的CUDA中的cuSPARSE利用LU分解及追趕法求解大型稀疏矩陣線性方程組 基本步驟: (1)LU分解:A=LU (2)求解:Lz = x (3)求解:Uy = z 主要代碼: // Suppose that A i

原创 cuSPARSE庫:(十三)cusparseDestroySolveAnalysisInfo()

函數原型:cusparseStatus_t cusparseDestroySolveAnalysisInfo(cusparseSolveAnalysisInfo_t info) 函數功能:銷燬和釋放結構體所需的任何內存。 變量說明:inf

原创 cuSPARSE庫:(八)cusparseGetStream()

函數原型:cusparseStatus_t cusparseGetStream(cusparseHandle_t handle, cudaStream_t *streamId) 函數功能:該函數用於獲取cuSPARSE庫的流,用於執行所有

原创 cuSPARSE庫:(十四)求解稀疏三角形線性系統(solution of sparse triangular linear systems)

在cuSPARSE中,求解稀疏三角形線性系統(solution of sparse triangular linear systems)分兩步實現: (1)分析階段:調用函數csrsv_analysis() 分析稀疏三角形矩陣,確定矩陣中

原创 cuSPARSE庫:(十一)cusparseCreateSolveAnalysisInfo()

函數原型:cusparseStatus_t cusparseCreateSolveAnalysisInfo(cusparseSolveAnalysisInfo_t *info) 函數功能:創建並初始化求解和分析的結構體,賦默認值; 變量解

原创 cuSPARSE庫:(十)cusparseCreateMatDescr()

函數原型:cusparseStatus_t cusparseCreateMatDescr(cusparseMatDescr_t *descrA) 函數功能:初始化矩陣描述符(descriptor),設定矩陣類型和索引基分別爲默認的CUSP

原创 cuSPARSE庫:(九)cusparseSetStream()

函數原型:cusparseStatus_t cusparseSetStream(cusparseHandle_t handle, cudaStream_t streamId) 函數功能:設定被cuSPARSE 庫調用的流,用於執行所有的調

原创 cuSPARSE庫:(十二)cusparseDestroyMatDescr()

函數原型:cusparseStatus_t cusparseDestroyMatDescr(cusparseMatDescr_t descrA) 函數功能:釋放爲矩陣描述符分配的內存。 參數說明:descrA 爲矩陣描述符  

原创 cuSPARSE庫:(七)cusparseCreate()的功能與作用

函數原型:cusparseStatus_t cusparseCreate(cusparseHandle_t *handle) 函數功能:初始化cuSPARSE 庫,並且創建一個句柄控制cuSPARSE的上下文 調用位置:該函數必須在其他任

原创 cuSPARSE庫:(四)不同矩陣格式在內存中的存儲方式

(1)Dense Format,矩陣的全部元素以列優先格式(column-major format)存儲在內存中, (2)Coordinate Format (COO),矩陣的非零元素以行優先格式(row-major format)存儲在

原创 cuSPAESE庫:(五)零基索引和一基索引

cuSPAESE庫支持基於零和一的索引。   零基索引:行標和列標的索引值均從0開始,類似於C語言中的數組索引方式,值爲CUSPARSE_INDEX_BASE_ZERO 一基所以:行標和列標的索引值均從1開始,類似於MATLAB中的數組索

原创 cuSPARSE庫:(六)cusparseMatrixType_t的說明

cusparseMatrixType_t: 矩陣的格式有以下幾類: CUSPARSE_MATRIX_TYPE_GENERAL        普通矩陣 CUSPARSE_MATRIX_TYPE_SYMMETRIC    對稱矩陣 CUSPA

原创 CUDA編程之:Stream(流)

CUDA Stream(流):指在設備(Device)上按主機(Host)代碼發出的順序執行的一系列異步的CUDA操作。Stream封裝這些操作,管理它們的順序,允許在所有先前操作之後在流中排隊執行操作,並允許查詢排隊操作的狀態。

原创 cuSPARSE庫:(二)靜態庫的支持

從6.5版本開始,cuSPARSE庫也發佈了Linux和Mac上的靜態庫libcusparse_static.a,cuSPARSE的靜態庫和其他所有的靜態數學函數庫依賴於一個公共的線程抽象層庫libculibos.a(Linux系統中)或