ultralytics / yolov5

YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
https://docs.ultralytics.com
GNU Affero General Public License v3.0
50.29k stars 16.24k forks source link

Illegal Instruction (Core dumped) Jetson Nano #10981

Closed aryanbarik closed 1 year ago

aryanbarik commented 1 year ago

Search before asking

Question

On the Jetson, I have yolov5 installed. It's able to run the example DeepStream Configuration for YOLOv5 shown in the NVIDIA Jetson tutorial. However, when I run python3 detect.py --weights yolov5s.pt --source 0 with my webcam plugged in I receive the message Illegal instruction (core dumped

Can anyone help me out?

Additional

No response

github-actions[bot] commented 1 year ago

👋 Hello @aryanbarik, thank you for your interest in YOLOv5 🚀! Please visit our ⭐️ Tutorials to get started, where you can find quickstart guides for simple tasks like Custom Data Training all the way to advanced concepts like Hyperparameter Evolution.

If this is a 🐛 Bug Report, please provide a minimum reproducible example to help us debug it.

If this is a custom training ❓ Question, please provide as much information as possible, including dataset image examples and training logs, and verify you are following our Tips for Best Training Results.

Requirements

Python>=3.7.0 with all requirements.txt installed including PyTorch>=1.7. To get started:

git clone https://github.com/ultralytics/yolov5  # clone
cd yolov5
pip install -r requirements.txt  # install

Environments

YOLOv5 may be run in any of the following up-to-date verified environments (with all dependencies including CUDA/CUDNN, Python and PyTorch preinstalled):

Status

YOLOv5 CI

If this badge is green, all YOLOv5 GitHub Actions Continuous Integration (CI) tests are currently passing. CI tests verify correct operation of YOLOv5 training, validation, inference, export and benchmarks on MacOS, Windows, and Ubuntu every 24 hours and on every commit.

Introducing YOLOv8 🚀

We're excited to announce the launch of our latest state-of-the-art (SOTA) object detection model for 2023 - YOLOv8 🚀!

Designed to be fast, accurate, and easy to use, YOLOv8 is an ideal choice for a wide range of object detection, image segmentation and image classification tasks. With YOLOv8, you'll be able to quickly and accurately detect objects in real-time, streamline your workflows, and achieve new levels of accuracy in your projects.

Check out our YOLOv8 Docs for details and get started with:

pip install ultralytics
aryanbarik commented 1 year ago

Seemed to work with sudo apt-get install -y python-numpy python3-numpy and then sudo apt update && sudo apt upgrade

Now we are getting a different error saying we are missing opencv

Denizzje commented 1 year ago

Did you run pip install -r requirements.txt in the yolov5 folder? That should install all the dependencies required such as OpenCV. Though I believe the Nano's python version (from Ubuntu 18.04 default) is no longer supported so you need to check if you are on 3.7 or above.

aryanbarik commented 1 year ago

I am on Python 3.6.9. How do I upgrade it to Python 3.7?

aqibriaz95 commented 1 year ago

The 'illegal instruction' could be due to an change in the getauxval(AT_HWCAP).

An attempt to read cpuid information from /sys/devices in the event that getauxval did not succeed. (OpenBLAS PRs 2952 and 3004)

export OPENBLAS_CORETYPE=ARMV8 (or whatever the actual hardware is) before launching python should hopefully get around this. For example:

OPENBLAS_CORETYPE=ARMV8 python

If you would like to make this export permanent, you should open your .bashrc file by typing on the terminal:

nano ~/.bashrc

Afterwards, just add "export OPENBLAS_CORETYPE=ARMV8" to the bottom of your .bashrc file, save/exit and reboot your system:

export OPENBLAS_CORETYPE=ARMV8

for more details look at:

[https://github.com/numpy/numpy/issues/18131 https://www.reddit.com/r/JetsonNano/comments/ktcyoh/illegal_instructioncore_dumped_error_on_jetson/]

glenn-jocher commented 11 months ago

@aqibriaz95 thanks for sharing this valuable information! Your explanation of the 'illegal instruction' issue and providing the solution for setting the OPENBLAS_CORETYPE to ARMV8 will certainly help others facing a similar problem on the Jetson Nano. Your contribution to the community is greatly appreciated! If you encounter any further issues or need assistance with anything else, feel free to ask! 👍

dariogonle commented 11 months ago

@glenn-jocher I have the same problem and this hasn't fixed it.

glenn-jocher commented 11 months ago

@dariogonle thanks for reaching out! It's possible that the issue might have a different root cause, and I'd like to assist you in resolving it. To help us narrow down the problem, could you please provide more details about your specific setup? Additionally, you can visit the Ultralytics YOLOv5 documentation at https://docs.ultralytics.com/yolov5/ for additional troubleshooting tips and configuration options.

808947 commented 10 months ago

Hi i have faced same trouble while trying do custom data training with yolov5 in jetson nano. But while running the code python3 train.py it show a error message [ illegal instruction (core dumped) ] how can i solve this? Please any help is appreciated.

Thanks in advance

Simon Jain Luiz

17018924700171482020226893351283

glenn-jocher commented 10 months ago

@808947 hi Simon, I appreciate your interest in using YOLOv5 on the Jetson Nano! The "illegal instruction (core dumped)" issue can be related to several factors such as CPU architecture compatibility and software dependencies. Have you had a chance to ensure that your Jetson Nano's Python version, dependencies, and OpenBLAS settings are all correctly configured as per the recommendations in the previous responses? Taking these steps might resolve the issue. If you need further assistance, feel free to reach out, and we'll work on finding a solution together. Wishing you success in your custom data training with YOLOv5!

808947 commented 10 months ago

Hi thank you for your response... When i try to run it in the directory without using any virtual environment it's shows another error as " ultralytics is missing " but i have followed the steps carefully. If i try to run it in virtual environment the error " illegal instruction (core dumped) occur". I checked the version of python it shows python 3.8, do you think that's the problem? Can you guide me do it properly with correct steps. I am using jetpack version 4.6

On Thu, 7 Dec 2023, 01:40 Glenn Jocher, @.***> wrote:

@808947 https://github.com/808947 hi Simon, I appreciate your interest in using YOLOv5 on the Jetson Nano! The "illegal instruction (core dumped)" issue can be related to several factors such as CPU architecture compatibility and software dependencies. Have you had a chance to ensure that your Jetson Nano's Python version, dependencies, and OpenBLAS settings are all correctly configured as per the recommendations in the previous responses? Taking these steps might resolve the issue. If you need further assistance, feel free to reach out, and we'll work on finding a solution together. Wishing you success in your custom data training with YOLOv5!

— Reply to this email directly, view it on GitHub https://github.com/ultralytics/yolov5/issues/10981#issuecomment-1843997618, or unsubscribe https://github.com/notifications/unsubscribe-auth/BEDDQBT4H2TCFQYDNIHU6EDYIEM7BAVCNFSM6AAAAAAU3CQUWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNBTHE4TONRRHA . You are receiving this because you were mentioned.Message ID: @.***>

glenn-jocher commented 10 months ago

@808947 It seems that the "ultralytics is missing" error might be related to the YOLOv5 installation within the specific environment. You can try reinstalling YOLOv5 within your virtual environment using the command pip install -U -r requirements.txt. This will ensure that all the necessary dependencies, including 'ultralytics', are installed. Regarding the "illegal instruction (core dumped)" error in the virtual environment, it's possible that this could be due to compatibility issues.

Python 3.8 should not cause an "illegal instruction" error as long as it is supported for your Jetson Nano's architecture. Make sure to follow the installation steps for YOLOv5 within the virtual environment mentioned in the YOLOv5 documentation. If you encounter any further issues, please feel free to let me know, and we can work through it together. Good luck and looking forward to your success with YOLOv5!

rsemihkoca commented 1 month ago

i think you should get rid of this ai bot. It did not help to resolve issues any way.

glenn-jocher commented 1 month ago

Thank you for your feedback. If you have specific issues or questions, please provide details, and I'll do my best to assist you.