加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 在单个核心机器上测试并行程序的性能

发布时间:2020-12-14 00:44:04 所属栏目:Linux 来源:网络整理
导读:我想在我编写的程序中开始使用并发(主要是为了好玩),但我没有多核系统,也很快就买不起.我运行 linux.有没有办法,例如使用虚拟机,将程序的多线程实现的性能与单线程版本进行比较,而不是在具有多个处理器或内核的硬件上实际运行它? 也就是说,我希望能够实现并
我想在我编写的程序中开始使用并发(主要是为了好玩),但我没有多核系统,也很快就买不起.我运行 linux.有没有办法,例如使用虚拟机,将程序的多线程实现的性能与单线程版本进行比较,而不是在具有多个处理器或内核的硬件上实际运行它?

也就是说,我希望能够实现并行算法,并且能够说,是的,这种多线程实现比单线程更好.

谢谢

解决方法

您无法在单个核心计算机上可靠地测试多线程程序.竞争条件将以非常不同的方式显示,甚至完全隐藏在单个核心机器上.表现会减少等.

如果您想了解如何编写多个线程,您可以在单个核心机器上执行第一步(即API的工作原理等).但是你必须在多核机器上进行测试,并且你很可能会看到你在单核机器上看不到的多核机器的故障.

根据我的经验,虚拟机对此没有任何帮助.他们引入了之前没有出现过的新bug,但是他们可以通过多个内核来模拟真正的并发性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读