Parallel processing 通过并行性最大限度地提高处理速度

Parallel processing 通过并行性最大限度地提高处理速度,parallel-processing,big-o,Parallel Processing,Big O,在任何情况下,算法的并行化都会带来线性速度的提高吗?从理论角度来看,你能达到的最大值是线性加速比。 实际上,这是可能的。如果您可以将问题分散到一个可以利用处理器缓存效应的位置,例如,因为它不适合单个内核的缓存,那么您的问题可以比线性问题扩展得更好。从理论角度来看,您可以达到的最大值是线性加速比。 实际上,这是可能的。如果您可以将问题分散到一个可以利用处理器缓存效应的位置,例如,因为它不适合单个内核的缓存,那么您的问题可以比线性问题更好地扩展。理论上,不是-但实际上,这可能取决于底层硬件和您的特定

在任何情况下,算法的并行化都会带来线性速度的提高吗?

从理论角度来看,你能达到的最大值是线性加速比。
实际上,这是可能的。如果您可以将问题分散到一个可以利用处理器缓存效应的位置,例如,因为它不适合单个内核的缓存,那么您的问题可以比线性问题扩展得更好。

从理论角度来看,您可以达到的最大值是线性加速比。
实际上,这是可能的。如果您可以将问题分散到一个可以利用处理器缓存效应的位置,例如,因为它不适合单个内核的缓存,那么您的问题可以比线性问题更好地扩展。

理论上,不是-但实际上,这可能取决于底层硬件和您的特定问题。比较并行代码和顺序代码并非易事您必须将最快的顺序实现与并行实现进行比较,而不仅仅是在单个处理器/线程上运行的并行实现


但是,当有人谈论的不仅仅是线性加速时,我总是怀疑;他们要么没有正确地测量它(见上文),要么测量了依赖于硬件/操作系统的工件,并应相应地记录它,要么这只适用于问题/实现/硬件的特定组合。

理论上,没有-但在实践中,这可能取决于底层硬件和您的特定问题。比较并行代码和顺序代码并非易事您必须将最快的顺序实现与并行实现进行比较,而不仅仅是在单个处理器/线程上运行的并行实现

但是,当有人谈论的不仅仅是线性加速时,我总是怀疑;他们要么没有正确地测量它(见上文),要么测量了依赖于硬件/操作系统的工件,并应相应地记录它,要么这只适用于问题/实现/硬件的特定组合