Table of Contents

Class OptimizationLevelExtensions

Namespace
DotCompute.Abstractions.Extensions
Assembly
DotCompute.Abstractions.dll

Extension methods for OptimizationLevel enum providing compiler-specific mappings.

public static class OptimizationLevelExtensions
Inheritance
OptimizationLevelExtensions
Inherited Members

Methods

GetCompilationTimeCost(OptimizationLevel)

Gets the relative compilation time cost for the optimization level.

public static double GetCompilationTimeCost(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level.

Returns

double

A relative compilation time multiplier (1.0 = baseline).

GetDescription(OptimizationLevel)

Gets a human-readable description of the optimization level.

public static string GetDescription(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level.

Returns

string

A descriptive string explaining the optimization level's characteristics.

GetPerformanceImprovement(OptimizationLevel)

Gets the expected performance improvement factor for the optimization level.

public static double GetPerformanceImprovement(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level.

Returns

double

A relative performance multiplier (1.0 = baseline unoptimized performance).

IsDebuggingFriendly(OptimizationLevel)

Determines if the optimization level is suitable for debugging.

public static bool IsDebuggingFriendly(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level.

Returns

bool

True if the level maintains good debuggability, false otherwise.

ToGccFlag(OptimizationLevel)

Converts OptimizationLevel to GCC/Clang compiler flags.

public static string ToGccFlag(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level to convert.

Returns

string

The corresponding GCC/Clang optimization flag.

ToLlvmPasses(OptimizationLevel)

Converts OptimizationLevel to LLVM opt passes.

public static string ToLlvmPasses(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level to convert.

Returns

string

The corresponding LLVM optimization pass specification.

ToMsvcFlag(OptimizationLevel)

Converts OptimizationLevel to MSVC compiler flags.

public static string ToMsvcFlag(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level to convert.

Returns

string

The corresponding MSVC optimization flag.

ToNvccFlag(OptimizationLevel)

Converts OptimizationLevel to NVCC compiler flags.

public static string ToNvccFlag(this OptimizationLevel level)

Parameters

level OptimizationLevel

The optimization level to convert.

Returns

string

The corresponding NVCC optimization flag.