'хло' Диалект

Клиент HLO Ops

Этот диалект содержит операции, которые тесно связаны с областью действия API XlaBuilder C++ API, где такие операции имеют семантику, выходящую за рамки того, что существует в диалектах нижнего уровня (таких как stablehlo ). По сути, всякий раз, когда клиентская библиотека использует синтаксический сахар или композицию нескольких операций для вызова API, этот диалект пытается смоделировать вызов API и предоставить шаблоны преобразования для полной материализации в диалектах более низкого уровня.

Операции

chlo._asin_acos_kernel (chlo::AsinAcosKernelOp)

Оператор AsinAcosKernel

Синтаксис:

operation ::= `chlo._asin_acos_kernel` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает AsinAcosKernel(operand) поэлементно.

If
  w = _asin_acos_kernel(z)
  w' = _asin_acos_kernel(I * z)
Then
  asin(z) = complex(atan2(z.real, w.real), sign(z.imag) * w.imag)
  acos(z) = complex(atan2(w.real, z.real), -sign(z.imag) * w.imag)
  asinh(z) = complex(sign(z.real) * w'.imag, atan2(z.imag, w'.real))
  acosh(z) = complex(w.imag, sign(z.imag) * atan2(w.real, z.real))

Эта операция используется в качестве промежуточного значения при декомпозиции и никогда не должна создаваться непосредственно платформами или использоваться серверными модулями.

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор комплексного типа с 32/64-битными значениями элементов с плавающей запятой

Результаты:

Результат Описание
result тензор комплексного типа с 32/64-битными значениями элементов с плавающей запятой

chlo.acos (chlo::AcosOp)

Оператор Акос

Синтаксис:

operation ::= `chlo.acos` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Acos(operand) поэлементно.

\[ \acos(x) = 2 * \atan(\sqrt(1 - x^2) / (1 + x)) if x != -1 = pi if x == -1 \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.acosh (chlo::AcoshOp)

Акошская операция

Синтаксис:

operation ::= `chlo.acosh` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Acosh(operand) поэлементно.

\[ \acosh(x) = log(x + sqrt(x^2 - 1)) if x >= -1 \acosh(x) = nan if x < -1 \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.asin (chlo::AsinOp)

Асин оператор

Синтаксис:

operation ::= `chlo.asin` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Asin(operand) поэлементно.

\[ \asin(x) = 2 * atan(x / (1 + sqrt(1 - x^2))) \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.asinh (chlo::AsinhOp)

Асинская операция

Синтаксис:

operation ::= `chlo.asinh` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Asinh(operand) поэлементно.

\[ \asinh(x) = log(x + sqrt(x^2 + 1)) \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.atan (chlo::AtanOp)

Атан оператор

Синтаксис:

operation ::= `chlo.atan` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Atan(operand) поэлементно.

\[ \atan(x) = \atan2(x, 1) \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.atanh (chlo::AtanhOp)

Атан оператор

Синтаксис:

operation ::= `chlo.atanh` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Atanh(operand) поэлементно.

\[ \atanh(x) = 0.5 * log((1 + x) / (1 - x)) if abs(x) <= 1 = nan otherwise \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.bessel_i1e (chlo::BesselI1eOp)

Функция Бесселя первого порядка

Синтаксис:

operation ::= `chlo.bessel_i1e` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает bessel_i1e(operand) поэлементно.

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.broadcast_add (chlo::BroadcastAddOp)

Оператор добавления (с возможностью трансляции)

Синтаксис:

operation ::= `chlo.broadcast_add` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs + rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , HLO_CompatibleOperandsAndResultElementType , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_and (chlo::BroadcastAndOp)

Логический и операторский (с возможностью трансляции)

Синтаксис:

operation ::= `chlo.broadcast_and` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает logical_and(lhs, rhs) поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Черты: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор логических или 2/4/8/16/32/64-битных целых значений
rhs тензор логических или 2/4/8/16/32/64-битных целых значений

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_atan2 (chlo::BroadcastAtan2Op)

Оператор Атан2 (с возможностью вещания)

Синтаксис:

operation ::= `chlo.broadcast_atan2` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает atan2(lhs/rhs) поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_compare (chlo::BroadcastCompareOp)

Оператор сравнения (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_compare` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Сравнивает lhs и rhs поэлементно в соответствии со comparison_direction и compare_type . Если не указано, то compare_type имеет значение FLOAT для типов элементов с плавающей запятой, SIGNED для типов элементов со знаком и UNSIGNED для типов элементов без знака.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_comparison_operations .

Черты: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64
comparison_direction ::mlir::chlo::ComparisonDirectionAttr Какую операцию сравнения выполнить.
compare_type ::mlir::chlo::ComparisonTypeAttr Какой тип сравнения использовать.

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор логических значений

chlo.broadcast_complex (chlo::BroadcastComplexOp)

Комплексный оператор (с возможностью вещания)

Синтаксис:

operation ::= `chlo.broadcast_complex` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Выполняет поэлементное преобразование пары вещественного и мнимого значений в комплексное значение.

Черты: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битных значений с плавающей запятой
rhs тензор 4/6/8/16/32/64-битных значений с плавающей запятой

Результаты:

Результат Описание
«безымянный» тензор комплексного типа с 32/64-битными значениями элементов с плавающей запятой

chlo.broadcast_divide (chlo::BroadcastDivOp)

Оператор подразделения (с возможностью вещания)

Синтаксис:

operation ::= `chlo.broadcast_divide` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs / rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_maximum (chlo::BroadcastMaxOp)

Максимальный оператор (с возможностью вещания)

Синтаксис:

operation ::= `chlo.broadcast_maximum` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает max(lhs, rhs) поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , HLO_CompatibleOperandsAndResultElementType , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_minimum (chlo::BroadcastMinOp)

Минимальный оператор (с возможностью вещания)

Синтаксис:

operation ::= `chlo.broadcast_minimum` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает min(lhs, rhs) поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , HLO_CompatibleOperandsAndResultElementType , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_multiply (chlo::BroadcastMulOp)

Оператор умножения (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_multiply` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs * rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_next_after (chlo::BroadcastNextAfterOp)

Оператор Std::nextafter (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_next_after` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает следующее представимое значение lhs в направлении rhs поэлементно. Он также может возвращать ненормальное число.

Эквивалент функции C++ std::nextafter.

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_or (chlo::BroadcastOrOp)

Логический или операторский (с возможностью трансляции)

Синтаксис:

operation ::= `chlo.broadcast_or` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает logical_or(lhs, rhs) поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор логических или 2/4/8/16/32/64-битных целых значений
rhs тензор логических или 2/4/8/16/32/64-битных целых значений

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_polygamma (chlo::BroadcastPolygammaOp)

Функция полигаммы (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_polygamma` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает Polygamma(operand, operand) поэлементно.

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_power (chlo::BroadcastPowOp)

Энергооператор (с возможностью вещания)

Синтаксис:

operation ::= `chlo.broadcast_power` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs ^ rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_remainder (chlo::BroadcastRemOp)

Оператор остатка (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_remainder` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs % rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_select (chlo::BroadcastSelectOp)

Выберите оператора (с дополнительной трансляцией в стиле numpy)

Синтаксис:

operation ::= `chlo.broadcast_select` $pred `,` $on_true `,` $on_false attr-dict `:`
              `(` type($pred) `,` type($on_true) `,` type($on_false) `)` `->` type(results)

Создает выходной массив из элементов двух входных массивов на основе значений массива предикатов.

См. https://www.tensorflow.org/xla/operation_semantics#select .

Черты: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
pred ранжированный тензор логических значений
on_true тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
on_false тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_shift_left (chlo::BroadcastShiftLeftOp)

Сдвиг влево оператора (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_shift_left` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs << rhs значение поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_shift_right_arithmetic (chlo::BroadcastShiftRightArithmeticOp)

Арифметический оператор сдвига вправо (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_shift_right_arithmetic` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs >> rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_shift_right_logical (chlo::BroadcastShiftRightLogicalOp)

Логический оператор сдвига вправо (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_shift_right_logical` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs >> rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_subtract (chlo::BroadcastSubOp)

Оператор вычитания (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_subtract` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает lhs - rhs поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси
rhs тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_xor (chlo::BroadcastXorOp)

Логический оператор xor (с дополнительной трансляцией)

Синтаксис:

operation ::= `chlo.broadcast_xor` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает logical_xor(lhs, rhs) поэлементно.

См. https://www.tensorflow.org/xla/operation_semantics#element-wise_binary_arithmetic_operations .

Черты: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , Commutative , HLO_BroadcastingElementwise , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор логических или 2/4/8/16/32/64-битных целых значений
rhs тензор логических или 2/4/8/16/32/64-битных целых значений

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.broadcast_zeta (chlo::BroadcastZetaOp)

Дзета-функция Гурвица

Синтаксис:

operation ::= `chlo.broadcast_zeta` $lhs `,` $rhs attr-dict `:`
              `(` type($lhs) `,` type($rhs) `)` `->` type(results)

Возвращает Zeta(operand, operand) поэлементно.

\[ \(\zeta(x, q) = \sum_{n=0}^{\infty} (q + n)^{-x}\) \]

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultElementType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
broadcast_dimensions ::mlir::DenseI64ArrayAttr Атрибут плотного массива i64

Операнды:

Операнд Описание
lhs тензор 4/6/8/16/32/64-битных значений с плавающей запятой
rhs тензор 4/6/8/16/32/64-битных значений с плавающей запятой

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битных значений с плавающей запятой

chlo.conj (chlo::ConjOp)

Оператор Conj

Синтаксис:

operation ::= `chlo.conj` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Conj(operand) поэлементно.

\[ \conj(x) = (\real(x), \neg(\imag(x))) \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.constant (chlo::ConstantOp)

Постоянный оператор

Синтаксис:

operation ::= `chlo.constant` attr-dict $value

Представляет постоянное значение.

Черты: AlwaysSpeculatableImplTrait , ConstantLike

Интерфейсы: ConditionallySpeculatable , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
value ::mlir::ElementsAttr постоянный атрибут вектора/тензора

Результаты:

Результат Описание
output статический тензор 4/6/8/16/32/64-битного типа float или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей запятой или целочисленными квантованными значениями для каждого тензора

chlo.constant_like (chlo::ConstantLikeOp)

Постоянный оператор Like

Возвращает константу знака той же формы, что и операнд.

Признаки: AlwaysSpeculatableImplTrait , CHLO_Broadcasting , HLO_BroadcastingElementwise , InferTensorType , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип МЛИР Описание
value ::mlir::TypedAttr Экземпляр TypedAttr

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

Результаты:

Результат Описание
«безымянный» тензор 4/6/8/16/32/64-битного типа с плавающей запятой или bool или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными элементами с плавающей точкой или целочисленными квантованными значениями для каждого тензора или целочисленными квантованными значениями для каждой оси

chlo.cosh (chlo::CashOp)

Кош-оператор

Синтаксис:

operation ::= `chlo.cosh` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Cosh(operand) поэлементно.

\[ \cosh(x) = (e^x + e^-x) / 2 \]

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

Результаты:

Результат Описание
result тензор 4/6/8/16/32/64-битного типа с плавающей точкой или комплексного типа с 32/64-битными значениями элементов с плавающей точкой

chlo.digamma (chlo::DigammaOp)

Дигамма-функция

Синтаксис:

operation ::= `chlo.digamma` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Digamma(operand) поэлементно.

Признаки: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand тензор 4/6/8/16/32/64-битных значений с плавающей запятой

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.erf (Chlo :: erfop)

Оператор ERFC

Синтаксис:

operation ::= `chlo.erf` $operand attr-dict `:` type($operand) `->` type($result)

Вычисляет функцию ошибки Gauss из элемента x .

erf (x) = erf_impl (x) if | x | <1 = 1 - erfc_impl (x) в противном случае

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.erf_inv (chlo :: erfinvop)

Обратный ERF

Синтаксис:

operation ::= `chlo.erf_inv` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает ErfInv(operand) по элементу.

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.erfc (chlo :: erfcop)

Оператор ERFC

Синтаксис:

operation ::= `chlo.erfc` $operand attr-dict `:` type($operand) `->` type($result)

Вычисляет аппроксимацию комплемента функции ошибки (1 - ERF (x)).

erfc (x) = erfc_impl (x) if | x | > 1 = 1 - erf_impl (x) в противном случае

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.is_inf (chlo :: isinfop)

ISINF предикат

Синтаксис:

operation ::= `chlo.is_inf` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает, если значение составляет +/- inf-элементы.

Черты: AlwaysSpeculatableImplTrait SpeculatableImpltrait, Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор значений Bool

chlo.is_neg_inf (chlo :: isneginfop)

ISneginf предикат

Синтаксис:

operation ::= `chlo.is_neg_inf` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает, если значение -Iinf в элементе.

Черты: AlwaysSpeculatableImplTrait SpeculatableImpltrait, Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор значений Bool

chlo.is_pos_inf (chlo :: isposinfop)

ISPOSINF PREDICET

Синтаксис:

operation ::= `chlo.is_pos_inf` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает, если значение- +inf-элемент.

Черты: AlwaysSpeculatableImplTrait SpeculatableImpltrait, Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор значений Bool

chlo.lgamma (Chlo :: lgammaop)

Функция Lgamma

Синтаксис:

operation ::= `chlo.lgamma` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Lgamma(operand) по элементу.

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.next_after (chlo :: nextafterop)

Std :: nextafter оператор

Синтаксис:

operation ::= `chlo.next_after` $x `,` $y attr-dict `:` type($x) `,` type($y) `->` type(results)

Возвращает следующее представительное значение x в направлении y , элементный. Это также может вернуть субнормальное число.

Эквивалент функции C ++ std :: nextafter.

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
x Тензор 4/6/8/16/32/64-битный поплавок
y Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.polygamma (chlo :: polygammaop)

Полигамма функция

Синтаксис:

operation ::= `chlo.polygamma` $n `,` $x attr-dict `:` type($n) `,` type($x) `->` type(results)

Возвращает Polygamma(operand, operand) .

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
n Тензор 4/6/8/16/32/64-битный поплавок
x Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

chlo.ragged_dot (chlo :: raggeddotop)

Вычисляет мамул по одному рваному измерению

Эта операция занимает три тензора ARGS --- LHS, RHS и GROUP_SIZES-и атрибут "RAGGED_DOT_DIMENSION_NUMBERS". Как и dot_general, LHS и RH разрешены произвольные партии и аспекты контрактов. Кроме того, LHS должен иметь одно рваное измерение, и RHS может иметь не более одного измерения группы. OP имеет три режима, в зависимости от вида рваного измерения LHS.

В режиме 1 подписью формы составляет [b,m,k], [g,b,k,n], [b,g] -> [b,m,n] . Здесь рваное измерение представляет собой неконтрагирующее измерение LHS ( m ). Размеры b и k представляют пакетные и контрактные размеры соответственно. RHS требуется для группового измерения ( g ).

В режиме 2 подписью формы равен [b,m,k], [b,k,n], [b,g] -> [g,b,m,n] . Здесь рваное измерение - это размер сжимания LHS/RHS ( k ).

В режиме 3 подписью формы составляет [b,m,k], [b,k,n], [g] -> [b,m,n] . Здесь рваное измерение представляет собой размещение партии LHS/RHS ( b ).

Черты: AlwaysSpeculatableImplTrait

Интерфейсы: ConditionallySpeculatable , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип Mlir Описание
ragged_dot_dimension_numbers :: mlir :: chlo :: RaggedDotDimensionNumbersAttr Приписывайте, что моделирует информацию о размерности для рваной точки.
precision_config :: mlir :: arrayattr Атрибут точного конфигурации

Операнды:

Операнд Описание
lhs Тензор 4/6/8/16/32/64-битного плавания или лопасти или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными плавучими элементами или на расстояние кванторов квантовые или на осевые квантовые значения
rhs Тензор 4/6/8/16/32/64-битного плавания или лопасти или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными плавучими элементами или на расстояние кванторов квантовые или на осевые квантовые значения
group_sizes Рейн-тензор 2/4/8/16/32/64-битного целочисленного целого числа

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битного плавания или лопасти или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными плавучими элементами или на расстояние кванторов квантовые или на осевые квантовые значения

chlo.sinh (Chlo :: sinhop)

Операция SINH

Синтаксис:

operation ::= `chlo.sinh` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Sinh(operand) .

\[ \sinh(x) = (e^x - e^-x) / 2 if |x| < 1 = e^(x + log(1/2)) - e^(-x + log(1/2)) otherwise. \]

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битного плавания или комплексного типа с 32/64-битными значениями с плавучими элементами

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битного плавания или комплексного типа с 32/64-битными значениями с плавучими элементами

chlo.square (chlo :: squareop)

Квадратная операция

Синтаксис:

operation ::= `chlo.square` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Square(operand) элементный.

\[ \square(x) = complex((x.real - x.imag) * (x.real + x.imag), x.real * x.imag * 2) if x is a complex number = x * x otherwise \]

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битного плавания или комплексного типа с 32/64-битными значениями с плавучими элементами

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битного плавания или комплексного типа с 32/64-битными значениями с плавучими элементами

chlo.tan (Chlo :: tanop)

Загар операция

Синтаксис:

operation ::= `chlo.tan` $operand attr-dict `:` type($operand) `->` type($result)

Возвращает Tan(operand) по элементу.

\[ \tan(x) = \sin(x) / \cos(x) \]

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType , Elementwise , SameOperandsAndResultShape

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битного плавания или комплексного типа с 32/64-битными значениями с плавучими элементами

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битного плавания или комплексного типа с 32/64-битными значениями с плавучими элементами

chlo.top_k (chlo :: topkop)

Находит значения и индексы k крупнейших элементов для последнего измерения

Синтаксис:

operation ::= `chlo.top_k` `(`$operand `,` `k` `=` $k`)` attr-dict `:`
              type($operand) `->` `(`type($values)`,` type($indices)`)`

Если вход является вектором (Rank-1), находит k самые большие записи в векторе и выводит их значения и индексы в качестве векторов. Таким образом, values[j] являются крупнейшей input записью j , а его индекс -это indices[j] .

Для матриц (соответствующий вход более высокого ранга) вычисляет верхние k записи в каждой строке (соответствующий вектор вдоль последнего измерения). Таким образом,

values.shape = indices.shape = input.shape[:-1] + [k]

Если два элемента равны, сначала появляется элемент нижнего индекса.

Черты: AlwaysSpeculatableImplTrait , InferTensorType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Атрибуты:

Атрибут Тип Mlir Описание
k :: mlir :: integerattr 64-разрядный значок не целочисленного атрибута

Операнды:

Операнд Описание
operand Тензор 4/6/8/16/32/64-битного плавания или лопасти или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными плавучими элементами или на расстояние кванторов квантовые или на осевые квантовые значения

Результаты:

Результат Описание
values Тензор 4/6/8/16/32/64-битного плавания или лопасти или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными плавучими элементами или на расстояние кванторов квантовые или на осевые квантовые значения
indices Тензор 4/6/8/16/32/64-битного плавания или лопасти или 2/4/8/16/32/64-битного целого или комплексного типа с 32/64-битными плавучими элементами или на расстояние кванторов квантовые или на осевые квантовые значения

chlo.zeta (chlo :: zetaop)

Hurwitz Zeta функция

Синтаксис:

operation ::= `chlo.zeta` $x `,` $q attr-dict `:` type($x) `,` type($q) `->` type(results)

Возвращает Zeta(operand, operand) .

\[ \(\zeta(x, q) = \sum_{n=0}^{\infty} (q + n)^{-x}\) \]

Черты: AlwaysSpeculatableImplTrait , CompatibleOperandsAndResultType

Интерфейсы: ConditionallySpeculatable , InferShapedTypeOpInterface , InferTypeOpInterface , NoMemoryEffect (MemoryEffectOpInterface)

Эффекты: MemoryEffects::Effect{}

Операнды:

Операнд Описание
x Тензор 4/6/8/16/32/64-битный поплавок
q Тензор 4/6/8/16/32/64-битный поплавок

Результаты:

Результат Описание
result Тензор 4/6/8/16/32/64-битный поплавок

Атрибуты

Сравнение RIERECTIONATTR

Какую операцию сравнения выполнить.

Синтаксис:

#chlo.comparison_direction<
  ::mlir::chlo::ComparisonDirection   # value
>

Параметры:

Параметр Тип C ++ Описание
ценить ::mlir::chlo::ComparisonDirection перечисление сравнения типа

Сравнение

Какой тип сравнения использовать.

Синтаксис:

#chlo.comparison_type<
  ::mlir::chlo::ComparisonType   # value
>

Параметры:

Параметр Тип C ++ Описание
ценить ::mlir::chlo::ComparisonType перечисление сравнения типа

Precisionattr

Xla точность для операнда. Имеет бэкэнд конкретный смысл.

Синтаксис:

#chlo.precision<
  ::mlir::chlo::Precision   # value
>

Параметры:

Параметр Тип C ++ Описание
ценить ::mlir::chlo::Precision перечисление точности типа

RaggedDotDimensionNumbersAttr

Приписывайте, что моделирует информацию о размерности для рваной точки.

Параметры:

Параметр Тип C ++ Описание
lhsbatchingdimensions ::llvm::ArrayRef<int64_t> Измерение
rhsbatchingdimensions ::llvm::ArrayRef<int64_t> Измерение
lhscontractingdimensions ::llvm::ArrayRef<int64_t> Измерение
RHSContractingDimensions ::llvm::ArrayRef<int64_t> Измерение
lhsraggeddimensions ::llvm::ArrayRef<int64_t> Измерение
rhsgroupdimensions ::llvm::ArrayRef<int64_t> Измерение

Перечисление

Сравнение

Какую операцию сравнения выполнить.

Случаи:

Символ Ценить Нить
Уравнение 0 Уравнение
СВ 1 СВ
GE 2 GE
ГТ 3 ГТ
ЛЕ 4 ЛЕ
LT 5 LT

Сравнение

Какой тип сравнения использовать.

Случаи:

Символ Ценить Нить
Notype 0 Notype
ПЛАВАТЬ 1 ПЛАВАТЬ
Тотальный заказ 2 Тотальный заказ
ПОДПИСАНО 3 ПОДПИСАНО
Без знака 4 Без знака

Точность

Xla точность для операнда. Имеет бэкэнд конкретный смысл.

Случаи:

Символ Ценить Нить
ПО УМОЛЧАНИЮ 0 ПО УМОЛЧАНИЮ
ВЫСОКИЙ 1 ВЫСОКИЙ
Самый высокий 2 Самый высокий