Python高性能计算

10 python multithreading

C和Fortran传统上用于高性能计算(使用线性代数,PDE求解器等).我注意到一些基于NumPy和SciPy的项目即将进入HPC.有些人认为Python(当然有修改)可能是下一个HPC语言.显然,Python可能不会取代这些语言,但可能会在它们周围添加一个友好的包装器.是否有资源证明/反驳这一假设?换句话说,崭露头角的HPC研究人员是否应该将Python添加到他们熟练掌握的语言列表中?如果有,为什么?

注意:这不是一个讨论问题,我要求你权衡语言的优缺点.我也不问你(在你看来)Python是否适合HPC.我要求提供调查此类索赔的参考资料(以学术论文,研讨会或基准的形式).

sho*_*app 1

我认为全局解释器锁是Python(以及其他动态语言(不是全部))不会用于HPC 的最大原因。从 Python 中删除 GIL 需要做大量的工作。

由于 GIL 强制开发人员使用进程进行并行计算(需要 IPC 或共享内存),因此 Python 并不是 HPC 的理想语言。 这篇文章是关于 GIL、Python、Python 替代品(如 Jython 和 IronPython)和 HPC 的有趣读物。