2016-11-29 65 views
2

我试图将取决于numpyscipypandasscikit-learn到AWS LAMBDA一个项目,但我有在Linux上编译大型.so文件的麻烦。在Linux编译时总包大小超过320MB,而它仅在OS X 215MB为什么Amazon Linux上的.so文件比OS X上的大5倍?

scipy/sparse/_sparsetools.so是Linux 40MB,而它小于5MB在OSX上,例如。)

两个问题:

1)为什么AML和OS X的文件大小如此不同?

2)我可以在S3中存储这些.so文件,并在运行时将它们下载到我的Lambda函数中吗?

+3

我认为它包含调试信息。尝试'剥离scipy /稀疏/ _sparsetools.so' –

回答

0

我有同样的情况。 @Ipor Sircer已经评论了为什么它更大,所以我想分享如何减小尺寸。所以,你可能需要阅读以下内容:

https://serverlesscode.com/post/deploy-scikitlearn-on-lamba/

但是,这篇文章是不够的,解决这个问题对我来说。此外,你需要避免使用预编译包带滚轮,这在下面的链接:

https://github.com/ryansb/sklearn-build-lambda/pull/3/files

然后,你会得到你的lambda函数较小的一个。

相关问题