Not speed step, but I did turn off HT before I started unparking the cores. There was no difference with HT off. There might have been a slight difference, but at that point I was only concerned with the game feeling playable or unplayable. At the time I thought BF4 just had a more resource intensive engine, but the performance issues seem more related to the user environment.
What I'm guessing is happening is that because Nvidia's driver can load more than 1 core [likely because of Driver Command Lists](compared to AMD/ATi's driver that can only load 1 core) paired with the BF4 itself using 4 cores you get to a problem with a CPU that is 4 cored.
Usually the way to fix this is to lower the amount of cores the game uses itself by 1. (Don't try to do this yourself in task manager/process explorer, you have to actually change the game as it uses different threading models for it's different target CPUs that is set outside of user reach)
Core parking, Speed Step, and Hyperthreading muddle this issue alot since they all play their little parallel tricks which wreck havok on serial workloads like games.
This is the same huge problem that was happening during the very start of the BF4 beta as the game seemed to be using 1 core too many in their configurations corresponding to the cpus the game was running on.
As the game is a staunchly AMD/ATi title, I don't know if there is much you can do as an end user when using Nvidia drivers other than to get yourself a 5 core CPU without lower IPC or clock speeds (4930k being your only real choice).
One of the things you can do is to use the config I listed earlier in this thread so that the CPU doesn't overload itself preparing future asynchronous frames so that the CPU isn't doing potentially redundant work as the CPU cores are already thrashed by the program.
Here is a link for some of the topic I discusses in this post:
http://pcrepairaugustaga.com/battlefield-4-beta-pc-console-commands/