Skip to content

Instantly share code, notes, and snippets.

@stellaraccident
Created June 6, 2021 23:22
Show Gist options
  • Save stellaraccident/6b4888e404fd1d90d3c1c20a478da77b to your computer and use it in GitHub Desktop.
Save stellaraccident/6b4888e404fd1d90d3c1c20a478da77b to your computer and use it in GitHub Desktop.
lists:
- &BACKENDS
- iree_llvmaot
- iree_vulkan
- &REF_BACKENDS
- tf
- &MATH_FUNCTIONS
- abs
- accumulate_n
- acos
- acosh
- add
- add_n
- angle
- argmax
- argmin
- asin
- asinh
- atan
- atan2
- atanh
- bessel_i0
- bessel_i0e
- bessel_i1
- bessel_i1e
- betainc
- bincount
- ceil
- confusion_matrix
- cos
- cosh
- count_nonzero
- cumprod
- cumsum
- cumulative_logsumexp
- digamma
- divide
- divide_no_nan
- equal
- erf
- erfc
- erfinv
- exp
- expm1
- floor
- floordiv
- floormod
- greater
- greater_equal
- igamma
- igammac
- imag
- in_top_k
- invert_permutation
- is_finite
- is_inf
- is_nan
- is_non_decreasing
- is_strictly_increasing
- lbeta
- less
- less_equal
- lgamma
- log
- log1p
- log_sigmoid
- log_softmax
- logical_and
- logical_not
- logical_or
- logical_xor
- maximum
- minimum
- mod
- multiply
- multiply_no_nan
- ndtri
- negative
- nextafter
- not_equal
- polygamma
- polyval
- pow
- real
- reciprocal
- reciprocal_no_nan
- reduce_all
- reduce_any
- reduce_euclidean_norm
- reduce_logsumexp
- reduce_max
- reduce_mean
- reduce_min
- reduce_prod
- reduce_std
- reduce_sum
- reduce_variance
- rint
- round
- rsqrt
- scalar_mul
- segment_max
- segment_mean
- segment_min
- segment_prod
- segment_sum
- sigmoid
- sign
- sin
- sinh
- sobol_sample
- softmax
- softplus
- softsign
- sqrt
- square
- squared_difference
- subtract
- tan
- tanh
- top_k
- truediv
- unsorted_segment_max
- unsorted_segment_mean
- unsorted_segment_min
- unsorted_segment_prod
- unsorted_segment_sqrt_n
- unsorted_segment_sum
- xdivy
- xlog1py
- xlogy
- zero_fraction
- zeta
- &UNIMPLEMENTED_MATH_FUNCTIONS
- acos
- argmax
- argmin
- asin
- atan
- atan2
- bessel_i0
- bessel_i0e
- bessel_i1
- bessel_i1e
- betainc
- bincount
- confusion_matrix
- count_nonzero
- cumprod
- cumsum
- cumulative_logsumexp
- divide
- erfinv
- igamma
- igammac
- in_top_k
- nextafter
- ndtri
- reduce_euclidean_norm
- reduce_prod
- segment_max
- segment_mean
- segment_min
- segment_prod
- segment_sum
- sobol_sample
- top_k
- unsorted_segment_max
- unsorted_segment_mean
- unsorted_segment_min
- unsorted_segment_prod
- unsorted_segment_sqrt_n
- unsorted_segment_sum
- &DYNDIMS_BROKEN_MATH_FUNCTIONS
- angle
- expm1
- imag
- invert_permutation
- is_non_decreasing
- is_strictly_increasing
- lbeta
- lgamma
- log1p
- log_sigmoid
- log_softmax
- reduce_all
- reduce_any
- reduce_logsumexp
- reduce_max
- reduce_mean
- reduce_min
- reduce_std
- reduce_sum
- reduce_variance
- softmax
- softplus
- xlog1py
- zero_fraction
- &VULKAN_BROKEN_MATH_FUNCTIONS
- asinh
- invert_permutation
- sign
- &VULKAN_DYNDIM_PASS_MATH_FUNCTIONS
- polygamma
- real
- scalar_mul
test_groups:
- id: "math_real_{backend}_vs_{ref_backend}_{function}_dyndims_{dyndims}"
runner:
- type: tfhost
main: math_test.py
args:
- "--functions={function}"
- "--target_backends={backend}"
- "--reference_backend={ref_backend}"
- "--dynamic_dims={dyndims}"
matrix:
backend: *BACKENDS
ref_backend: *REF_BACKENDS
function: *MATH_FUNCTIONS
dyndims: ["true", "false"]
xfail:
# Completely IREE-unimplemented math functions
- matrix.function: *UNIMPLEMENTED_MATH_FUNCTIONS
# Some functions are strictly broken with dyndims
- matrix.function: *DYNDIMS_BROKEN_MATH_FUNCTIONS
matrix.dyndims: "true"
# Vulkan is currently structurally broken with dyndims.
- matrix.backend: iree_vulkan
matrix.dyndims: "true"
# Some math functions are broken on vulkan.
- matrix.backend: iree_vulkan
matrix.function: *VULKAN_BROKEN_MATH_FUNCTIONS
xpass:
# Some dynamic dim functions pass on vulkan regardless of overall
# broken support.
- matrix.backend: iree_vulkan
matrix.function: *VULKAN_DYNDIM_PASS_MATH_FUNCTIONS
matrix.dyndims: "true"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment