Hacker News new | ask | show | jobs
by juxhindb 1892 days ago
Thanks for sharing that, love the simplicity behind it which is more intuitive than the example I had gone with.

I think the reason why I chose that particular one was to show how thinking about a problem from an entirely different angle can yield great (and rewarding) results.

1 comments

Ideally, you'd want your compiler to use the hardware population count instructions though. So this might be one of the places where a simpler algorithm might win out because the compiler can recognize it.
In fact that is one of the follow-ups I want to have out of this. Have architecture-specific optimisations (popcnt on x86) either manually through something like the `asm` crate, or by having a simpler algorithm that the compiler can optimise away.
An extension to this infact is the following - https://github.com/llvm-mirror/llvm/blob/f36485f7ac2a8d72ad0...

So the original user's comment might infact get detected by this and get optimised down to using popcnt. Will need to try it out. :-)