Time: 20190925
在学习Python高性能编程技法前,需要先理解何为高性能Python,我们带着问题出发来思考:
- 计算机架构包含哪些元素?
- 常见计算机架构有哪些?
- 计算机架构在Python语言中的抽象表达是什么?
- 实现高性能的Python代码的障碍在哪里?
- 性能问题有哪些冲突?
在本书的开篇,为计算机编程是什么下了一个很简洁的定义:
计算机编程就是以特定的方式进行数据的移动和转换来得到某种结果。
是的,能被计算机纳入计算范畴的,一定是数字化的,一切的载体在于数据,表达的形式在于数据。输入、输出,都是数据。
数据到数据的转换需要时间开销。
由此可以引出第一个问题:什么是高性能编程。
高性能编程就是降低开销(写更高效的代码)或改变操作方式(寻找更优算法),让操作的代价最小化。
一、计算机系统的基本组成
三大部分:
- 计算单元
- 存储单元
- 计算和存储单元之间的连接
这三大部分有一些各自的属性:
- 计算单元属性:每秒能执行多少次计算
- 存储单元属性:
- 能保存多少数据
- 能以多快的速度读写数据
- 连接单元属性:能以多快的速度将数据从一个地方移动到另一个地方