dizcza / docker-hashcat

Latest hashcat docker for CUDA, OpenCL, and POCL. Deployed on Vast.ai
MIT License
135 stars 37 forks source link

Issue CL_OUT_OF_HOST_MEMORY #4

Closed adrastee closed 4 years ago

adrastee commented 4 years ago

Hi, Using you docker file on Linux Ubuntu 18.04.1 LTS hashcat raise an issue:

$ hashcat -b hashcat (v5.1.0) starting in benchmark mode...

  • Device #1: WARNING! Kernel exec timeout is not disabled. This may cause "CL_OUT_OF_RESOURCES" or related errors. To disable the timeout, see: https://hashcat.net/q/timeoutpatch
  • Device #1: GeForce GTX 1080 Ti, 2794/11178 MB allocatable, 28MCU

Benchmark relevant options:

  • --optimized-kernel-enable

> clCreateContext(): CL_OUT_OF_HOST_MEMORY

According to some forums, the nvidia is not installed and/or outdated. In your DockerFile I cannot see any refernce to driver installation ?

Thanks.

dizcza commented 4 years ago

Hello,

Are you using my docker image https://hub.docker.com/repository/docker/dizcza/docker-hashcat or just copied the instructions from my Dockerfile to yours? I assume the former case. Then I assume you pulled latest tag and not intel-cpu. The latest tag is derived from official nvidia/opencl:runtime-ubuntu18.04. Here is the dockerfile https://gitlab.com/nvidia/container-images/opencl/blob/ubuntu18.04/runtime/Dockerfile. I don't have a GPU to test on. But the original nvidia's image has not been changed for a year and at that time I didn't experience any issues with my docker-hashcat image on a series of different GPUs.

Maybe, you need to update nvidia drivers, I'm not sure.

Try also my old tag nvidia-full (it's deprecated, but still should run):

docker pull dizcza/docker-hashcat:nvidia-full
nvidia-docker run -it dizcza/docker-hashcat:nvidia-full /bin/bash

If the issue remains, let me know and open a ticket on github/hashcat.

adrastee commented 4 years ago

I use https://hub.docker.com/r/dizcza/docker-hashcat With latest tag. I will test :nvidia-full tag.

adrastee commented 4 years ago

I confirm it works with full tag dizcza/docker-hashcat:nvidia-full

Weird isn't it? I don't know where I can see the differences between those 2 tags?

dizcza commented 4 years ago

Thank you for pointing this out, I thought nvidia knows how to install drivers better than me, that's why I switched to inherit their container. But now I see it's better to revert back.

There are a few lines missing in nvidia Dockerfile that I had. Check the commit I made with Nvidia Dockerfile. Please do the following:

  1. nvidia-docker run -it dizcza/docker-hashcat:latest /bin/bash
  2. (inside the container)
    
    echo "/usr/local/nvidia/lib" >> /etc/ld.so.conf.d/nvidia.conf && \
    echo "/usr/local/nvidia/lib64" >> /etc/ld.so.conf.d/nvidia.conf

export PATH=/usr/local/nvidia/bin:${PATH} export LD_LIBRARY_PATH=/usr/local/nvidia/lib:/usr/local/nvidia/lib64:${LD_LIBRARY_PATH}

export NVIDIA_DRIVER_CAPABILITIES=compute,utility

then check the hashcat

hashcat -b


and let me know if it worked
adrastee commented 4 years ago

Hi, I've ran 1) and 2) commands, an I now get this error :

clBuildProgram(): CL_BUILD_PROGRAM_FAILURE

when running hashcat -b

dizcza commented 4 years ago

Okay, thank you. Non-trivial. I better revert change to be exactly as in nvidia-full branch. I'll close the issue once I do this.

dizcza commented 4 years ago

I reverted the changes for latest to be exactly the same as in nvidia-full. Can you redownload the latest image once again and verify that it works (it might be slightly different due to updated linux packages). Before doing so, you need to remove the local latest image.