主要观点:
- 讨论数据有用大小的限制,包括 32 位指针的 4gb 内存限制及 64 位指针的情况,如 WebAssembly 和 Win32 用 32 位指针,现代计算机多使用 64 位指针,64 位指针虽可寻址更多内存但也增加内存成本,v8 等采用指针压缩来减少成本,且存在 CPU 和内存的权衡。
- 以 4gb 限制为例,指出很多时候程序需要处理大于 4gb 的数据集时,因数据过大难以快速遍历,会以不同方式处理,如数据库利用索引结构管理大数据,图像编辑器通过 GPU 处理数据等,说明 32 位地址空间配合间接处理大数据的机制效果不错。
- 对比 DOS 时代 640kb 内存限制的笑话,指出 4gb 限制在过去 30 年能容纳大多数程序,这可能是缺乏想象力,很多限制与人类的时间、注意力等限制相关。
- 数据可视化中,即使有大量数据,也会通过统计工具将其总结为较小的表示形式,因为大脑处理信息的带宽限制了图表中有用数据的量,数据可视化软件不必特别快速处理大量数据对象。
- 对于认为应直接使用 64 位指针而无需考虑限制的观点进行反驳,指出在当前软件环境下,即使 64 位指针也有成本,实现者会努力降低其成本,并非倡导低限制是合理的,只是观察这些限制在实际中并非如预期那样具有很强的约束性。
关键信息:
- 32 位指针限制为 4gb 内存,64 位指针可寻址更多内存但成本增加。
- 程序处理大于 4gb 数据集时会改变方式,如数据库、图像编辑器等。
- 人类的时间、注意力等限制导致 4gb 限制在过去适用。
- 数据可视化中会总结数据为较小形式,软件不必快速处理大量数据对象。
- 反驳直接使用 64 位指针的观点,强调当前环境下仍需考虑成本。
重要细节:
- WebAssembly 和 Win32 使用 32 位指针及相关链接。
- 现代计算机使用 64 位指针及相关链接。
- 关于 WebAssembly 支持 64 位指针的权衡讨论。
- x86 从 i386 到 x86-64 升级的成本讨论。
- 数据库利用索引结构管理大数据的例子。
- 图像编辑器通过 GPU 处理数据的方式。
- 数据可视化中总结数据的方法,如股票图表的示例。
- 不同数据可视化库的特点,如 d3 的低性能 DOM 遍历。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。