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