为什么使用并行编程

自从计算系统进化以来,它们已经开始提供一个能使我们以并行的方式运行指定软件的独立的某部分的机制,从而提升响应速度以及一般的性能。此外,我们可以很容易的验证配备有多个处理器以及多核的机器。那么,为什么不利用这个架构呢?

在系统开发的所有情况下,从智能手机、平板电脑到研究中心的重型计算,并行编程都是现实的。并行编程的一个坚实的基础将允许开发人员优化一个应用的性能。这会增强用户体验以及计算资源的消费,从而减少完成复杂任务的处理时间。

举一个并行性的例子,让我们想象一个场景,在这个场景中,有一些任务,其中一个任务是从数据库中检索一些信息,而这个数据库规模又很大。再假如,这个应用还需要顺序执行,在这个应用中,这些任务必须以一定的逻辑顺序,一个接一个的执行。当用户请求数据时,在返回的数据没有结束之前,其它系统将一直被阻塞。然而,利用并行编程,我们将会创造一个新的worker来在数据库中查询信息,而不会阻塞这个应用的其它功能,从而提高它的使用。