mirror of
https://github.com/leejet/stable-diffusion.cpp.git
synced 2026-11-11 03:24:30 +00:00
47 lines
1.7 KiB
Plaintext
47 lines
1.7 KiB
Plaintext
#include "runtime.h"
|
|
|
|
#ifdef SD_CUDA_CUTE_ATTENTION
|
|
void sd_ggml_register_cuda_i8_gated_residual(ggml_backend_dev_t device);
|
|
void sd_ggml_register_cuda_i8_projection(ggml_backend_dev_t device);
|
|
void sd_ggml_register_cuda_attention(ggml_backend_dev_t device);
|
|
void sd_ggml_register_cuda_window_attention(ggml_backend_dev_t device);
|
|
#endif
|
|
|
|
namespace SD_CUDA_NAMESPACE {
|
|
void register_rope(ggml_backend_dev_t device);
|
|
void register_i8(ggml_backend_dev_t device);
|
|
void register_w4(ggml_backend_dev_t device);
|
|
void register_convrot(ggml_backend_dev_t device);
|
|
void register_affine(ggml_backend_dev_t device);
|
|
void register_modulate(ggml_backend_dev_t device);
|
|
void register_bf16(ggml_backend_dev_t device);
|
|
void register_rms_affine(ggml_backend_dev_t device);
|
|
#if !defined(SD_CUDA_VENDOR_HIP) && !defined(SD_CUDA_VENDOR_MUSA)
|
|
void register_sage_attention(ggml_backend_dev_t device);
|
|
void register_sol_attention(ggml_backend_dev_t device);
|
|
#endif
|
|
|
|
void register_extensions(ggml_backend_dev_t device) {
|
|
if (cuda_device_info(device).device < 0)
|
|
return;
|
|
register_affine(device);
|
|
register_modulate(device);
|
|
register_i8(device);
|
|
register_w4(device);
|
|
register_convrot(device);
|
|
register_rope(device);
|
|
register_bf16(device);
|
|
register_rms_affine(device);
|
|
#if !defined(SD_CUDA_VENDOR_HIP) && !defined(SD_CUDA_VENDOR_MUSA)
|
|
register_sage_attention(device);
|
|
register_sol_attention(device);
|
|
#endif
|
|
#ifdef SD_CUDA_CUTE_ATTENTION
|
|
sd_ggml_register_cuda_i8_projection(device);
|
|
sd_ggml_register_cuda_i8_gated_residual(device);
|
|
sd_ggml_register_cuda_attention(device);
|
|
sd_ggml_register_cuda_window_attention(device);
|
|
#endif
|
|
}
|
|
}
|