cuda

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2025 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BatchVectorAdd

func BatchVectorAdd(operations []BatchOperation) error

BatchVectorAdd performs multiple vector additions in a single GPU call

func CleanupCUDA

func CleanupCUDA()

CleanupCUDA cleans up CUDA resources

func FusedVectorMatrix

func FusedVectorMatrix(op *FusedOperation) error

FusedVectorMatrix performs both vector addition and matrix multiplication in a single kernel

func GetDeviceCount

func GetDeviceCount() int

GetDeviceCount returns the number of CUDA devices

func InitCUDA

func InitCUDA() error

InitCUDA initializes CUDA context and memory pool

func LegacyMatrixMultiply

func LegacyMatrixMultiply(a, b []float32, width int) ([]float32, error)

LegacyMatrixMultiply performs matrix multiplication using the original implementation

func LegacyVectorAdd

func LegacyVectorAdd(a, b []float32) ([]float32, error)

LegacyVectorAdd performs vector addition using the original implementation

func MatrixMultiply

func MatrixMultiply(a, b []float32, width int) ([]float32, error)

MatrixMultiply performs matrix multiplication using CUDA (uses original implementation for best performance)

func PrintDeviceInfo

func PrintDeviceInfo()

PrintDeviceInfo prints information about all CUDA devices

func VectorAdd

func VectorAdd(a, b []float32) ([]float32, error)

VectorAdd performs vector addition using CUDA (uses original implementation for best performance)

Types

type BatchOperation

type BatchOperation struct {
	VectorA []float32
	VectorB []float32
	Result  []float32
}

BatchOperation represents a batch of operations

type DeviceInfo

type DeviceInfo struct {
	Name     string
	MemoryMB int
	DeviceID int
}

DeviceInfo represents CUDA device information

func GetDeviceInfo

func GetDeviceInfo(deviceID int) (*DeviceInfo, error)

GetDeviceInfo returns information about a specific CUDA device

type FusedOperation

type FusedOperation struct {
	VectorA     []float32
	VectorB     []float32
	VectorC     []float32
	MatrixA     []float32
	MatrixB     []float32
	MatrixC     []float32
	MatrixWidth int
}

FusedOperation represents a combined vector and matrix operation

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL