Skip to content

Reimplement IxDyn, with no allocation for the small dimension case - #301

Merged
bluss merged 12 commits into
masterfrom
ixdyn
Apr 4, 2017
Merged

Reimplement IxDyn, with no allocation for the small dimension case#301
bluss merged 12 commits into
masterfrom
ixdyn

Conversation

@bluss

@blussbluss commented Apr 3, 2017

Copy link
Copy Markdown
Member
  • Current parameter for inline case is CAP = 4, above which the dimension is stored as a Box<[T]>.
  • Breaking change where Dim<Vec<Ix>> as a dimension is replaced by Dim<IxDynImpl>. Vec and slices still implement IntoDimension → IxDyn the same way, though.
  • Performance improvements for usage of IxDyn across the board, maybe not as much as you would think. (For example: Binary operations on arrays don't care about dimension type if both operands are contiguous, so then we can't improve that.)

Fixes#285

@bluss

bluss commented Apr 3, 2017

Copy link
Copy Markdown
MemberAuthor

Ok, beta ICE we see is fixed upstream <3 rust-lang/rust/pull/40813

@bluss
bluss merged commit dcd9012 into masterApr 4, 2017
@bluss
bluss deleted the ixdyn branch April 4, 2017 17:06
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@bluss