I assume that you're running Linux since a quick check of the Windows Task Manager would show if the OS thinks you have more than one logical processor.
I'm not sure what you meant in the first part that says CPUID tells you that there is no HT. Is this a specific app? The cpuid instruction, with EAX set to 1, does look to confirm that there is HT on the system (28th bit, low bit of leading 'b', is set).
I would be more trusting of the code found in the paper you cite and the results that it generates. The BIOS you are using may not support HT, so you don't see it. If that is the case, it really doesn't matter if you have HT or not since it wouldn't be accessible by the OS (even though it appears to be built into the processor). Another idea could be that the processor has the HT facility, but that it is turned off in the chip hardware. I know there were processors released that way, but I have no idea about how they would show up under the cpuid command probing.
Someone with more experience might have better information than me.