[libcxx-commits] [PATCH] D132505: [libc++] Refactor deque::iterator algorithm optimizations

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Thu Sep 8 12:22:44 PDT 2022


ldionne added a comment.

In D132505#3778038 <https://reviews.llvm.org/D132505#3778038>, @EricWF wrote:

> My understanding of these algorithms is that they were hand-tuned to produce optimizer friendly (at the time) codegen.
>
> How are we verifying the performance impact of this change? Or is that not a concern?

Performance is clearly a concern, and in fact it's the whole purpose of this part of the codebase. I think we should take a look at the codegen before and after. We can also add a simple benchmark in our benchmark infrastructure.

That being said, this is a fairly macro optimization, not a micro optimization, so I'm less concerned about the exact codegen (not that we should ignore it). The real micro optimization happens inside the non-segmented version of `std::__copy`, where we use `memmove` if we can.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D132505/new/

https://reviews.llvm.org/D132505



More information about the libcxx-commits mailing list