jcuda / jcuda-main

Summarizes the main JCuda libraries
MIT License
99 stars 20 forks source link

CUDA 12 #56

Closed jcuda closed 1 year ago

jcuda commented 1 year ago

The update for CUDA 12 is going to be tracked here. I hope that the major version update does not imply toooo many breaking changes in the API, but I haven't looked into the release notes yet. If there are extensive new features, then it's unlikely that I'll implement the bindings for them. But having an updated version of JCuda for CUDA 12 that at least preserves the working state (including possible internal bugfixes or improvements) would be the baseline for the update.

Biserkov commented 1 year ago

How can I help?

jcuda commented 1 year ago

There's no realistic and specific way for externals to help here. I have to update to CUDA 12, look at the differences, update the API where necessary (which is a not-so-ideal mix of auto-generating code and manual steps), and create a new release.

The delay here is mainly caused by me wondering about ... (the combination of) the questions 1. whether it's still worth spending my spare time for that and 2. how much interest there is in JCuda (and using it with CUDA 12 in particular) after all.

Biserkov commented 1 year ago

Hey, no pressure.

I'm between jobs, and trying to learn ClojureCUDA which uses JCuda under the hood. I have no particular use case of CUDA 12 other than it being the latest.

neocoretechs commented 1 year ago

cuSparse compilation errors. Checking the docs, it seems they actually made good on their threat to remove these deprecated funcs:

Severity    Code    Description Project File    Line    Suppression State
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   793 
Error (active)  E0020   identifier "cusparseCreateCsrsv2Info" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   799 
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   823 
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   826 
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   826 
Error (active)  E0020   identifier "cusparseDestroyCsrsv2Info" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   829 
Error (active)  E0020   identifier "cusparseSaxpyi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1441    
Error (active)  E0020   identifier "cusparseDaxpyi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1516    
Error (active)  E0020   identifier "cusparseCaxpyi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1591    
Error (active)  E0020   identifier "cusparseZaxpyi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1666    
Error (active)  E0020   identifier "cusparseSgthr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1729    
Error (active)  E0020   identifier "cusparseDgthr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1791    
Error (active)  E0020   identifier "cusparseCgthr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1853    
Error (active)  E0020   identifier "cusparseZgthr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1915    
Error (active)  E0020   identifier "cusparseSgthrz" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1977    
Error (active)  E0020   identifier "cusparseDgthrz" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2039    
Error (active)  E0020   identifier "cusparseCgthrz" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2101    
Error (active)  E0020   identifier "cusparseZgthrz" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2163    
Error (active)  E0020   identifier "cusparseSsctr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2225    
Error (active)  E0020   identifier "cusparseDsctr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2287    
Error (active)  E0020   identifier "cusparseCsctr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2349    
Error (active)  E0020   identifier "cusparseZsctr" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2411    
Error (active)  E0020   identifier "cusparseSroti" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2487    
Error (active)  E0020   identifier "cusparseDroti" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2565    
Error (active)  E0020   identifier "cusparseAlgMode_t" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3352    
Error (active)  E0020   identifier "cusparseAlgMode_t" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3375    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3375    
Error (active)  E0020   identifier "cusparseCsrmvEx_bufferSize" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3407    
Error (active)  E0020   identifier "cusparseAlgMode_t" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3508    
Error (active)  E0020   identifier "cusparseAlgMode_t" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3531    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3531    
Error (active)  E0020   identifier "cusparseCsrmvEx" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3563    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4722    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4727    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4727    
Error (active)  E0020   identifier "cusparseXcsrsv2_zeroPivot" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4731    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4798    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4810    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4810    
Error (active)  E0020   identifier "cusparseScsrsv2_bufferSize" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4814    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4888    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4900    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4900    
Error (active)  E0020   identifier "cusparseDcsrsv2_bufferSize" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4904    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4978    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4990    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4990    
Error (active)  E0020   identifier "cusparseCcsrsv2_bufferSize" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4994    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5068    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5080    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5080    
Error (active)  E0020   identifier "cusparseZcsrsv2_bufferSize" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5084    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5159    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5172    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5172    
Error (active)  E0020   identifier "cusparseScsrsv2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5177    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5253    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5266    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5266    
Error (active)  E0020   identifier "cusparseDcsrsv2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5271    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5347    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5360    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5360    
Error (active)  E0020   identifier "cusparseCcsrsv2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5365    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5441    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5454    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5454    
Error (active)  E0020   identifier "cusparseZcsrsv2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5459    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5551    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5572    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5572    
Error (active)  E0020   identifier "cusparseScsrsv2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5579    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5674    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5695    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5695    
Error (active)  E0020   identifier "cusparseDcsrsv2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5702    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5797    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5818    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5818    
Error (active)  E0020   identifier "cusparseCcsrsv2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5825    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5920    
Error (active)  E0020   identifier "csrsv2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5941    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5941    
Error (active)  E0020   identifier "cusparseZcsrsv2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5948    
Error (active)  E0020   identifier "cusparseSgemmi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8017    
Error (active)  E0020   identifier "cusparseDgemmi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8137    
Error (active)  E0020   identifier "cusparseCgemmi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8257    
Error (active)  E0020   identifier "cusparseZgemmi" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8377    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8414    
Error (active)  E0020   identifier "cusparseCreateCsrsm2Info" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8420    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8444    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8447    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8447    
Error (active)  E0020   identifier "cusparseDestroyCsrsm2Info" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8450    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8485    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8490    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8490    
Error (active)  E0020   identifier "cusparseXcsrsm2_zeroPivot" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8499    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8592    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8616    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8616    
Error (active)  E0020   identifier "cusparseScsrsm2_bufferSizeExt" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8621    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8723    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8747    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8747    
Error (active)  E0020   identifier "cusparseDcsrsm2_bufferSizeExt" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8752    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8854    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8878    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8878    
Error (active)  E0020   identifier "cusparseCcsrsm2_bufferSizeExt" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8883    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   8985    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9009    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9009    
Error (active)  E0020   identifier "cusparseZcsrsm2_bufferSizeExt" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9014    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9116    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9140    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9140    
Error (active)  E0020   identifier "cusparseScsrsm2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9145    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9247    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9271    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9271    
Error (active)  E0020   identifier "cusparseDcsrsm2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9276    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9378    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9402    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9402    
Error (active)  E0020   identifier "cusparseCcsrsm2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9407    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9509    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9533    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9533    
Error (active)  E0020   identifier "cusparseZcsrsm2_analysis" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9538    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9640    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9664    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9664    
Error (active)  E0020   identifier "cusparseScsrsm2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9669    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9771    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9795    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9795    
Error (active)  E0020   identifier "cusparseDcsrsm2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9800    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9902    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9926    
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9926    
Error (active)  E0020   identifier "cusparseCcsrsm2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   9931    
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   10033   
Error (active)  E0020   identifier "csrsm2Info_t" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   10057   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   10057   
Error (active)  E0020   identifier "cusparseZcsrsm2_solve" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   10062   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20190   
Error (active)  E0020   identifier "cusparseCreateCsrgemm2Info" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20196   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20220   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20223   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20223   
Error (active)  E0020   identifier "cusparseDestroyCsrgemm2Info" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20226   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20339   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20371   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20371   
Error (active)  E0020   identifier "cusparseScsrgemm2_bufferSizeExt" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20375   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20507   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20539   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20539   
Error (active)  E0020   identifier "cusparseDcsrgemm2_bufferSizeExt" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20543   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20675   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20707   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20707   
Error (active)  E0020   identifier "cusparseCcsrgemm2_bufferSizeExt" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20711   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20843   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20875   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20875   
Error (active)  E0020   identifier "cusparseZcsrgemm2_bufferSizeExt" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   20879   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21017   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21045   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21045   
Error (active)  E0020   identifier "cusparseXcsrgemm2Nnz" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21049   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21229   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21268   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21268   
Error (active)  E0020   identifier "cusparseScsrgemm2" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21272   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21453   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21492   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21492   
Error (active)  E0020   identifier "cusparseDcsrgemm2" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21496   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21677   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21716   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21716   
Error (active)  E0020   identifier "cusparseCcsrgemm2" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21720   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21901   
Error (active)  E0020   identifier "csrgemm2Info_t" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21940   
Error (active)  E0065   expected a ';'  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21940   
Error (active)  E0020   identifier "cusparseZcsrgemm2" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   21944   
Error (active)  E0020   identifier "cusparseSdense2csr" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25164   
Error (active)  E0020   identifier "cusparseDdense2csr" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25254   
Error (active)  E0020   identifier "cusparseCdense2csr" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25344   
Error (active)  E0020   identifier "cusparseZdense2csr" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25434   
Error (active)  E0020   identifier "cusparseScsr2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25517   
Error (active)  E0020   identifier "cusparseDcsr2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25599   
Error (active)  E0020   identifier "cusparseCcsr2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25681   
Error (active)  E0020   identifier "cusparseZcsr2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25763   
Error (active)  E0020   identifier "cusparseSdense2csc" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25852   
Error (active)  E0020   identifier "cusparseDdense2csc" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   25942   
Error (active)  E0020   identifier "cusparseCdense2csc" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   26032   
Error (active)  E0020   identifier "cusparseZdense2csc" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   26122   
Error (active)  E0020   identifier "cusparseScsc2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   26205   
Error (active)  E0020   identifier "cusparseDcsc2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   26287   
Error (active)  E0020   identifier "cusparseCcsc2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   26369   
Error (active)  E0020   identifier "cusparseZcsc2dense" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   26451   
Error (active)  E0020   identifier "cusparseSpMatSetStridedBatch" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   36150   
Error (active)  E0020   identifier "cusparseCreateCooAoS" is undefined  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   36987   
Error (active)  E0020   identifier "cusparseCooAoSGet" is undefined JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   37183   
Error (active)  E0020   identifier "cusparseConstrainedGeMM" is undefined   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   40346   
Error (active)  E0020   identifier "cusparseConstrainedGeMM_bufferSize" is undefined    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   40446   
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   793 
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   793 
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   793 
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   799 
Error   C3861   'cusparseCreateCsrsv2Info': identifier not found    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   799 
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   802 
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   823 
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   823 
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   823 
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   826 
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   826 
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   826 
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   829 
Error   C3861   'cusparseDestroyCsrsv2Info': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   829 
Error   C3861   'cusparseSaxpyi': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1441    
Error   C3861   'cusparseDaxpyi': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1516    
Error   C3861   'cusparseCaxpyi': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1591    
Error   C3861   'cusparseZaxpyi': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1666    
Error   C3861   'cusparseSgthr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1729    
Error   C3861   'cusparseDgthr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1791    
Error   C3861   'cusparseCgthr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1853    
Error   C3861   'cusparseZgthr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1915    
Error   C3861   'cusparseSgthrz': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   1977    
Error   C3861   'cusparseDgthrz': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2039    
Error   C3861   'cusparseCgthrz': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2101    
Error   C3861   'cusparseZgthrz': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2163    
Error   C3861   'cusparseSsctr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2225    
Error   C3861   'cusparseDsctr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2287    
Error   C3861   'cusparseCsctr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2349    
Error   C3861   'cusparseZsctr': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2411    
Error   C3861   'cusparseSroti': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2487    
Error   C3861   'cusparseDroti': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   2565    
Error   C2065   'cusparseAlgMode_t': undeclared identifier  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3352    
Error   C2146   syntax error: missing ';' before identifier 'alg_native'    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3352    
Error   C2065   'alg_native': undeclared identifier JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3352    
Error   C2065   'alg_native': undeclared identifier JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3375    
Error   C2065   'cusparseAlgMode_t': undeclared identifier  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3375    
Error   C2146   syntax error: missing ';' before identifier 'alg'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3375    
Error   C2065   'alg_native': undeclared identifier JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3407    
Error   C3861   'cusparseCsrmvEx_bufferSize': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3407    
Error   C2065   'cusparseAlgMode_t': undeclared identifier  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3508    
Error   C2146   syntax error: missing ';' before identifier 'alg_native'    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3508    
Error   C2065   'alg_native': undeclared identifier JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3508    
Error   C2065   'alg_native': undeclared identifier JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3531    
Error   C2065   'cusparseAlgMode_t': undeclared identifier  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3531    
Error   C2146   syntax error: missing ';' before identifier 'alg'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3531    
Error   C2065   'alg_native': undeclared identifier JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3563    
Error   C3861   'cusparseCsrmvEx': identifier not found JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   3563    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4722    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4722    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4722    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4727    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4727    
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4727    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4731    
Error   C3861   'cusparseXcsrsv2_zeroPivot': identifier not found   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4731    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4798    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4798    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4798    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4810    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4810    
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4810    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4814    
Error   C3861   'cusparseScsrsv2_bufferSize': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4814    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4888    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4888    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4888    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4900    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4900    
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4900    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4904    
Error   C3861   'cusparseDcsrsv2_bufferSize': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4904    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4978    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4978    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4978    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4990    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4990    
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4990    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4994    
Error   C3861   'cusparseCcsrsv2_bufferSize': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   4994    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5068    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5068    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5068    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5080    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5080    
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5080    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5084    
Error   C3861   'cusparseZcsrsv2_bufferSize': identifier not found  JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5084    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5159    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5159    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5159    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5172    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5172    
Error   C2146   syntax error: missing ';' before identifier 'getNativePointerValue' JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5172    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5177    
Error   C3861   'cusparseScsrsv2_analysis': identifier not found    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5177    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5253    
Error   C2146   syntax error: missing ';' before identifier 'info_native'   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5253    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5253    
Error   C2065   'info_native': undeclared identifier    JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5266    
Error   C2065   'csrsv2Info_t': undeclared identifier   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5266    
Error   C1003   error count exceeds 100; stopping compilation   JCusparse   C:\jcuda\jcusparse\JCusparseJNI\src\JCusparse.cpp   5266
neocoretechs commented 1 year ago

There's no realistic and specific way for externals to help here. I have to update to CUDA 12, look at the differences, update the API where necessary (which is a not-so-ideal mix of auto-generating code and manual steps), and create a new release.

The delay here is mainly caused by me wondering about ... (the combination of) the questions 1. whether it's still worth spending my spare time for that and 2. how much interest there is in JCuda (and using it with CUDA 12 in particular) after all.

Java is alive and well. Unlike python, it scales. It doesnt have the dreaded GIL. Amazon is all in on it for that reason; they need performant code they can scale into their universe. Of course, they rely on their own Deep Java Library, but you get the point.

As far as CUDA 12, it's a major release, it supports their new architectures like Hopper, and supposedly has performance improvements. https://developer.nvidia.com/blog/cuda-toolkit-12-0-released-for-general-availability/

neocoretechs commented 1 year ago

Good news! Using my previously battleaxed code, plus chainsawing out the issues I mentioned for version 12, I get a complete build of Jcuda under CUDA 12.1.0

jcuda commented 1 year ago

That's great. I'll increase the effort to allocate time for the updates. I'll first try to update to 12.0. This will probably involve the bulk of the daunting "why am I doing this?"-work of wrapping deprecated stuff into #ifdefs. If that doesn't play well with the approach of semi-auto-generated code, I'll just say 🤷‍♂️ , drop backward compatibility, and blame it on NVIDIA. The update for 12.1 could then hopefully follow more quickly.

neocoretechs commented 1 year ago

Howdy, For anyone that just wants to get up and going with Win11/CUDA12.1 I have the jars available in the release section of this repos: https://github.com/neocoretechs/jcuda Take note that this has certain functionality removed where it broke original jcuda. The funcs will return internal JNI error codes, which should toss exceptions.

jcuda commented 1 year ago

I hope that it's OK to "broadcast" and ping multiple people here:

@blueberry @corepointer @Biserkov @neocoretechs

The update for CUDA 12.0.0 (not 12.1) should be done. It is tagged as version-12.0.0-RC00 in all repositories (equal to master right now).

Depending on who can provide which binaries at which point in time, I'd schedule a Maven release ASAP. (and... then tackle the update to 12.1, which hopefully won't take so long...)

jcuda commented 1 year ago

Another short ping

@blueberry @corepointer @Biserkov @neocoretechs

NVIDIA has released 12.2 in the meantime. I'm not sooo eager to update, but would do it, unless an unmanageable number of versions has piled up.

corepointer commented 1 year ago

As usual sorry for the delay :man_shrugging: :blush: Here are the binaries for Ubuntu 18+ No extra tests done yet (apart from the tests in the compilation procedure)

corepointer commented 1 year ago

As usual sorry for the delay man_shrugging blush Here are the binaries for Ubuntu 18+ No extra tests done yet (apart from the tests in the compilation procedure)

Updated for jcuda-12.0.0-RC02

jcuda commented 1 year ago

Sooo... unbelievable, but it took half a year :-(

However, JCuda 12.0.0 is on its way into Maven Central, and should soon be available under

<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcuda</artifactId>
    <version>12.0.0</version>
</dependency>
<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcublas</artifactId>
    <version>12.0.0</version>
</dependency>
<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcufft</artifactId>
    <version>12.0.0</version>
</dependency>
<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcusparse</artifactId>
    <version>12.0.0</version>
</dependency>
<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcusolver</artifactId>
    <version>12.0.0</version>
</dependency>
<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcurand</artifactId>
    <version>12.0.0</version>
</dependency>
<dependency>
    <groupId>org.jcuda</groupId>
    <artifactId>jcudnn</artifactId>
    <version>12.0.0</version>
</dependency>

Thanks @corepointer for providing the binaries and the testing that led to the discovery of https://github.com/jcuda/jcuda-main/issues/58 (which I'd close together with this issue soon).

@blueberry If you would like to test the new version, I'd appreciate any feedback.

Now, ... I hope that the pending updates for 12.1 and 12.2 won't take as long as this one. Sorry for the delays here...

jcuda commented 1 year ago

I hope that the pending updates for 12.1 and 12.2 won't take as long as this one.

They will. But closing here anyhow.

corepointer commented 1 year ago

Releasing a new version of something is usually a time of cheer and celebrations. So let me shout out a belated three fold hip hip hooray to you @jcuda for making CUDA 12 happen in Java :partying_face: :champagne: :clap: