Я хочу запустить код pyCUDA на сервере flask
.Файл работает правильно, используя python3
, но завершается ошибкой, когда соответствующая функция вызывается с использованием flask
.
. Здесь приведен соответствующий код:
cudaFlask.py:
import pycuda.autoinit
import pycuda.driver as drv
import numpy
from pycuda.compiler import SourceModule
def cudaTest():
mod = SourceModule("""
int x = 4;
""")
print ("done")
return
if __name__ == "__main__":
cudaTest()
server.py (только часть, которая вызывает функцию):
@app.route('/bundle', methods=['POST'])
def bundle_edges():
cudaTest()
return "success"
При выполнении python cudaFlask.py
я получаю вывод done
, как и ожидалось, но при запуске сервера и выполнении запроса POST
в website/bundle
я получаю следующую ошибку на консоли колбы:
pycuda._driver.LogicError: cuModuleLoadDataEx failed: invalid device context -
в строке mod = SourceModule...
Где я иду не так?Существует аналогичный вопрос , но на него еще не ответили.