I have Intel Pentium 4 HT, 3.2GHz.
When I run your program, your program uses only 50% of my CPU, while it could use max CPU power to work faster.
I also had a machine with Intel Atom 1.6GHz and same thing there.
As I know, HT and multicore support depends only on program itself, could you implement that support?