-
Notifications
You must be signed in to change notification settings - Fork 500
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Analysis reports for STL implementation comparison (libstdc++, libc++, MS STL) #877
Comments
Looks like an interesting topic for study. |
I want to compare the STL implementation of each library |
@sungho-yoon Thanks! We first have to make sure that if it's possible to build MS STL in Linux environment. Could you please try it first? |
@honggyukim OK I'll try it first |
@honggyukim I need some help to analyze stl. Source code #include <iostream>
using namespace std;
void algorithm_sort(){
vector<int> a = {5, 4, 3, 2, 1};
sort(a.begin(), a.end());
}
int main(void){
algorithm_sort();
return 0;
} With g++, libstdc++ Compile option Result(std::sort())
With clang++, libc++ Result
I don't know how to trace libc++ built-in functions. Is there a way to trace it? With Full Dynamic Tracing, the results are same. |
Sorry for missing to reply this thread. The STL functions inside libstdc++ are mostly provided in its header files, but libc++ provides most of implementation inside the library itself. So it might not be able to trace many functions inside libc++. The best way to trace it is to recompile libc++ as well. Thanks. |
Very recently, microsoft has open-sourced MSVC STL implementation on github.
It seems that it can be meaningful to compare the STL implementation for each library.
uftrace can be a useful tool for their analysis.
The text was updated successfully, but these errors were encountered: