Cintu07 commented on PR #11259: URL: https://github.com/apache/arrow-rs/pull/11259#issuecomment-5926693720
yeah that one is on me. the roll check was sitting right in the row loop, so every row had to reload the buffer state instead of keeping it live. mixed lengths got hit worst which is why the 1..100 cases are the ugly ones. pushed 1fdb23c. the decision happens before the loop now. values can only outgrow a buffer when they do not all fit one, and the capacity pass already has that total, so there are two loops and the common one has no roll in it at all. can you kick the bench off again when you get a minute. i cannot measure it here, my machine swings 40 percent on the encode only benches and my diff does not even touch those. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
