-
Bound vectors are typically not sparse in the usual sense. They are populated with max/min bounds and not very many zeros. It might make sense to make our own "sparse" vector format where the zeros are actually the max or min bounds. This might save significant storage at the exa-scale... |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments
-
I tested this in #113 and it seems that defining a new data type is not more efficient. In short, the benefit of getting rid of storing the "infinite" fluxes e.g. -1000 and 1000 in most models is not worth it. Maybe my implementation is not efficient though. |
Beta Was this translation helpful? Give feedback.
-
I arrived at a similar idea while trying to interpret the meaning of "hole" in the bounds vector. Sparsity usually interprets it as "zero" (which means the reaction can't really happen), we'd like to interpret it as ±∞ because that's the point of missing bounds. And we're storing the -1000s and 1000s in most bounds anyway now. So I can definitely support this. Moreover, we already require reactions to be densely identified by string IDs, so this will not really add any noticeable overhead. |
Beta Was this translation helpful? Give feedback.
-
Okay, I think my size test was wrong, I used |
Beta Was this translation helpful? Give feedback.
I arrived at a similar idea while trying to interpret the meaning of "hole" in the bounds vector. Sparsity usually interprets it as "zero" (which means the reaction can't really happen), we'd like to interpret it as ±∞ because that's the point of missing bounds. And we're storing the -1000s and 1000s in most bounds anyway now. So I can definitely support this.
Moreover, we already require reactions to be densely identified by string IDs, so this will not really add any noticeable overhead.