It is something that is really hard to do. It is also difficult to know that do you mean as "accurate" semantic similarity between two phrases. You need to find a "good" metric to do so
Anyway, if you a have a limited context (you don't have to do a general purpose semantic similiraty calculator) a very basic approach could be to build a text classifier (with machine learning), in which you define the principal classes that you want to use.
For example, for your example phrases, you could have the two text classes:
asking about hyperthreading
asking about food
Than you train your model with a lot of phrases and your model output probabilities for your example phrases as such:
"what are the types of hyper threading":
"is there any categories in hyper threading"
Both phrases are classified as "asking about hyperthreading" (because they have the higher score in these classes) and then one can assume that they are similar. One could use also the probabilities scores to do something more sofisticated (using score differences etc)