当前位置: 首页 > article >正文

从一个简单的实际例子看并行处理

在不使用并行处理之前

假如我有一个很大的tif图片

我想算一下这张图片中有多少的像素点是黑色的,我可能会这么做:

def cnt_black(filename):
    img = tf.imread(filename)
    width, height, channels = img.shape
    cnt = 0
    for i in range(width):
        for j in range(height):
            r, g, b = img[i, j, 0], img[i, j, 1], img[i, j, 2]
            if r == 0 and g == 0 and b == 0:
                c_num += 1
    return cnt

这么遍历耗时很久,等待程序出结果的时间中我的耐心要消耗光了!

现在我们了解到,并行处理或许可以减少我们等待的时间。

什么是并行处理,它的底层硬件依赖什么?所有人的电脑都可以上这个方法吗?

并行处理的定义介绍见另一篇博客(待更新)

底层硬件:CPU or GPU?

并行处理依赖于硬件的多核。一般我们说并行处理都是指的在cpu上进行并行,因为cpu一般是单核运算,需要你指明多核进行并行处理。

而GPU本身是针对并行计算优化的硬件,它可以同时处理大量数据,因此天然支持并


http://www.kler.cn/a/158829.html

相关文章:

  • 5个有效的华为(HUAWEI)手机数据恢复方法
  • 【网络】什么是交换机?switch
  • 机器学习(基础2)
  • Http常⻅见请求/响应头content-type内容类型讲解(笔记)
  • 了解什么是Python(简介)
  • RabbitMQ的工作队列在Spring Boot中实现(详解常⽤的⼯作模式)
  • Python文件打包成exe可执行文件
  • Netty网络编程
  • [Java][项目][战斗逻辑]基于JFrame的文字游戏
  • centos7.5常见的mysql方式
  • springboot075电影评论网站系统设计与实现
  • Python的海龟 turtle 库使用详细介绍(画任意多边形,全网最详细)
  • Oracle:左连接、右连接、全外连接、(+)号详解
  • 实现Linux SSH免密码登录:使用密钥对进行身份验证
  • Python高级数据结构——树(Tree)
  • File类—递归文件搜索执行脚本文件
  • DFT(离散傅里叶变换)的通俗理解
  • NumPy中,数组的类型是 numpy.ndarray
  • YOLOv5项目实战(5)— 算法模型优化和服务器部署
  • Linux进程间通信之共享内存
  • 【C语言:自定义类型(结构体、位段、共用体、枚举)】
  • 语义分割网络-FCN全卷积网络
  • 安装获取mongodb
  • 【原创】提升MybatisPlus分页便捷性,制作一个属于自己的分页插件,让代码更加优雅
  • 面试问题--Linux网络编程
  • 【数据结构】二叉树的实现