support

package
v0.0.0-...-af68625 Latest Latest
Warning

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

Go to latest
Published: May 11, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package support and its subpackages contains various supporting functionality for gomlx/compute that may be also useful for other users or GoMLX projects, as well as to other compute.Backend implementations.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DotGeneralFLOPs

func DotGeneralFLOPs(lhsShape shapes.Shape, lhsContractingAxes, lhsBatchAxes []int,
	rhsShape shapes.Shape, rhsContractingAxes, rhsBatchAxes []int) int

DotGeneralFLOPs estimates the number of FLOPs (Floating Point Operations) for a DotGeneral operation. It assumes that the operation is implemented as a matrix multiplication.

func DotGeneralFindSizes

func DotGeneralFindSizes(shape shapes.Shape, contractingAxes, batchAxes []int) (
	batchSize, crossSize, contractingSize int, crossDims []int)

DotGeneralFindSizes finds the combined sizes of the 3 types of axes that matter: batch, cross, and contracting dimensions for a DotGeneral operation

func TwoBitBucketLen

func TwoBitBucketLen(unpaddedLen int) int

TwoBitBucketLen returns the smallest size >= unpaddedLen that uses only the two highest bits (either 2^n or 1.5 * 2^n).

This is a more granular version of a NextPowerOfTwo function to use for bucketing strategies.

Types

This section is empty.

Directories

Path Synopsis
Package backendparser parses the compute interfaces (Backend, Builder, Function, etc.) and enumerate their methods.
Package backendparser parses the compute interfaces (Backend, Builder, Function, etc.) and enumerate their methods.
Package envutil provides utility functions for working with environment variables.
Package envutil provides utility functions for working with environment variables.
Package humanize provides human-readable representations of numbers, bytes, durations, speed (units/sec), etc.
Package humanize provides human-readable representations of numbers, bytes, durations, speed (units/sec), etc.
Package sets implement a set type as a `map[T]struct{}` but with better ergonomics.
Package sets implement a set type as a `map[T]struct{}` but with better ergonomics.
Package testutil provides utilities for testing a compute.Backend.
Package testutil provides utilities for testing a compute.Backend.
Package xslices provide missing functionality to the slices package.
Package xslices provide missing functionality to the slices package.
Package xsync implements some extra synchronization tools.
Package xsync implements some extra synchronization tools.

Jump to

Keyboard shortcuts

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