Hi everybody,
After using ML capabilities in KNIME over the past years, I wanted to explore the options around Deep Learning. For that I wanted to use Keras and Tensorflow 2.
I downloaded the following example workflow for learning purposes: 02_Tensorflow2_Autoencoder_for_Fraud_Detection_Training
When opening the DL Python Network Learner node, I get the following output in the console (interesting part in bold):
2020-12-19 13:04:25.934827: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
2020-12-19 13:04:27.252656: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library nvcuda.dll
2020-12-19 13:04:27.276916: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1561] Found device 0 with properties:
pciBusID: 0000:2d:00.0 name: GeForce RTX 2060 SUPER computeCapability: 7.5
coreClock: 1.665GHz coreCount: 34 deviceMemorySize: 8.00GiB deviceMemoryBandwidth: 417.29GiB/s
2020-12-19 13:04:27.277119: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library cudart64_101.dll
2020-12-19 13:04:27.277696: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library âcublas64_10.dllâ; dlerror: cublas64_10.dll not found
2020-12-19 13:04:27.278189: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library âcufft64_10.dllâ; dlerror: cufft64_10.dll not found
2020-12-19 13:04:27.278664: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library âcurand64_10.dllâ; dlerror: curand64_10.dll not found
2020-12-19 13:04:27.279152: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library âcusolver64_10.dllâ; dlerror: cusolver64_10.dll not found
2020-12-19 13:04:27.279597: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library âcusparse64_10.dllâ; dlerror: cusparse64_10.dll not found
2020-12-19 13:04:27.280110: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library âcudnn64_7.dllâ; dlerror: cudnn64_7.dll not found
2020-12-19 13:04:27.280260: W tensorflow/core/common_runtime/gpu/gpu_device.cc:1598] Cannot dlopen some GPU libraries. Please make sure the missing libraries mentioned above are installed properly if you would like to use GPU. Follow the guide at Install TensorFlow with pip for how to download and setup the required libraries for your platform.
Skipping registering GPU devicesâŚ
2020-12-19 13:04:27.280687: I tensorflow/core/platform/cpu_feature_guard.cc:143] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
2020-12-19 13:04:27.288667: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x1cd7490ca10 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-12-19 13:04:27.288886: I tensorflow/compiler/xla/service/service.cc:176] StreamExecutor device (0): Host, Default Version
2020-12-19 13:04:27.289061: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1102] Device interconnect StreamExecutor with strength 1 edge matrix:
2020-12-19 13:04:27.289165: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1108]
WARNING:tensorflow:No training configuration found in save file, so the model was not compiled. Compile it manually.
When I run a test in the terminal within the same environment, the libraries are loaded correctly.
I am now wondering what I am missing.
Here is how I approached this so far:
-
Initially, I created a new environment via Anaconda Navigator and installed Keras and TensorFlow 2 manually. I also installed CUDA Toolkit and cuDNN and created the system variables.
-
After realising that the installed versions do not work with KNIME, I found the following manual and used the in-built functionality in KNIME to create the Python GPU environments with all the libraries. I also removed again the previous installed CUDA Toolkit, cuDNN and system variables as I understood from the manual that the python environment created by KNIME contains all that is needed.
It would be great if anybody has an idea about I am missing here.
Also, I am using KNIME Analytics Platform 4.3.
Cheers!
Evan