猿问
单机多进程做密集型科学计算靠谱吗?能节省时间吗…刚测试了下 ,发现并没用多大提升
1个CPU、4个核intel超线程技术,可看到8个核,但我只开4个进程,每个进程负责整个任务的四分之一的计算任务和单个进程,跑起来的效率怎么差不多呢?
梵蒂冈之花
浏览 455
回答 2
2回答
拉风的咖菲猫
先给个公式吧。所需线程数=CPU可用核心数/(1-阻塞系数)其中计算密集型阻塞系数趋向于0,IO密集趋向于1。具体需要通过实验来确定。所以,你现在这种情况。所需线程数=8/(1-0)=8,应该用8个线程来试试。而你这里只用了4个,虽然如此,性能还是应该比单线程要好,因为毕竟由4个核在分担计算量。但是,你却发现没有多大区别,我只能认为,你没有书写正确的多线程逻辑,造成名义上是多线程,实际上是串行的情况。
0
0
0
随时随地看视频
慕课网APP
相关分类
JavaScript
我要回答