-
-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
noise_rate_prototype for OOP problems #367
Comments
The array isn't sparse, so that just adds a bunch of overhead. It looks like the only issue is OOP? |
@ChrisRackauckas, sorry for the delay regarding this issue! Let me enumerate the issues that I see and might be relevant:
Thank you! |
How sparse? You need like, really sparse, 0.01% filled, for sparse matrices to be "worth it". And they have to be big, like 100x100 or larger. Small sparse matrices are just slower because the indexing scheme is bad. |
great, thanks! In the OOP case, it is not clear to me if there is anything wrong besides the fact that applying Finally... should I raise an issue in SparseArrays.jl? Thanks! |
We need to know the number of Brownian motions.
I don't think so. Mixing sparse with static just doesn't make all that much sense, at least without a sparse static type (which would specialize on the zero locations) |
yes, that is correct, but I was thinking that since it is an OOP problem, we could just evaluate Asking for the noise rate prototype is better in the sense that it will fail if
This is what I suspected! That is why I wanted to ask you first. Thank you! |
Yes we could. That's an interesting proposal. Something else I'd like to try is |
Hi,
for me, it is not clear what is the best way to define a
SDEProblem
when there is non-diagonal noise.First, a common header for all:
Out of Place version
My first idea was using a
noise_rate_prototype
as aStaticArray
as well:Adding sparse capabilities seems to worsen the situation:
This could be related to the fact that the underlying data for the
SparseMatrixCSC1
seems to be anArray
, not aStaticArray
:Do you think this an issue that we should file in SparseArrays.jl?
Finally, just for completion, I decided to test the
noise_rate_prototype
as anArray
with and without sparse capabilities:showing that the generated sparse object with
oop_gprototype
as aStaticArray
orArray
is the same object. Also, working withArray
is better than with aSparseArray
but worse than using aStaticArray
.The conclusion seems to be that the
noise_rate_prototype
that performs best for out of place problems is aStaticArray
object.In Place version
Using an
Array
as noise rate prototype yields to:Adding sparse capabilities:
worsen the situation, which seems odd. Is there an issue here?
The conclusion, for this particular case, seems to be that working with
Arrays
instead ofSparseArrays
is better...These are the first MWE that I could think of. Please, let me know if you want me to elaborate more tests. For me, it is not clear if there are issues involved or everything is working correctly. Maybe that would requiere inspecting the operation
g(u, p, t) * dW
that are happening under the hood for all the cases involved.Thanks!
The text was updated successfully, but these errors were encountered: