b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

对于多线程程序,单核cpu和多核cpu如何工作?

电脑杂谈  发布时间:2020-08-15 09:11:09  来源:网络整理

单核cpu 多线程的好处_4核8线程cpu_cpu几核几线程怎么看

1. 单核和多核CPU上多线程执行效率的探讨

a1: 多线程实际上是在单个CPU中按顺序执行的,但是系统可以帮助您切换该执行,但是它不是很快的(相反,是缓慢的)

如果有多个cpus,则可以同时在两个cpus中执行.........

a2: 在单核CPU上运行的多线程程序. 只能同时运行一个线程. 该系统可帮助您切换线程. 系统将时间片分配给每个线程以执行. 每个时间片约为10毫秒. 它似乎同时运行,但实际上每个线程都会运行一点,然后切换到其他线程以继续运行

效率不会提高

切换线程会增加开销

a3: #3F说的是正确的. 因此,不建议不要使用多线程,尤其是在单核CPU上.

单核cpu 多线程的好处_4核8线程cpu_cpu几核几线程怎么看

使用单核CPU时使用多线程. 通常,有线程在等待.

对于常见的进度条更新类型,可以简单地控制那些可以简单控制的类型(例如: 在循环中手动处理消息). 通常,不使用线程,这可以提高程序的性能. 并避免不必要的线程同步问题.

a4: 您可以尝试双核和三线程,但是准确性低于双线程!

对于相同的算法,CPU占用率为100%的最小线程数是最有效的. 如果CPU占用率很高,则最适合使用单核单线程,双核双线程,四核和四线程.

但是,为什么有时线程数超过CPU内核数会更快?原因是此类程序的单线程操作量不足以占用CPU的一个核心(例如,IO操作很多,IO相对较慢,这是程序的瓶颈)

a5: 使用多线程是在执行耗时的操作时,您需要等待返回结果. 这时,多线程可以提高程序的并发程度. 如果不需要等待并执行可以顺序完成的任务,那么使用多个线程就是一种浪费.

2. 谈论多核CPU,多线程和并行计算

4核8线程cpu_cpu几核几线程怎么看_单核cpu 多线程的好处

a1: CPU发展趋势

核心数将继续增加. 根据摩尔定律,由于单核性能提高的严重瓶颈问题,到2017年底和2018年初,普通台式PC有望达到24核(或16核和32线程). 我们如何应对这种突然增长在核心数上?编程还必须与时俱进. 作者大胆地预测,CPU内核之间的片上总线将以4路组连接: ),因为完全连接太复杂,并且单条总线还不够. 而且它应该是一个不对称的多核处理器,可以与多个DSP处理器或流处理器混合使用.

a2: 线程越多越好?何时需要使用多线程?

线程不得尽可能多. 线程切换也很昂贵. 添加线程时,增加的开销少于线程可以消除的阻塞时间,这是值得的.

自2.6内核以来,Linux为不同的内核提供了不同的线程进行处理. 从NT.4.0开始,Windows也支持此功能.

何时应使用多线程?应该在四种情况下对此进行讨论:

a. 多核CPU密集型任务. 这时,请尝试使用多线程来提高任务执行效率,例如加密和解密,数据压缩和解压缩(视频,音频,普通数据),否则只能加载一个核心,而其他核心则处于空闲状态

单核cpu 多线程的好处_4核8线程cpu_cpu几核几线程怎么看

b. 单核CPU密集型任务. 此时的任务已消耗了100%的CPU资源,并且没有必要也没有可能使用多线程来提高计算效率;相反,如果要进行人机交互,最好使用多线程,以防止用户无法与计算机交互. 继续.

c. 单核CPU-IO密集型任务,使用多线程是为了方便人机交互,

d. 更不用说多核CPU-IO密集型任务,原因与单核时相同.

4. 程序员需要掌握的技能/技术

(1)减少序列化代码以提高效率. 这是胡说八道.

(2)单个共享数据分发: 复制一个数据的多个副本,以便不同的线程可以同时访问它.

(3)负载平衡可以分为静态和动态. 有关详细信息,请参阅相关文献.

cpu几核几线程怎么看_单核cpu 多线程的好处_4核8线程cpu

3. 请问: CPU多核与应用程序多线程之间是什么关系?

a1: 多核意味着系统可以同时运行多个线程. 例如,双核可以同时执行两个线程. 单个内核一次只能执行一个线程.

a2: 我尝试了从192.168.0.1到192.169.0.255的ping程序

它是通过多线程完成的,发现单核计算机和多核计算机之间的性能差异大约是两倍.

a3: 多核对用户是透明的. 应该说,它对程序员是透明的. 您完全不必担心. 当您使用单核编程时,就可以了. 除非使用OpenMP进行编程,否则将使用很多限制. 您的上述测试不准确. 网络(主要是远程主机)在不同时间将具有不同的响应速度. 您应该在干净的本地计算机和相同的环境中进行测试. 但是,对于多线程多核要优于单核这还是可以肯定的. 简而言之,我们不必担心该程序在单核或多核上的并发问题.

a4: 多核是指具有多个核的CPU,并且多线程意味着程序具有同时执行的多个线程.

多核还需要使用多线程来利用.

类似地,多线程只能在多核上具有真正的优势.

在这方面,它对程序员不是透明的. 程序员可以控制程序/线程在哪个CPU(内核)上运行. 用户还可以控制程序在哪个内核上运行. 因此,多核和多线程对用户和程序员而言并不透明. 程序员必须了解这一知识. 为了使程序最大化机器的性能.

原始链接


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shoujiruanjian/article-299307-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...