Могут ли два процесса одновременно выполняться на одном ядре ЦП, имеющем гиперпоточность? Я учусь из Интернета. Но я не вижу четкого прямого ответа.
Edit:
Спасибо за обсуждение и обмен! Мой кошелек для публикации моего вопроса здесь не для обсуждения параллельных вычислений. Он будет слишком большим, чтобы обсуждать его здесь. Я просто хочу знать, может ли многопоточное приложение получить большую выгоду от гиперпоточности, чем многопроцессорное приложение. После дальнейшего прочтения у меня есть следующие учебные записи.
1) Ядро ЦП с поддержкой технологии Hyper-Threading имеет два набора состояния ЦП и логику прерывания. Между тем, он имеет только один набор модулей выполнения и кэш-памяти. (Я еще не изучал, что такое трубопровод)
2) Многопоточность выигрывает от гиперпоточности только в том случае, если в некотором исполняемом потоке возникают задержки. Я думаю, что эта точка может точно соответствовать общей причине того, почему и когда программист использует многопоточность. Если многопоточное приложение было оптимизировано. Это может не принести никакой пользы от потоков Hypter.
3) Если состояние процессора отображается на состояние процесса, я считаю, что Марк прав, что многопоточное приложение может даже получить больше преимуществ от технологии гиперпоточности.
4) Когда производитель ЦП говорит «поток», похоже, что его «поток» отличается от потока, который я знаю как программист java?