Cython VS C性能比较?

前端之家收集整理的这篇文章主要介绍了Cython VS C性能比较?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用Cython来编写我的项目.

我的计划是在C中编写.dll,并通过Cython从Python调用它们.所以我可以拥有C的高计算性能,同时保持Python开发的简单性.

随着我走得更远,我有点困惑.据我所知,Cython将python代码包装成C.由于C具有更好的计算性能,因此性能得到了提高.我对此是否正确?

如果我在上面,那么是否有必要在C中编写.dll并从Python调用它以提高性能

如果我编写python代码并将其包装到C中,然后从Python调用它,它是否比调用用C语言编写的.dll更好?

解决方法

首先,让我解开你似乎有的一些误解.

>从另一个程序调用库将加快您的库.

不,不,不.这就像说“以一定的速度驾驶汽车比让F1赛车以同样的速度驾驶汽车”更为有意义.这没有任何意义.当Python加载你的库时,它会加载和处理它,类似于内核加载和处理它的方式(事实上,内核在Python的情况下也是如此).事实上,这种“双重加载”(这不是动态库的原始设计)可能会减慢您的库.我应该强调这是一个微小的差异,而不应该关注普通的程序员.

> Cython将Python代码“包装”到C中

它没有.它将python代码编译成C,然后将其编译成动态库,以便Python稍后加载.这可能会在某种程度上优化您的Python代码,并使您能够与原子C数据类型进行交互,并将Python的魔力放在首位.虽然这很酷,但它并没有给你的代码任何“神奇”的能力.

我还想补充一点,一些测试证明Java(滚动)实际上比C,C,Python和其他语言更快,因为JVM非常优化.这并不意味着你应该使用Java(因为它有其他问题),但它应该提供透视.

原文链接:https://www.f2er.com/c/118393.html

猜你在找的C&C++相关文章