dizcza/docker-hashcat

Issue CL_OUT_OF_HOST_MEMORY

adrastee opened this issue · 7 comments

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.

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.

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

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?

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

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

clBuildProgram(): CL_BUILD_PROGRAM_FAILURE

when running hashcat -b

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.

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.