JAVA并发编程-计算程序性能提升比率

并发编程的用途:
并发编程用途通常用于 图像处理服务端编程需要处理大量数据的情况下使用,其他领域下,并发编程对程序性能的提升几乎没有。
在开始计算之前,先了解一下基本的概念。
并发是在同一CPU下同时执行不同的任务,有操作系统来控制时间片。
并行是在多CPU情况下同时处理多个任务。
无障碍是指允许同时读取或写入数据,读取或写入期间数据发生变更,则认为是无效数据,回滚操作,直到拿到正确的数据为止。
无锁是指所有线程可以进入,但如果数据发发生被修改的情况,线程之间互相影响(如修改数据),则会严重影响程序性能。无锁必须满足无障碍的条件。并且保证有一个线程是必然能顺利执行的。
术语说明:
F代表串行比率
N代表处理器个数
加速比=优化前系统耗时/优化后系统耗时

优化结构展示
Amdahl定律(阿姆达尔定律)公式:
阿姆达尔定律
加速比=优化前系统耗时/优化后系统耗时=500/400=1.25
阿姆达定律认为增加CPU处理器的数量并不一定能起到有效的作用 提高系统内可并行化的模块比重,合理增加并行处 理器数量,才能以最小的投入,得到最大的加速比

Gustafson定律(古斯塔夫森定律)公式:
加速比 = N-F(N-1)
古斯塔夫森定律认为只要有足够的并行化,那么加速 比和CPU个数成正比

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值