lmnt-com / haste

Haste: a fast, simple, and open RNN library
Apache License 2.0
325 stars 27 forks source link

haste_tf\libhaste_tf.so not found #23

Open MichaelJanz opened 4 years ago

MichaelJanz commented 4 years ago

Hi, I tried to use haste for tf for testing reccurent_dropout. However, I got that error message while import haste_tf as haste

I am using Windows10 and Anaconda. I installed via pip.

Thats the stacktrace:

NotFoundError                             Traceback (most recent call last)
<ipython-input-1-9cc6bdc626a2> in <module>
----> 1 import haste_tf as haste
      2 import tensorflow as tf
      3 
      4 import tensorflow_addons as tfa
      5 from tensorflow import keras

~\anaconda3\envs\tf_nightly_env\lib\site-packages\haste_tf\__init__.py in <module>
     20 
     21 from ._version import __version__  # generated in setup.py
---> 22 from .gru import GRU
     23 from .gru_cell import GRUCell
     24 from .indrnn import IndRNN

~\anaconda3\envs\tf_nightly_env\lib\site-packages\haste_tf\gru.py in <module>
     30 
     31 
---> 32 LIB = tf.load_op_library(pkg_resources.resource_filename(__name__, 'libhaste_tf.so'))
     33 
     34 

~\anaconda3\envs\tf_nightly_env\lib\site-packages\tensorflow\python\framework\load_library.py in load_op_library(library_filename)
     56     RuntimeError: when unable to load the library or get the python wrappers.
     57   """
---> 58   lib_handle = py_tf.TF_LoadLibrary(library_filename)
     59   try:
     60     wrappers = _pywrap_python_op_gen.GetPythonWrappers(
PraljakReps commented 3 years ago

I have a very similar issue: I am using Windows 10 and an NVIDIA 2080 TI (above the 3.7+ compute capability). I am also using the TensorFlow version 2.3.1.

A better understanding of this issue would be helpful, or a possible solution or workaround would be great! Thanks

sharvil commented 3 years ago

The short answer is that the binaries on pip don't include Windows libraries so the import fails. You'll have to compile from source, but I can't guarantee that'll work. It was previously not possible to build TensorFlow + Windows + custom ops due to some TF bugs, and I'm not sure if the TF team has since fixed their build issues.

The other options are to use TensorFlow + Linux (if you must use TF) or PyTorch + Windows (if you must use Windows).