向量处理器(Vector Processor)是一种能够对向量数据(一组有序数据)执行单条指令的处理器,属于 SIMD(单指令多数据流)架构。
核心思想:一条向量指令可以同时对一组数据元素执行相同操作。例如,一条向量加法指令可以同时完成 N 对元素的加法,而标量处理器需要 N 条独立的加法指令。
| 特性 | 说明 |
|---|---|
| 并行度 | 一条指令处理 N 个数据元素 |
| 优势 | 高吞吐率、低控制开销、高能效 |
| 劣势 | 只适合数据并行的计算模式 |
| 向量长度 | 由向量寄存器宽度决定,超出需分段处理 |
| 链接技术 | 前一条向量指令的结果可直接作为下一条的输入(类似旁路) |
| 向量处理器类型 | 代表 | 特点 |
|---|---|---|
| 存储器-存储器 | 早期 Cray | 操作数直接来自存储器 |
| 寄存器-寄存器 | 现代向量处理器 | 操作数在向量寄存器中 |
| 考法 | 解题套路 |
|---|---|
| 向量处理器的分类 | 属于 SIMD 架构,实现数据级并行 |
| 向量 vs 标量的性能对比 | 向量 N 次操作只需 1 条指令(忽略启动开销),标量需 N 条 |
| 向量链接技术 | 类似流水线旁路,减少数据依赖导致的停顿 |
| 向量长度寄存器 | 处理长度超过向量寄存器的数组时需要分段 |
| 计算向量指令的执行时间 | 启动时间 $+ N\times$ 单元素处理时间 |
↑ 以上为站内 HTML 相对链接(纯网页可浏览);本页右上「在 Obsidian 中打开」跳回源笔记。