I had this problem with TWS on windows. I increased the memory allocation:
Edit -> Global Configuration -> Configuration -> General -> Memory Allocation (in MB).
What's yours currently set to? Mine is currently at 6144. That seemed to be enough. My assumption is that when this limit is too low, Java's memory management is swapping or doing garbage collection or other tricks to free up memory more frequently, effectively trading CPU for memory. In any case, I was having this problem for a while and increasing the memory solved it completely for me.
While I don't run tws on my mac, it's likely to behave the same if you are also memory constrained. Bear in mind, your machine needs to have enough memory as well. TWS being a Java application will not consume more memory than the JVM is allotted, so even if your machine has 16GB, TWS may only be using ~1.5GB or whatever is allotted.
So mine was set to 768 mb and i increased it to 4000 mb and that was the max it would let me do (i kept getting an error when i tried to increase it anymore). My cpu dropped but if i click on anything in tws or tinker with global configuration- it spikes to 100% cpu now and stays there.
So im guessing that ib messed something up on their end for this specific update (970.1b) for mac and its requiring way more memory than the previous versions. Although this also happened with stable, beta and offline versions as well so im not sure what exactly is going on.
I guess all i can do now is wait for the next update and see if the problem gets fixed because ive used tws on my mac for 2 years without a single problem and my layout was always the same and i never changed my settings.
If the next update doesnt help im gonna go buy a windows specifically to run tws because *sigh* im sick of wasting my time googling and changing my mac settings trying to fix the issue lol.
Anyways, thank you very much your suggestion dropped my cpu from the high 200-300% to 100% which is still an improvment. Now if only it would go back down to less than 10% like before haha
