I've investigated performance differences between sprs-ldl and sprs-suitesparse-ldl. As it turns out, the bindings over the C library were faster, mostly because bounds checking had a high impact in a tight loop.
Fortunately, using an iterator could remove one of the offending bound checks, and I've been able to prove the other bounds check unnecessary regardless of the inputs, which means some unsafe indexing can be used.
I've investigated performance differences between
sprs-ldl
andsprs-suitesparse-ldl
. As it turns out, the bindings over the C library were faster, mostly because bounds checking had a high impact in a tight loop.Fortunately, using an iterator could remove one of the offending bound checks, and I've been able to prove the other bounds check unnecessary regardless of the inputs, which means some unsafe indexing can be used.
This should help #199.