Skip to content

OOM when compiling OpenCL kernel at runtime #819

Closed as not planned
Closed as not planned
@pranav-sivaraman

Description

@pranav-sivaraman

I'm currently running the Hashcat application in benchmark mode with the Intel OpenCL runtime. One of the kernels in the benchmark is causing the application to run out of memory (OOM).

When attaching to the process with GDB, I see that there are infinite calls to malloc during the kernel compilation process.

Build the application:

curl -L https://github.com/hashcat/hashcat/archive/refs/tags/v6.2.6.tar.gz | tar xz
cd hashcat-6.2.6 && make -j32

Setup OpenCL runtime

source /nas/sw/sdev/intel/oneapi/2024/v2.1/setvars.sh

Verify that Hashcat detects the OpenCL runtime:

hashcat -I

The output should be similar to this

hashcat (v6.2.6) starting in backend information mode

SYCL CPU RT Warning: Unknown host CPU.
OpenCL Info:
============

OpenCL Platform ID #1
  Vendor..: Intel(R) Corporation
  Name....: Intel(R) OpenCL
  Version.: OpenCL 3.0 LINUX

  Backend Device ID #1
    Type...........: CPU
    Vendor.ID......: 8
    Vendor.........: Intel(R) Corporation
    Name...........: AMD EPYC 9745 128-Core Processor
    Version........: OpenCL 3.0 (Build 0)
    Processor(s)...: 512
    Clock..........: 0
    Memory.Total...: 772978 MB (limited to 193244 MB allocatable in one block)
    Memory.Free....: 386457 MB
    Local.Memory...: 256 KB
    OpenCL.Version.: OpenCL C 3.0
    Driver.Version.: 2024.18.12.0.05_160000

Run the problem benchmark
./hashcat --benchmark -m 1500

Observations:

  • The issue occurs in all Intel OpenCL runtimes from version 2023.2 up to the latest 2025.0.4.
  • The problem does not occur with the OpenCL runtime version prior to 2023.2.
  • I have been able to successfully run this kernel using the POCL runtime, so I am confident that the issue is related to the Intel OpenCL runtime.

Please let me know if any further details are needed to help diagnose the issue.
Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions