forked from cusplibrary/cusplibrary
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
194 lines (163 loc) · 5.81 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
#######################################
# Cusp v0.4.0 #
#######################################
Summary
Cusp v0.4.0 provides support for CUDA 5.5 and Thrust v1.7. Version
0.4.0 includes several new graph algorithms based on backend integration
with back40computing, a refactored smoothed aggregation solver allowing
user-defined functions for core components and experimental work concerning
sparse matrix visualization.
New Features
array2d formats allow access to row and column elements regardless of orientation
gallery method to generate grids
OpenGL implementation of spy to view sparse matrices
Generalized multilevel class
Added Sparse * Dense multiplication routine
Algorithms
cusp::graph::bfs
cusp::graph::connected_components
cusp::graph::hilbert_curve
cusp::graph::maximum_flow
cusp::graph::max_flow_to_min_cut
cusp::graph::pseudo_peripheral_vertex
cusp::graph::symmetric_rcm
cusp::krylov::cr
Bug Fixes
Resolved issues related to Thrust 1.6 & Thrust 1.7
Resolved issues related to CUDA 5.5
Silenced warnings concerning uninitialized memory in generalized SpMV
#######################################
# Cusp v0.3.1 #
#######################################
Summary
Minor compatibility fixes for Thrust 1.6.x
#######################################
# Cusp v0.3.0 #
#######################################
Summary
Cusp v0.3.0 provides support for CUDA 4.1 and Thrust v1.5. Version
0.3.0 includes incremental improvements to MatrixMarket I/O support
and array format conversions.
New Features
MatrixMarket I/O routines support complex matrices
array1d is convertible to and from all other formats (e.g. array1d<->array2d)
Bug Fixes
Resize final output of CSR * CSR to account for excluded zeros
Acknowledgements
Justin Luitjens and Simon Layton for diagnosing CSR SpMM bug
Kashif Rasul for Thrust v1.6 support patch
Filipe Maia and Steven Dalton for general support and maintenance
#######################################
# Cusp v0.2.0 #
#######################################
Summary
Cusp v0.2.0 provides support for CUDA 4.0 in addition to many new
features and performance enhancements. Support for complex numbers
is now available through the cusp::complex class. Lightweight views
to dense arrays and sparse matrix formats are now provided, allowing
user-allocated data to be interfaced efficiently with Cusp algorithms.
The performance of sparse matrix format conversions has been improved
dramatically on the device. Preconditioners based on algebraic multigrid
(AMG) and approximate inverse (AINV) methods have been added to the library.
New Features
Complex numbers
cusp::complex
cusp/cmath.h
cusp/complex.h
Sparse Matrices
cusp::coo_matrix_view
cusp::csr_matrix_view
cusp::dia_matrix_view
cusp::ell_matrix_view
cusp::hyb_matrix_view
Krylov methods
cusp::krylov::bicg
cusp::krylov::gmres
cusp::krylov::cg_m
cusp::krylov::bicgstab_m
Input/Output
cusp::io::read_matrix_market_stream
Algorithms
cusp::add
cusp::subtract
cusp::graph::maximal_independent_set
cusp::copy
cusp::convert
cusp::blas::nrm1
cusp::blas::nrmmax
cusp::relaxation::polynomial
Matrix Gallery
cusp::gallery::diffusion
Preconditioners
cusp::precond::scaled_bridson_ainv
cusp::precond::bridson_ainv
cusp::precond::nonsym_bridson_ainv
cusp::precond::smoothed_aggregation
Bug Fixes
#12 MatrixMarket file reader fails on OSX
#18 ensure that IndexType=long is supported
#27 bicgstab can't solve Ix = b
#31 device::spmm_coo requires huge amount of memory
#37 cusp::graph::maximal_independent_set should return the size of the MIS
#45 silence compiler warnings
#66 thrust hg version no longer compatible with hg version of cusp
#71 Several cusp::blas calls cause unexpected results by converting the output to ScalarType
Deprecations
cusp::print_matrix has been replaced by cusp::print
cusp::blas functions only accept arrays and array views
Known Issues
Cusp is known to cause the nvcc compiler to issue warnings of the form:
warning: calling a host function ... from a __device__/__global__ function ... is not allowed
Acknowledgements
Filipe Maia for general maintenance, testing, and implementations of cusp::complex and BiCG
Greg van Anders for CG-M and BiCGstab-M implementations
Joe Gordon for GMRES implementation
Jonathan Cohen for AINV preconditioners
Steven Dalton for improvements to conversion routines and smoothed aggregation preconditioner
#######################################
# Cusp v0.1.1 #
#######################################
Summary
Small fixes for compatibility with CUDA 3.1
#######################################
# Cusp v0.1.0 #
#######################################
Summary
Initial release
Features
Sparse Matrix Support
cusp::coo_matrix
cusp::csr_matrix
cusp::dia_matrix
cusp::ell_matrix
cusp::hyb_matrix
conversion between all formats
host<->device transfers
Dense Matrix Support
cusp::array1d
cusp::array2d
Algorithms
cusp::multiply(A,x,y) : y = A*x
cusp::transpose(A,At) : A^T
cusp::blas::*
Gallery
cusp::gallery::stencil
cusp::gallery::poisson5pt
Solvers
cusp::krylov::cg
cusp::krylov::bicgstab
Monitors
cusp::default_monitor
cusp::verbose_monitor
Preconditioners
cusp::precond::diagonal
User-Defined Linear Operators
cusp::linear_operator
File I/O
cusp::io::read_matrix_market_file
cusp::io::write_matrix_market_file
Utilities
cusp::print_matrix
cusp::is_valid_matrix etc.
Known Issues
Many routines assume that several arguments have the exact same type