Parallel processing 带有FPU的计算机在Flynn和x27中是如何分类的;什么是分类学?

Parallel processing 带有FPU的计算机在Flynn和x27中是如何分类的;什么是分类学?,parallel-processing,computer-science,cpu-architecture,Parallel Processing,Computer Science,Cpu Architecture,在弗林的分类法中,带有FPU的计算机是如何分类的?如果机器有单核CPU,但也有FPU,这是SISD还是SIMD?您的FPU也是矢量单元,还是一条FPU指令只导致一次浮点操作?(或者一个FMA=2次失败;这仍然是SISD,因为只有一个结果,而不是多个并行结果) 在许多现代CPU上,“FPU”是包含SIMD矢量单元的硬件的简称 一条指令只会触发整数寄存器或FPU中的计算;那不是SIMD。(除非是SIMD矢量指令。) 超标量(每个周期有多个指令)也不是SIMD;甚至不是MIMD。前导的S指的是指令流

在弗林的分类法中,带有FPU的计算机是如何分类的?如果机器有单核CPU,但也有FPU,这是SISD还是SIMD?

您的FPU也是矢量单元,还是一条FPU指令只导致一次浮点操作?(或者一个FMA=2次失败;这仍然是SISD,因为只有一个结果,而不是多个并行结果)

在许多现代CPU上,“FPU”是包含SIMD矢量单元的硬件的简称


一条指令只会触发整数寄存器或FPU中的计算;那不是SIMD。(除非是SIMD矢量指令。)


超标量(每个周期有多个指令)也不是SIMD;甚至不是MIMD。前导的S指的是指令流,因此查找和利用ILP从单个线程每周期运行多条指令并不是分类法所涵盖的内容。(除了SIMD宽度之外,它是单线程性能的另一个主要方面。)

您的FPU也是矢量单元,还是一条FPU指令只导致一个浮点操作?(或者一个FMA=2次失败;这仍然是SISD,因为只有一个结果,而不是多个并行结果)

在许多现代CPU上,“FPU”是包含SIMD矢量单元的硬件的简称


一条指令只会触发整数寄存器或FPU中的计算;那不是SIMD。(除非是SIMD矢量指令。)


超标量(每个周期有多个指令)也不是SIMD;甚至不是MIMD。前导的S指的是指令流,因此查找和利用ILP从单个线程每周期运行多条指令并不是分类法所涵盖的内容。(除了SIMD宽度,它是单线程性能的另一个主要维度。)

关于最后一行:根据“在Flynn的分类法中,单核超标量处理器被归类为SISD处理器(单指令流、单数据流),尽管许多超标量处理器支持短向量运算,因此可以归类为SIMD(单指令流,多数据流)。多核超标量处理器被归类为MIMD处理器(多指令流,多数据流)。“谢谢。如果那台机器有x86体系结构呢?它改变了什么吗?@mazurro:x86在所有支持MMX及更高版本的CPU中的FPU中都内置了SIMD,实际上隐藏了x87寄存器。现代x86使用SIMD向量寄存器的低位元素进行标量浮点运算,
xmm
(SSE和SSE2,x86-64的基线)。所以无论如何,不,这不会改变任何事情,我的答案已经涵盖了支持SIMD的FPU的情况,我在编写它时考虑了x86。关于最后一行:根据“在Flynn的分类法中,单核超标量处理器被归类为SISD处理器(单指令流,单数据流),尽管许多超标量处理器支持短向量运算,因此可以归类为SIMD(单指令流,多数据流)。多核超标量处理器被归类为MIMD处理器(多指令流,多数据流)。“谢谢。如果那台机器有x86体系结构呢?它改变了什么吗?@mazurro:x86在所有支持MMX及更高版本的CPU中的FPU中都内置了SIMD,实际上隐藏了x87寄存器。现代x86使用SIMD向量寄存器的低位元素进行标量浮点运算,
xmm
(SSE和SSE2,x86-64的基线)。所以无论如何,不,它不会改变任何事情,我的答案已经涵盖了支持SIMD的FPU的情况,我在编写它时考虑到了x86。