我使用 numba 使用 autojit 装饰器来加速我的部分 Python 代码。测试通过并且 %timeit 表明代码确实被加速了。
第一次执行很慢,因为我认为 numba 正在编译代码。说得通。但是当我运行一组测试时,它们运行得非常慢,从我更改前大约 10 秒内的 10 次测试到 117 秒内的相同测试。似乎 numba 必须一次又一次地为每个测试单独编译。
我可以避免这种情况吗?我尝试在setUp
函数中运行一个简单的测试,认为可能会为所有测试编译一次函数,但这并没有显着改变运行时间。