pystencils.backend.platforms.GenericVectorCpu#
- class pystencils.backend.platforms.GenericVectorCpu(ctx)#
Base class for CPU platforms with vectorization support through intrinsics.
- Parameters:
ctx (KernelCreationContext)
- abstract type_intrinsic(vector_type)#
Return the intrinsic vector type for the given generic vector type, or raise a
MaterializationError
if type is not supported.- Return type:
- Parameters:
vector_type (PsVectorType)
- abstract constant_intrinsic(c)#
Return an expression that initializes a constant vector, or raise a
MaterializationError
if not supported.- Return type:
- Parameters:
c (PsConstant)
- abstract op_intrinsic(expr, operands)#
Return an expression intrinsically invoking the given operation or raise a
MaterializationError
if not supported.- Return type:
- Parameters:
expr (PsExpression)
operands (Sequence[PsExpression])
- abstract math_func_intrinsic(expr, operands)#
Return an expression intrinsically invoking the given mathematical function or raise a
MaterializationError
if not supported.- Return type:
- Parameters:
expr (PsCall)
operands (Sequence[PsExpression])
- abstract vector_load(acc)#
Return an expression intrinsically performing a vector load, or raise a
MaterializationError
if not supported.- Return type:
- Parameters:
acc (PsVecMemAcc)
- abstract vector_store(acc, arg)#
Return an expression intrinsically performing a vector store, or raise a
MaterializationError
if not supported.- Return type:
- Parameters:
acc (PsVecMemAcc)
arg (PsExpression)