The Hunt for the Fastest Zero
travisdowns.github.io
The Hunt for the Fastest Zero
1–8 of 8 posts
Re: The Hunt for the Fastest Zero
#2[deleted]
Re: The Hunt for the Fastest Zero
#3I'd use std::memset and have something that works without needing a benchmark to detect obscure template quirks.
Re: The Hunt for the Fastest Zero
#4[deleted]
Re: The Hunt for the Fastest Zero
#5Well, if it's optimised out at "-O3", I usually don't care.
If you have some numerical code you can optimise further (even though you're using "-O3" or "-ffast-math"), things become interesting!
Re: The Hunt for the Fastest Zero
#6I'd use std::memset and have something that works without needing a benchmark to detect obscure template quirks.
I agree. Why go through the extra loops? Keep it simple.
Re: The Hunt for the Fastest Zero
#7Duplicated at https://news.ycombinator.com/item?id=22104576 .
Re: The Hunt for the Fastest Zero
#8I'd use std::memset and have something that works without needing a benchmark to detect obscure template quirks.
I agree. Why go through the extra loops? Keep it simple.
std::memset only works for sequential and contiguous memory. std::fill works on pretty much anything that has std::begin() and std::end().
As the conclusion of the article says I would use the idiomatic way first, then and only if I have performance issues, actually force it to memset.
The only bad thing here is that, gcc only do the reasonable optimization on '-O3'.