我是一名C++程序员,热衷于并行计算和高性能计算应用,并且我很了解OpenMP。现在我正在学习Python,并掌握了基础知识。
作为提高Python技能的个人项目,我想实现Elkan k-means算法的并行版本。这个算法的C语言和OpenMP并行版本已经在VLFeat中实现。
现在,我知道如何轻松地在Python中实现Elkan算法...但是并行呢?OpenMP的好处在于,你可以将串行代码添加
我该如何在Python中实现类似的功能?或者我必须从头设计并行算法,即不先编写串行版本,然后再将其转换为并行版本,而是要显式地管理线程等(这非常痛苦)?
作为提高Python技能的个人项目,我想实现Elkan k-means算法的并行版本。这个算法的C语言和OpenMP并行版本已经在VLFeat中实现。
现在,我知道如何轻松地在Python中实现Elkan算法...但是并行呢?OpenMP的好处在于,你可以将串行代码添加
#pragma omp parallel for
,然后就可以并行运行了!我该如何在Python中实现类似的功能?或者我必须从头设计并行算法,即不先编写串行版本,然后再将其转换为并行版本,而是要显式地管理线程等(这非常痛苦)?