Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support for ROCM (AMD GPUs) #99

Open
jredmondson opened this issue Dec 20, 2024 · 1 comment
Open

Add Support for ROCM (AMD GPUs) #99

jredmondson opened this issue Dec 20, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@jredmondson
Copy link

jredmondson commented Dec 20, 2024

Summary

Nvidia GPUs are ubiquitous in the market and darknet supports them well. However, it would be nice to have options in the AMD GPU market, which tends to be less expensive and often has more VRAM available for darknet training and usage than many of their Nvidia counterparts.

Though there are two options for non-Nvidia support (OpenCL and HIP/ROCM), the mapping between HIP and CUDA calls should be more of a one-to-one, and easier to support. Various papers/research surveys have also noted that OpenCL is generally slower (often by multiples like 2-8x, depending on operations).

In a hackathon, a group submitted a pull request to the old darknet repo with support for HIP. The integration was crude with #defines used to replace CUDA calls with direct HIP calls. It would be appreciated to review this pull request and/or tools that exist for CUDA->HIP porting to support modern AMD GPU optimizations so that the .weights models can be directly loaded onto the GPU without conversions to onnx.

Goals

  • Implement HIP/ROCM support in darknet for training and running weights models
  • Integrate HIP/ROCM compilation into the cmake build process
@jredmondson jredmondson added the enhancement New feature or request label Dec 20, 2024
@stephanecharette
Copy link
Collaborator

This will require the purchase of some AMD hardware, since I only have NVIDIA-based systems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants