Tong Dong Qiu
|
c1cbf7a00f
|
Fix ChowPatelIlu compilation errors,
introduced in recent PR
|
2022-02-03 10:42:27 +01:00 |
|
Tong Dong Qiu
|
6c8ada4cd2
|
Reduced header inclusion and updated comments
|
2022-02-03 10:42:22 +01:00 |
|
Tong Dong Qiu
|
275bfe2da4
|
Move cuda files to separate folder
|
2022-02-02 09:28:41 +01:00 |
|
Tong Dong Qiu
|
e81ca0526e
|
Move opencl files to separate folder
|
2022-02-01 16:51:32 +01:00 |
|
Tong Dong Qiu
|
a514947b5a
|
Include boost version
|
2022-02-01 15:56:36 +01:00 |
|
Tong Dong Qiu
|
f48fe632cb
|
Added comment to apply_stdwell kernels
|
2021-12-22 16:22:55 +01:00 |
|
Tong Dong Qiu
|
3decb73561
|
Fix stdwell_apply opencl kernel
|
2021-12-22 16:16:04 +01:00 |
|
Tong Dong Qiu
|
aa5f36b835
|
Only include test if opencl is found
|
2021-12-09 08:39:43 +01:00 |
|
Tong Dong Qiu
|
a5ed003418
|
Update GPU solver and solve_transposed_3x3() tests
|
2021-12-06 11:57:24 +01:00 |
|
Tong Dong Qiu
|
374f8276dc
|
Move opencl variables to Preconditioner
|
2021-12-01 14:15:59 +01:00 |
|
Tong Dong Qiu
|
94ea2dcd30
|
Change C to C++
Also bugfix wrong size when COPY_ROW_BY_ROW is active
|
2021-12-01 14:15:16 +01:00 |
|
Tong Dong Qiu
|
e0a4d271ea
|
Formatting changes
|
2021-12-01 11:47:45 +01:00 |
|
Tong Dong Qiu
|
0881089406
|
Add Preconditioner, superclass of BILU0 and CPR
|
2021-12-01 11:47:45 +01:00 |
|
Tong Dong Qiu
|
50d0486b28
|
Allow a variable number of pre/post smooth steps during AMG
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
d58aa58791
|
Add more testcases for solve_transposed_3x3()
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
a911d5d2be
|
Add test for solve_transposed_3x3()
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
56fb3948e5
|
Fill restriction matrix faster
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
411d3c6a8d
|
Replace spmv-prolongation by specialized kernel
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
eaded9dcf7
|
Add prolongate_vector() kernel
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
9d611f04ee
|
Add timers to opencl CPR preconditioner
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
f2225503c4
|
Combine BILU0 and CPR preconditioner
|
2021-12-01 11:47:44 +01:00 |
|
Tong Dong Qiu
|
11d54f31f5
|
Reuse umfpack object
|
2021-12-01 11:47:29 +01:00 |
|
Tong Dong Qiu
|
b9a12b64d9
|
Rename copy sparsity pattern function
|
2021-12-01 11:43:40 +01:00 |
|
Tong Dong Qiu
|
d7204c5be7
|
Create separate functions
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
13646337f3
|
Reduce get_absmax() code
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
5e85c23478
|
Renamed move_to_coarse/fine() in CPR
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
19a0454b6f
|
Update comments
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
ca44351c72
|
Add error checks for OpenclMatrix
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
de8073e689
|
Reuse Matrix constructor
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
a71a5cd8fe
|
Moved OpenclMatrix to new file
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
a8b1d7c9dc
|
Change header include guard name
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
1306a65104
|
Remove unnecessary intermediate variables
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
5385bd275e
|
Rename get_opencl_kernel functions
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
adb4649277
|
Changed block_size template to parameter for block functions
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
288e548b89
|
Changed block_size template to variable for OpenclMatrix
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
9acffab47e
|
Changed block_size template to variable for BlockedMatrix
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
a6b6a62b27
|
Changes needed for FPGA
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
606143ef57
|
Add timer for cpr_apply
|
2021-12-01 11:43:39 +01:00 |
|
Tong Dong Qiu
|
6465cf9cbb
|
Add CPR preconditioner for openclSolver and
change raw pointers to vector for Matrix
|
2021-12-01 11:43:30 +01:00 |
|
Tong Dong Qiu
|
803a2ac2f4
|
Allow CMake to set CHOW_PATEL variables
|
2021-11-04 15:47:33 +01:00 |
|
Tong Dong Qiu
|
920eeee426
|
Rename namespace bda to Opm::Accelerator
|
2021-11-04 15:47:33 +01:00 |
|
Tong Dong Qiu
|
b945502a82
|
Minor improvements
|
2021-11-04 15:45:33 +01:00 |
|
Tong Dong Qiu
|
78b1714481
|
Move apply_stdwells kernels to OpenclKernels
|
2021-11-04 14:25:39 +01:00 |
|
Tong Dong Qiu
|
1583292bf4
|
Move opencl kernels to static class
|
2021-11-04 14:25:22 +01:00 |
|
Tong Dong Qiu
|
b8587daaa7
|
Move ChowPatel decomposition to appropriate file
|
2021-11-04 13:58:06 +01:00 |
|
Tong Dong Qiu
|
68adf85f52
|
Create and use scale kernel for relaxation of ILU
|
2021-10-05 10:49:21 +02:00 |
|
Tong Dong Qiu
|
796d1b7f8a
|
Allow to choose a platform and device when using amgcl with VexCL
|
2021-07-09 17:03:11 +02:00 |
|
Tong Dong Qiu
|
0ee6b58fb0
|
Only initialize VexCL once
|
2021-07-09 15:39:35 +02:00 |
|
Tong Dong Qiu
|
b0749ce7d4
|
Use default parameters if json file does not specify all.
Throw exception if json file cannot be parsed.
|
2021-07-09 14:07:55 +02:00 |
|
Tong Dong Qiu
|
aa63da2bd3
|
Update GPU tests
|
2021-07-07 17:03:48 +02:00 |
|
Tong Dong Qiu
|
f77d745b51
|
Factor out CUDA part of amgclSolver
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
b2156a4edc
|
Remove unused variable warnings
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
b28c96699b
|
Combine blocked and unblocked VexCL implementations
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
5306ae6a60
|
Allow VexCL to use unblocked matrices
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
47ffeaf24a
|
Allow VexCL to use runtime parameters
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
b4eb711c71
|
Enable the VexCL backend, disabled for blocksize=1
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
a3d8d6655f
|
Added enum for amgcl_backend_type
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
d45f9d08f7
|
Allow amgcl without CUDA
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
e556124405
|
Allow to choose amgcl backend at runtime, added default amgcl params
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
282f611f92
|
Make sure amgcl can be used without CUDA
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
a08195a983
|
Use CMake config of amgcl itself
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
3c1bfeb72f
|
Let amgcl use runtime parameters via JSON file
|
2021-07-07 16:24:52 +02:00 |
|
Tong Dong Qiu
|
a23d881817
|
Reuse amgcl parameters
|
2021-07-07 16:24:51 +02:00 |
|
Tong Dong Qiu
|
47e2899ba8
|
Moved amgcl declarations to header
|
2021-07-07 16:24:51 +02:00 |
|
Tong Dong Qiu
|
7c7911b9bc
|
Allow to use amgcl when CUDA and OpenCL are not found
|
2021-07-07 16:24:51 +02:00 |
|
Tong Dong Qiu
|
c2869810e2
|
Added amgclSolverBackend
|
2021-07-07 16:24:51 +02:00 |
|
Tong Dong Qiu
|
5918c64b54
|
Add useWellConn parameter to WellContributions()
|
2021-07-07 16:24:51 +02:00 |
|
Tong Dong Qiu
|
6291ba41b7
|
Added exception handling to cusparse test
|
2021-06-18 16:19:39 +02:00 |
|
Tong Dong Qiu
|
f075c236c1
|
New error handling from Markus
|
2021-06-16 15:54:06 +02:00 |
|
Tong Dong Qiu
|
31eeb33039
|
Added error checking to tests
|
2021-06-08 16:07:38 +02:00 |
|
Tong Dong Qiu
|
393ab24154
|
Updated copyright notice
|
2021-06-07 11:40:03 +02:00 |
|
Tong Dong Qiu
|
74b46e4d8d
|
Added tests for cusparseSolver and openclSolver
|
2021-06-07 11:40:03 +02:00 |
|
Tong Dong Qiu
|
0e63cda518
|
Instantiate whole class instead of each function
|
2021-06-07 11:40:03 +02:00 |
|
Tong Dong Qiu
|
5466b0f5f2
|
Always print CHOW_PATEL info if used
|
2021-04-09 16:19:45 +02:00 |
|
Tong Dong Qiu
|
8ea19c66aa
|
Reduced code duplication in BdaBridge
|
2021-03-12 11:15:02 +01:00 |
|
Tong Dong Qiu
|
81c0a3d9f9
|
Simplified CPU fallback warnings
|
2021-03-12 11:15:02 +01:00 |
|
Tong Dong Qiu
|
87e3f1d72d
|
Added timers to ChowPatelIlu
|
2021-03-03 17:12:46 +01:00 |
|
Tong Dong Qiu
|
b87e9dad9a
|
Updated comments
|
2021-03-03 16:36:27 +01:00 |
|
Tong Dong Qiu
|
0caae966b8
|
Add more waiting for opencl functions, using shortened opencl kernel params in WellContributions
|
2021-03-03 14:04:06 +01:00 |
|
Tong Dong Qiu
|
688d8ff627
|
Shorten opencl kernel params, add source file for openclKernels
|
2021-03-03 13:09:24 +01:00 |
|
Tong Dong Qiu
|
61bf85bf24
|
Add waiting for enqueueWriteBuffer
|
2021-03-03 10:37:01 +01:00 |
|
Tong Dong Qiu
|
18bf7c4b19
|
Replace diagfinding with std::find
|
2021-03-03 09:50:33 +01:00 |
|
Tong Dong Qiu
|
5b4deab7e4
|
Generating opencl kernels
|
2021-03-01 10:26:44 +01:00 |
|
Tong Dong Qiu
|
141af23db5
|
Exact ILU decomp is now performed on GPU
|
2021-03-01 10:26:35 +01:00 |
|
Tong Dong Qiu
|
748dc4ccb3
|
Reduced header inclusion, also moved WellContributions OpenCL initialization
|
2021-03-01 09:42:56 +01:00 |
|