AI Engine-ML v2 Intrinsics User Guide  v2025.1
Loading...
Searching...
No Matches
Emulated Multiply-accumulate of Complex Float and Float datatypes

Elementwise operations based on the already emulated FP32 operations (see Emulated Multiply-accumulate of 32-bit Floating-Point). These operations might not have optimal performance. More...

Emulated vector complex float operations

v16caccfloat mul_elem_16 (v16float v1, v16cfloat v2)
 
v16caccfloat negmul_elem_16 (v16float v1, v16cfloat v2)
 
v16caccfloat mac_elem_16 (v16float v1, v16cfloat v2, v16caccfloat acc)
 
v16caccfloat msc_elem_16 (v16float v1, v16cfloat v2, v16caccfloat acc)
 
v16caccfloat mul_elem_16_conf (v16float v1, v16cfloat v2, int sub_mask, int sub_mul)
 
v16caccfloat negmul_elem_16_conf (v16float v1, v16cfloat v2, int sub_mask, int sub_mul)
 
v16caccfloat mac_elem_16_conf (v16float v1, v16cfloat v2, v16caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v16caccfloat msc_elem_16_conf (v16float v1, v16cfloat v2, v16caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v16caccfloat mul_elem_16 (v16cfloat v1, v16float v2)
 
v16caccfloat negmul_elem_16 (v16cfloat v1, v16float v2)
 
v16caccfloat mac_elem_16 (v16cfloat v1, v16float v2, v16caccfloat acc)
 
v16caccfloat msc_elem_16 (v16cfloat v1, v16float v2, v16caccfloat acc)
 
v16caccfloat mul_elem_16_conf (v16cfloat v1, v16float v2, int sub_mask, int sub_mul)
 
v16caccfloat negmul_elem_16_conf (v16cfloat v1, v16float v2, int sub_mask, int sub_mul)
 
v16caccfloat mac_elem_16_conf (v16cfloat v1, v16float v2, v16caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v16caccfloat msc_elem_16_conf (v16cfloat v1, v16float v2, v16caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v16caccfloat mul_elem_16 (v16cfloat v1, v16cfloat v2)
 
v16caccfloat negmul_elem_16 (v16cfloat v1, v16cfloat v2)
 
v16caccfloat mac_elem_16 (v16cfloat v1, v16cfloat v2, v16caccfloat acc)
 
v16caccfloat msc_elem_16 (v16cfloat v1, v16cfloat v2, v16caccfloat acc)
 
v16caccfloat mul_elem_16_conf (v16cfloat v1, v16cfloat v2, int sub_mask, int sub_mul)
 
v16caccfloat negmul_elem_16_conf (v16cfloat v1, v16cfloat v2, int sub_mask, int sub_mul)
 
v16caccfloat mac_elem_16_conf (v16cfloat v1, v16cfloat v2, v16caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v16caccfloat msc_elem_16_conf (v16cfloat v1, v16cfloat v2, v16caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v32caccfloat mul_elem_32 (v32float v1, v32cfloat v2)
 
v32caccfloat negmul_elem_32 (v32float v1, v32cfloat v2)
 
v32caccfloat mac_elem_32 (v32float v1, v32cfloat v2, v32caccfloat acc)
 
v32caccfloat msc_elem_32 (v32float v1, v32cfloat v2, v32caccfloat acc)
 
v32caccfloat mul_elem_32_conf (v32float v1, v32cfloat v2, int sub_mask, int sub_mul)
 
v32caccfloat negmul_elem_32_conf (v32float v1, v32cfloat v2, int sub_mask, int sub_mul)
 
v32caccfloat mac_elem_32_conf (v32float v1, v32cfloat v2, v32caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v32caccfloat msc_elem_32_conf (v32float v1, v32cfloat v2, v32caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v32caccfloat mul_elem_32 (v32cfloat v1, v32float v2)
 
v32caccfloat negmul_elem_32 (v32cfloat v1, v32float v2)
 
v32caccfloat mac_elem_32 (v32cfloat v1, v32float v2, v32caccfloat acc)
 
v32caccfloat msc_elem_32 (v32cfloat v1, v32float v2, v32caccfloat acc)
 
v32caccfloat mul_elem_32_conf (v32cfloat v1, v32float v2, int sub_mask, int sub_mul)
 
v32caccfloat negmul_elem_32_conf (v32cfloat v1, v32float v2, int sub_mask, int sub_mul)
 
v32caccfloat mac_elem_32_conf (v32cfloat v1, v32float v2, v32caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v32caccfloat msc_elem_32_conf (v32cfloat v1, v32float v2, v32caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v32caccfloat mul_elem_32 (v32cfloat v1, v32cfloat v2)
 
v32caccfloat negmul_elem_32 (v32cfloat v1, v32cfloat v2)
 
v32caccfloat mac_elem_32 (v32cfloat v1, v32cfloat v2, v32caccfloat acc)
 
v32caccfloat msc_elem_32 (v32cfloat v1, v32cfloat v2, v32caccfloat acc)
 
v32caccfloat mul_elem_32_conf (v32cfloat v1, v32cfloat v2, int sub_mask, int sub_mul)
 
v32caccfloat negmul_elem_32_conf (v32cfloat v1, v32cfloat v2, int sub_mask, int sub_mul)
 
v32caccfloat mac_elem_32_conf (v32cfloat v1, v32cfloat v2, v32caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 
v32caccfloat msc_elem_32_conf (v32cfloat v1, v32cfloat v2, v32caccfloat acc, int zero_acc, int sub_mask, int sub_mul, int sub_acc1)
 

Detailed Description

Elementwise operations based on the already emulated FP32 operations (see Emulated Multiply-accumulate of 32-bit Floating-Point). These operations might not have optimal performance.

For an explanation how these operations works and the different accuracies provided, please refer to Multiply Accumulate.

Function Documentation

◆ mac_elem_16() [1/3]

v16caccfloat mac_elem_16 ( v16cfloat v1,
v16cfloat v2,
v16caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_16() [2/3]

v16caccfloat mac_elem_16 ( v16cfloat v1,
v16float v2,
v16caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_16() [3/3]

v16caccfloat mac_elem_16 ( v16float v1,
v16cfloat v2,
v16caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_16_conf() [1/3]

v16caccfloat mac_elem_16_conf ( v16cfloat v1,
v16cfloat v2,
v16caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_16_conf() [2/3]

v16caccfloat mac_elem_16_conf ( v16cfloat v1,
v16float v2,
v16caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_16_conf() [3/3]

v16caccfloat mac_elem_16_conf ( v16float v1,
v16cfloat v2,
v16caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_32() [1/3]

v32caccfloat mac_elem_32 ( v32cfloat v1,
v32cfloat v2,
v32caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_32() [2/3]

v32caccfloat mac_elem_32 ( v32cfloat v1,
v32float v2,
v32caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_32() [3/3]

v32caccfloat mac_elem_32 ( v32float v1,
v32cfloat v2,
v32caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_32_conf() [1/3]

v32caccfloat mac_elem_32_conf ( v32cfloat v1,
v32cfloat v2,
v32caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_32_conf() [2/3]

v32caccfloat mac_elem_32_conf ( v32cfloat v1,
v32float v2,
v32caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mac_elem_32_conf() [3/3]

v32caccfloat mac_elem_32_conf ( v32float v1,
v32cfloat v2,
v32caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_16() [1/3]

v16caccfloat msc_elem_16 ( v16cfloat v1,
v16cfloat v2,
v16caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_16() [2/3]

v16caccfloat msc_elem_16 ( v16cfloat v1,
v16float v2,
v16caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_16() [3/3]

v16caccfloat msc_elem_16 ( v16float v1,
v16cfloat v2,
v16caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_16_conf() [1/3]

v16caccfloat msc_elem_16_conf ( v16cfloat v1,
v16cfloat v2,
v16caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_16_conf() [2/3]

v16caccfloat msc_elem_16_conf ( v16cfloat v1,
v16float v2,
v16caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_16_conf() [3/3]

v16caccfloat msc_elem_16_conf ( v16float v1,
v16cfloat v2,
v16caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_32() [1/3]

v32caccfloat msc_elem_32 ( v32cfloat v1,
v32cfloat v2,
v32caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_32() [2/3]

v32caccfloat msc_elem_32 ( v32cfloat v1,
v32float v2,
v32caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_32() [3/3]

v32caccfloat msc_elem_32 ( v32float v1,
v32cfloat v2,
v32caccfloat acc )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_32_conf() [1/3]

v32caccfloat msc_elem_32_conf ( v32cfloat v1,
v32cfloat v2,
v32caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_32_conf() [2/3]

v32caccfloat msc_elem_32_conf ( v32cfloat v1,
v32float v2,
v32caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ msc_elem_32_conf() [3/3]

v32caccfloat msc_elem_32_conf ( v32float v1,
v32cfloat v2,
v32caccfloat acc,
int zero_acc,
int sub_mask,
int sub_mul,
int sub_acc1 )
Parameters
v1Matrix A
v2Matrix B
accAccumulator 1 input
Returns
Result of operation

◆ mul_elem_16() [1/3]

v16caccfloat mul_elem_16 ( v16cfloat v1,
v16cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_16() [2/3]

v16caccfloat mul_elem_16 ( v16cfloat v1,
v16float v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_16() [3/3]

v16caccfloat mul_elem_16 ( v16float v1,
v16cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_16_conf() [1/3]

v16caccfloat mul_elem_16_conf ( v16cfloat v1,
v16cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_16_conf() [2/3]

v16caccfloat mul_elem_16_conf ( v16cfloat v1,
v16float v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_16_conf() [3/3]

v16caccfloat mul_elem_16_conf ( v16float v1,
v16cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_32() [1/3]

v32caccfloat mul_elem_32 ( v32cfloat v1,
v32cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_32() [2/3]

v32caccfloat mul_elem_32 ( v32cfloat v1,
v32float v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_32() [3/3]

v32caccfloat mul_elem_32 ( v32float v1,
v32cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_32_conf() [1/3]

v32caccfloat mul_elem_32_conf ( v32cfloat v1,
v32cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_32_conf() [2/3]

v32caccfloat mul_elem_32_conf ( v32cfloat v1,
v32float v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ mul_elem_32_conf() [3/3]

v32caccfloat mul_elem_32_conf ( v32float v1,
v32cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_16() [1/3]

v16caccfloat negmul_elem_16 ( v16cfloat v1,
v16cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_16() [2/3]

v16caccfloat negmul_elem_16 ( v16cfloat v1,
v16float v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_16() [3/3]

v16caccfloat negmul_elem_16 ( v16float v1,
v16cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_16_conf() [1/3]

v16caccfloat negmul_elem_16_conf ( v16cfloat v1,
v16cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_16_conf() [2/3]

v16caccfloat negmul_elem_16_conf ( v16cfloat v1,
v16float v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_16_conf() [3/3]

v16caccfloat negmul_elem_16_conf ( v16float v1,
v16cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_32() [1/3]

v32caccfloat negmul_elem_32 ( v32cfloat v1,
v32cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_32() [2/3]

v32caccfloat negmul_elem_32 ( v32cfloat v1,
v32float v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_32() [3/3]

v32caccfloat negmul_elem_32 ( v32float v1,
v32cfloat v2 )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_32_conf() [1/3]

v32caccfloat negmul_elem_32_conf ( v32cfloat v1,
v32cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_32_conf() [2/3]

v32caccfloat negmul_elem_32_conf ( v32cfloat v1,
v32float v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation

◆ negmul_elem_32_conf() [3/3]

v32caccfloat negmul_elem_32_conf ( v32float v1,
v32cfloat v2,
int sub_mask,
int sub_mul )
Parameters
v1Matrix A
v2Matrix B
Returns
Result of operation