Urban-Analytics / RAMP-UA

https://urban-analytics.github.io/RAMP-UA/
MIT License
15 stars 10 forks source link

OpenCL: error: linker command failed with exit code 1 #288

Closed nickmalleson closed 3 years ago

nickmalleson commented 3 years ago

I was wondering if someone has any ideas about the following error. I've been trying to help @mfbenitezp with a problem he's having on a branch he's working on (https://github.com/Urban-Analytics/RAMP-UA/tree/master_FB) (adding nightclubs) but I think this probably nothing to do with @mfbenitezp 's modifications.

I can run the pyhton version OK, but if I run the opencl version I get this error early on (before the model starts running):

ld: library not found for -lm
error: linker command failed with exit code 1 (use -v to see invocation)
Final linking of kernel places_reset failed.
Abort trap: 6

I'm working on a mac (OS 11.3.1) and have not run the OpenCL version in a while, so it's possible that a change to my local configuration has caused the problem.

I did a bit of googling. This thread (https://developer.apple.com/forums/thread/666700 ) suggests setting some flags (LDFLAGS and LD_LIBRARY_PATH) which I tried but that didn't work.

I have had a problem in the past where the location of the OpenCL libraries changed and we needed to hard-code the correct path (the problem that fiona solved when upgrading to Big Sur) but I think this is a different issue.

I'm not sure how OpenCl works under the hood so am at a bit of a loss. Any ideas?

github-actions[bot] commented 3 years ago

Branch rory-improbable-issue-288 created!

github-actions[bot] commented 3 years ago

Branch mfbenitezp-issue-288 created!

github-actions[bot] commented 3 years ago

Branch Sparrow0hawk-issue-288 created!

rory-improbable commented 3 years ago

Hey @nickmalleson, I'm not sure what's causing this but I can definitley have a look into it. Just to be clear is this just an issue on your machine, or has anyone else experienced this?

ciupava commented 3 years ago

I would also like to give it a try.

mfbenitezp commented 3 years ago

Another issue I haven't been able to identify and its been preventing me to run the OpenCL version is this one /Users/fbenitez/opt/miniconda3/envs/ramp-ua/lib/python3.7/site-packages/pyopencl/cache.py:290: UserWarning: PyOpenCL encountered an invalid info file for cache key 5e8937953ec3411cca9adc114d86a988 % cache_key)

The exceptions shows up in along the line 72 in the simulator.py where the kernel is being loaded # Load the OpenCL kernel programs. And I have uninstall the ramp-ua env to get everything clean up., but so far nothing is working. I have a macOS Big Sur 11.3.1, with AMD Radeon Pro 5500M and Intel UHD Graphics 630.

nickmalleson commented 3 years ago

Thanks @rory-improbable , so far I have been the only one able to produce this error, but I think @ciupava is trying? I'm not sure what the specific issue might be with my machine.

mfbenitezp commented 3 years ago

Hi @nickmalleson @rory-improbable @ciupava I was able to run the model, using OC and the GUI. So far using the Master branch, which hasn't been possible for me till this point. What I did was reinstalling absolutely everything. I had Miniconda (don't know if that had an effect). So using r m -rf ~/miniconda r m -rf ~/miniconda ~/.condarc, and also manually removing some temp files. Then I installed Anaconda, clone the Repo in a folder where I have all permissions (Not OneDrive), and then install the requirements as it is describe in the README. Now I will try to run my branch that includes the new scenarios. I'll keep you all posted if something comes out.

nickmalleson commented 3 years ago

Quick update on this linker error. I've not been able to reproduce it on my (mac) laptop, and it may well disappear in a later OS update, or if I re-installed OpenCL. It might be interesting to try to resolve if we had more time, but I don't think it's something that it's worth @rory-improbable prioritising so I'm going to close this for now.