Python笔记-计算密集型(最好用C)、IO密集型(最好用脚本)
来源:互联网 发布:糜烂网络上是什么意思 编辑:程序博客网 时间:2024/05/19 03:41
计算密集型
1、特点:要进行大量的计算,消耗CPU资源。比如计算圆周率、对视频进行高清解码等等,全靠CPU的运算能力。
2、计算密集型任务虽然也可以用多任务完成,但是任务越多,花在任务切换的时间就越多,CPU执行任务的效率就越低,所以,要最高效地利用CPU,计算密集型任务同时进行的数量应当等于CPU的核心数。
3、计算密集型任务由于主要消耗CPU资源,因此,代码运行效率至关重要。Python这样的脚本语言运行效率很低,完全不适合计算密集型任务。对于计算密集型任务,最好用C语言编写。
IO密集型
1、涉及到网络、磁盘IO的任务都是IO密集型任务。
2、特点:CPU消耗很少,任务的大部分时间都在等待IO操作完成(因为IO的速度远远低于CPU和内存的速度)。
3、对于IO密集型任务,任务越多,CPU效率越高,但也有一个限度。常见的大部分任务都是IO密集型任务,比如Web应用。
4、IO密集型任务执行期间,99%的时间都花在IO上,花在CPU上的时间很少,因此,用运行速度极快的C语言替换用Python这样运行速度极低的脚本语言,完全无法提升运行效率。对于IO密集型任务,最合适的语言就是开发效率最高(代码量最少)的语言,脚本语言是首选,C语言最差。
2 0
- Python笔记-计算密集型(最好用C)、IO密集型(最好用脚本)
- 计算密集型&IO密集型
- IO密集型vs计算密集型
- io密集型 和 cpu(计算密集型)
- 线程与进程 计算密集型 IO密集型
- Python的Threading多线程处理(IO密集型处理)
- IO密集型线程 CPU密集型线程
- CPU密集型和IO密集型的理解
- 浅谈Java两种并发类型——计算密集型与IO密集型
- 浅谈Java两种并发类型——计算密集型与IO密集型
- python CPU密集型对IO密集型 多进程更优于多线程 GIL
- python多线程在IO密集型情况下为什么会更快?
- 用MapReduce进行数据密集型文本处理 – 本地聚合(上)
- 用MapReduce进行数据密集型文本处理 – 本地聚合(下)
- 转:用MapReduce进行数据密集型文本处理 – 本地聚合(上)
- 转:用MapReduce进行数据密集型文本处理 – 本地聚合(下)
- spark模拟密集型计算任务
- nodejs 适用于IO密集型不适用CPU密集型
- 软件测试
- char、varchar、binary和varbinary的区别与联系
- centos7搭建harbor镜像仓库
- 基于AT91SAM9260的集中抄表系统解决方案
- ZLIB quazip (只能对ZIP进行解压,不能对RAR等其它的压缩文件解压)
- Python笔记-计算密集型(最好用C)、IO密集型(最好用脚本)
- linux使用mysql 在输入了mysql 之后出现 the programe can be found in the following packages
- Fedora-安装mysql-server
- Linux-文件夹权限授予某个用户
- mysql-导入导出sql脚本文件
- Fedora-设置开机启动进入命令行
- Vim常用命令小结
- 第7章 单例模式
- 视频入门概念