Problems installing the PySDF library with the bare metal installation

I am having problems with installing the PySDF library with the bare metal installation. It seems to install but when I very the installation it says that there is an import error.

ImportError: libsdf.so: cannot open shared object file: No such file or directory

For example when I install the PySDF library I get this output which suggests it was successful:

But when I test if the library is installed correctly by running the aneurysm example I get this error:

Or if I try and run the PINN that I built that uses STL file import

If anyone has any idea how to help that would be much appreciated. I feel like I’ve maybe made a simple mistake somewhere.

Thanks,
Ben

2 Likes

Have just seen that if using the SDF library with the bare metal version a Nvidia driver of 465.19 is required.
image

I am using google colab with a driver of 460.32.03. So I am assuming that this is the root of my issue.

1 Like

I had an error that pointed out to a bad gcc command. Installed gcc in the environment and it didn’t work. Installed cxx-container and it pysdf install was successful.

Hello, unfortunately we decided to pull the pysdf support for the bare metal installation because it became too cumbersome to maintain. This is reflected in the installation instructions. If the tessellated geometry module is required then we suggest using the Docker image. We are pushing now to have pysdf released as a separate library but don’t have any release date for this. In the mean time we are looking into a slower fallback option when pysdf is not installed.

Hi cabj, can you tell us how you did it?

I tried to install pysdf in my own docker Modulus 22.09 using the prev 21.06 version and egg mtd according to:

https://forums.developer.nvidia.com/t/pysdf-error-in-modulus-22-03/211327/6

and

https://forums.developer.nvidia.com/t/modulus-22-03-bare-metal-installation-no-module-named-easy-install/210970

The 2nd mtd seems to work but I still get errors:

root@e609ec7e21a6:/examples_2209/aneurysm# python aneurysm.py
[03:48:23] - JIT using the NVFuser TorchScript backend
[03:48:23] - JitManager: {'_enabled': True, '_arch_mode': <JitArchMode.ONLY_ACTIVATION: 1>, '_use_nvfuser': True, '_autograd_nodes': False}
[03:48:23] - GraphManager: {'_func_arch': False, '_debug': False, '_func_arch_allow_partial_hessian': True}
/opt/conda/lib/python3.8/site-packages/modulus-22.9-py3.8.egg/modulus/geometry/tessellation.py:90: RuntimeWarning: divide by zero encountered in true_divide
  np.full(x.shape, triangle_areas[index] / x.shape[0])
terminate called after throwing an instance of 'std::runtime_error'
  what():  Library not found
Aborted

Maybe your mtd can work.

don’t know what you did. But if you can import pysdf.sdf there should be no problem. We were running the bare metal with tessellation for 6-7 months. Now we have switched to Apptainer.