llvm / llvm/llvm-project

[libc++] Investigate why `std::vector<std::string>::operator=` is 50% slower with the stable ABI

Open
#162,355 0 comments 0 reactions 0 assignees View on GitHub
libc++ performance
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

I suspect that is related to the set of external instantiations in `std::string`.

Contributor guide

Open the contributing guide

Research direction

Start by investigating the reported performance difference in libc++ for std::vector::operator= with the stable ABI. Compare the relevant behavior with and without the stable ABI, then examine whether external instantiations in std::string account for the slowdown. Done means identifying the cause and documenting a concrete direction for addressing it.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.