一、什么是并行计算?
并行计算就是运用多个处理器(如core) 来解决一个问题。
二、并行计算和分布式计算的区别它们都会调用多个计算资源。但是它们的使用背景和场景不同。
并行计算:在解决一个大问题(如科学计算中的仿真模拟)时集中调用多个计算资源,强调的是尽可能提升计算资源的使用效率。(如超级计算机和微机集群,计算资源通常集中管理和调度)
分布式计算:强调的是资源的共享,资源的使用者可以通过分布式系统远程使用计算资源。(如云计算,数据中心可以分布在世界各地,通过网络完成资源共享)
三、为什么需要并行计算?
很简单,一台计算机解决不了的问题,用多台计算机来解决。并行计算可以大幅节约时间。
通过编写并行程序,来调度计算资源,使资源的使用效率达到最大。通常来说,我们不会在所有地方使用并行优化,那样会造成系统开销过大。我们需要对问题和程序进行分析,了解求解问题的瓶颈和症结在哪里,在特定的地方进行并行化优化。
四、并行计算的趋势单核->多核(Pthread,OpenMP)->分布式系统(MPI->MapReduce)-> GPU(CUDA,OpenCL)