<分区>
在我的 php 网站中,我调用了一个使用 theano 并在 GPU 上运行的 python 脚本。
但是,当从 php 调用此 python 脚本时,apache 似乎对 GPU 没有任何权限,因此程序退回到 CPU,与 GPU 相比,CPU 的效率要低得多。
如何授予 apache 在 GPU 上运行程序的权限?
<分区>
在我的 php 网站中,我调用了一个使用 theano 并在 GPU 上运行的 python 脚本。
但是,当从 php 调用此 python 脚本时,apache 似乎对 GPU 没有任何权限,因此程序退回到 CPU,与 GPU 相比,CPU 的效率要低得多。
如何授予 apache 在 GPU 上运行程序的权限?
最佳答案
我会把它分开,将需求作为事件保存在一些存储中(例如 redis 或者甚至是 rabbitmq),然后用一些守护进程的脚本来收听它(cron 会是一个糟糕的乐趣,因为它很难让它运行得比每一分钟)。该脚本将使用结果更新存储条目,您可以在 http 堆栈中再次访问它。您可以通过 ajax 实现功能或在 php 中使用 usleep 命令等待结果。如果使用 while 循环,请不要忘记在 1 秒后中断它,这样请求就不会运行太久。
您的问题可能是执行 php 二进制文件的已配置用户 - 它可能不允许访问您系统上的那些二进制文件。通常是 www-data 用户。通过将 www-data 用户添加到必要的组中,您可以在不拆分的情况下解决它。查看二进制文件的所有权和权限以找出答案。
关于php - 如何在 GPU 上启用 php 运行 python 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37110535/
相关文章:
php - 如何允许用户每天访问一个页面 3 次?(PHP & Mysql)
python curses - newwin 中的 .getch() 不起作用
python - Python中的 Mechanize 有什么替代品吗?
apache - 如何使用相同的 SSL 证书配置多个 <virtualhost> - Apache
php - 获取与表中另一个 ID 相关的 ID,然后使用该 ID 从另一个表中获取信息
php - Laravel Eloquent : belongsTo relationship - Error: Trying to get property of non-object