[cfe-users] Problem with installing clang-3.8.0

2020-06-09 Thread Kwiatek, Michal (Nokia - PL/Wroclaw) via cfe-users
Hi,
I have troubles with installing clang 3.8.0
I am able to install versions such as 6.0 or 10 but I cannot install 3.8.0
When I write: `sudo apt-get install clang-3.8.0` I get following message 
(screen included)


Os version: Ubuntu 20.04
___
cfe-users mailing list
cfe-users@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users


[cfe-users] Why my program is slower when fixed with performance-faster-string-find?

2020-06-09 Thread Pierre Tallotte via cfe-users
Hi all,

I've made a micro-benchmark to check how much the use of a character literal as 
an argument of std::string::find outperforms the use of a single character 
string literal:

#include 
#include 
#include 

int main() {
int res = 0;
std::string s(STRING_LITERAL);

auto start = std::chrono::steady_clock::now();

for(int i = 0; i < 1000; i++) {
#ifdef CHAR_TEST
res += s.find('A');
#else
res += s.find("A");
#endif
}

auto end = std::chrono::steady_clock::now();

std::chrono::duration elapsed_seconds = end-start;
std::cout << "elapsed time: " << elapsed_seconds.count() << "s\n";

return res;
}

However, I have better performance with single character string literal when 
the std::string contains a small string and my program is compiled with -O3:

> (echo "char with small string" ; clang++ -DSTRING_LITERAL=\"BAB\" -DCHAR_TEST 
> -O3 -o bench_exe bench.cpp && ./bench_exe) ; (echo "string literal with small 
> string" ; clang++ -DSTRING_LITERAL=\"BAB\" -O3 -o bench_exe bench.cpp && 
> ./bench_exe)

char with small string
elapsed time: 0.0551678s
string literal with small string
elapsed time: 0.0493302s

I'm using the 8.0.0 version of clang:
> clang++ --version
clang version 8.0.0
Target: x86_64-unknown-linux-gnu
Thread model: posix

I can reproduce this results on all of my run. On average, the use of a single 
character string literal give me a 10% performance improvement.

My question is: is the use of a character literal as argument of 
std::string::find always faster whatever the optimization level and the size of 
the string?

Thanks.
___
cfe-users mailing list
cfe-users@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users