2013-04-08 42 views
1

我想剖析用python寫成的Blender腳本。問題是,大部分運行時間都花在「內置方法調用」上,我不知道它是什麼。剖析蟒蛇腳本

有人可以告訴我這個方法做什麼或給我一些提示如何減少它的計算時間? CPROFILE的

示例輸出:

71193 function calls (63983 primitive calls) in 9.305 seconds 
... 
816 6.427 0.008 6.427 0.008 {built-in method call} 
... 

感謝。

+0

給[*此方法*](http://stackoverflow.com/a/4299378/23771)一試。 – 2013-04-08 18:34:42

回答

2

這些是對本地函數的調用,它們是用C/C++編寫的。所有對本地函數的調用顯然都是通過python運行時的call函數完成的。

要使用cProfile進一步剖析,您應該儘量避免深入研究call函數。對您的Python代碼進行模塊化,以便明確哪部分佔用大部分時間,同時忽略指向cProfile輸出中的本機代碼的行。

另一種方法是深入研究原生Blender源代碼,這很可能是您想要避免的,也不是您的案例中的最佳主意。