Skip to content

Conversation

@Baunsgaard
Copy link
Contributor

This commit type CacheBlocks, such that we can return subtypes through implementations of the interface.
In practice this means we do not have to cast the MatrixBlock or FrameBlock (or TensorBlock) in instances where we call slice, and therefore do not need to know what type of CacheBlock it is.

@Baunsgaard Baunsgaard changed the title [] Typed CacheBlock [???] Typed CacheBlock Nov 11, 2022
@Baunsgaard Baunsgaard marked this pull request as draft November 11, 2022 14:55
@Baunsgaard Baunsgaard changed the title [???] Typed CacheBlock [SYSTEMDS-3465] Typed return on CacheBlock Interface Slice Nov 15, 2022
@Baunsgaard Baunsgaard marked this pull request as ready for review November 24, 2022 22:28
This commit change the CacheBlock interfaced to by Typed.
The change allows cleaner interaction of instructions that are applied to
Tensors, Matrices, and Frames such as slice. where previously any
cacheBlock could be the argument target for the slice command and
potentially any other type could be returned. Now it only allows equal
type input and return equal type out.

Also cleaned up in this commit is the memory estimates for FrameBlocks,
to continue the process of separating the responsibility of the
ArrayColumns from the FrameBlock.

There are also performance benefits in this commit slightly improving
the parsing of Pandas DataFrame into SystemDS DataFrames, but further
improvements are planed in future commits.
@Baunsgaard Baunsgaard merged commit 0bddf34 into apache:main Nov 24, 2022
@github-pages github-pages bot temporarily deployed to github-pages November 24, 2022 22:42 Inactive
@Baunsgaard Baunsgaard deleted the CacheBlock branch November 24, 2022 22:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant