Organize the dot op emitter a bit better; NFC
This CL pays down some technical debt around dot_op_emitter's organization. It - Extracts out a GetDotImplementationStrategy that decides the lowering strategy for a dot operation. Earlier this logic was scattered through the lowering code. - Removes calls to PotentiallyImplementedAsEigenDot. This is an implementation detail for dot_op_emitter and exposing it like this has aged poorly in the face of the various tiled LLVM IR lowerings we now have. Instead, we expose two more specific hooks: DotOperandsAndResultMustHaveRowMajorLayout and DotImplementationCanHandleTranspose. - Renames xla_enable_experimental_llvm_ir_gemm to xla_force_enable_experimental_llvm_ir_gemm since its behavior is that it enables the tiled LLVM IR GEMM even when it does not look profitable. Note: In parallel_task_assignment the call to PotentiallyImplementedAsEigenDot was redundant since we already check for non-loop fusions and dots. PiperOrigin-RevId: 228276282
Loading
Please sign in to comment