还望老师科普下CPU上的核心、线程的概念

来源:4-2 看看你的基本功:Java线程有哪些状态如何切换?

iiiboy

2021-03-16

现在购买cpu都是多核心的,比如6核12线程
cpu参数上的线程是什么概念?
和并发编程中的线程是一个意思吗?(感觉不是一个意思,因为java可以创建不止12个线程(@_@;))
还有这个6核是指的是物理核心和虚拟的?是能够并行的处理任务吗?
通常说的物理核心是的是cpu的颗数,还是一个cpu里的核心数?
希望老师能够简要地科普一二呀

写回答

2回答

求老仙

2021-03-16

介绍下,这个叫做HyperThreading 技术, 让一个核心可以同时执行多个线程。 并不是加速你的执行,或者让一个核心拥有2个核心的算力,而是现在操作系统中通常并发的线程太多了,多一些核用户体感更好。 

逻辑核心 = 物理核心 * 每个核心同时执行的线程

物理核心拥有独立的缓存,独立的CPU结构。逻辑核心只拥有独立的寄存器。等于CPU内部实现一个小型的并发控制设备。


2
3
iiiboy
回复
求老仙
no problem
2021-03-16
共3条回复

iiiboy

提问者

2021-03-16

6核12线程,是6个物理核心,12个虚拟核心

因为操作系统里看是有12个cpu的

那么cpu参数上的线程应该理解为一个cpu

这12个虚拟核心能够并行执行任务吗?

还是6个物理核心能够并行任务,每个物理核心虚拟出的两个核心是并发执行任务?

0
0

笑傲Java面试 剖析大厂高频面试真题 秒变offer收割机

深度剖析大厂面试高频真题,让你秒变offer收割机

1783 学习 · 314 问题

查看课程