2017-08-14 2 views
0

小さなスタンドアロンプ​​ログラムに「コンパイル」したいNumPyスクリプトがありますので、AWS Lambdaで簡単に展開できます。私はPyInstallerを試しましたが、私のスクリプトにもかかわらず、NumPyのごく一部を使用しているにもかかわらず、終了プログラムは(500 MBのように)巨大です。いくつかの種類のNumPyとCのtranspilerがありますか?私は手動でTensorFlowでNumPyコードを書き直してから、XLA AOTを使用することを検討していますが、かなり面倒です。例えばNumPyスクリプトを小さなバイナリとしてデプロイする方法は?

main.py

import numpy as np 

x = np.array([1.0, 2.0, 3.0]) 
y = x * 2 

print(y) 

、その後578,5 MBのdistディレクトリにpyinstaller main.py結果を呼び出すと、以下の節約。

+0

[ここで私はあなたのために "numpyのCにtranspiler" をGoogleで検索](https://www.google.com/search?q=numpy+to+c+transpiler&ie=utf-8&oe=utf- 8) – saintsfan342000

+1

@ saintsfan342000:結果はかなり役に立ちません。 – Eric

+0

500MBが大変です - [この他の質問](https://stackoverflow.com/questions/38817817/pyinstaller-makes-my-4kb-python-program-163mb- is-this-normal)ははるかに多くのモジュールを使用しているように見えますが、わずか163mbにしかなりません。それ以外の何かがそれを膨らませていないと確信していますか? – Eric

答えて

1

http://nuitka.net/は、ポータブル配布用のNumPyスクリプトをコンパイルするのに最適です。単に:

pip install nuitka 
nuitka --standalone main.py 
関連する問題