【发布时间】:2010-12-18 04:38:31
【问题描述】:
如果我要在 c++ 中编写几个类,然后使用 swig 进行转换,以便我以后可以在 python 中使用它们,它们会比我在 python 中完全重写它们运行得更快还是更慢?还是没有明显的速度差异?
【问题讨论】:
-
视情况而定。您可以进行一些测试/测量或详细描述您的课程。编写好的 C++ 类可以比 python 快几十个。有时,好的 python JIT 可以胜过糟糕的 C++ 代码。包装器本身非常快。
-
那么包装器提供了相对原生的速度?它不会影响任何性能?
-
对于简单对象的开销会相当小,而对于大数据结构来说开销会增加,大数据结构必须在包装器中逐个元素地从一种格式复制到另一种格式。
标签: c++ python performance swig