I have an error when using a function, what can I do?¶
If you encounter an unexpected error (coming from the source code), we recommend to first check that you are using the latest version of STATINF.
pip3 show statinf
If the version is not the latest one, please upgrade it.
pip3 install --upgrade statinf
If you still encounter the same error with the most recent version, please raise an issue.
Why is my GPU not recognized?¶
STATINF uses jax for the backend computations. By default, once installed GPU might not be enabled and computations will fall back on CPUs. This will be seen when importing STATINF, the below warning message may appear:
>>> from statinf.ml import MLP, Layer WARNING:absl:No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
You will need to install the updated version of jaxlib based on your cuda version. You can find your CUDA version with the command:
Based on the JAX documentation, run:
pip install --upgrade pip pip install --upgrade jax jaxlib==0.1.67+cuda111 -f https://storage.googleapis.com/jax-releases/jax_releases.html
Once installed, if when importing STATINF you see the error
RuntimeError: CUDA operation failed: cudaGetErrorString symbol not found, the problem will be coming from an incorrect version of cuda specified when upgrading jaxlib.
In that case, the JAX documentation suggests that for CUDA 11.1, 11.2, or 11.3, use
cuda111, for CUDA 11.0, use
cuda110, for CUDA 10.2, use
cuda102, for CUDA 10.1, use
See this issue for more details.