<div dir="ltr"><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, 26 May 2020 at 16:14, Brock Mendel <<a href="mailto:jbrockmendel@gmail.com">jbrockmendel@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">>> Assuming we go down this path, do you have an idea of how we get from here to there incrementally?  i.e. presumably this wont just be one massive PR<div>>  [...] I would first like to focus on the "assuming we go down this path" part. Let's discuss the pros and cons and trade-offs, and try to turn assumptions in an agreed-upon roadmap. [...]</div><div><br></div><div>I think understanding the difficulty/feasibility of the implementation is a pretty important part of the pros/cons.</div></div></blockquote><div><br></div><div>That's true. Personally I think there are enough options to do it to not have to worry about the "how" too much, but for sure it will be a lot of work to do it properly (so rather the "who is going to do this").<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div>Looking back at #10556, I'm wondering if we could disable _most_ consolidation, e.g. only consolidate when making copies anyway, which might be a never-break-views policy.  From a user standpoint would that achieve much/most of th benefits here?</div></div></blockquote><div><br></div><div>That could certainly alleviate some of the drawbacks of the consolidated BlockManager regarding its copying behaviour (but not necessarily regarding the transparency / understandability of it, I would say). <br></div><div>But for example for the "complexity of the internals" argument, I think this would rather make it worse. Now, you at least know (after ensuring consolidation) that you have only a single block for a certain dtype. Still having many, potentially-but-not-always consolidated 2D blocks will make it more difficult to optimize the situation of non-consolidated / 1D blocks.<br></div></div></div>