ROCmFABackend.h 723 B

12345678910111213141516171819202122232425262728293031
  1. #pragma once
  2. #include <c10/util/Exception.h>
  3. #include <ostream>
  4. #include <string>
  5. namespace at {
  6. enum class ROCmFABackend : int8_t { Default, AOTriton, Ck };
  7. inline std::string ROCmFABackendToString(at::ROCmFABackend backend) {
  8. switch (backend) {
  9. case ROCmFABackend::Default:
  10. return "at::ROCmFABackend::Default";
  11. case ROCmFABackend::AOTriton:
  12. return "at::ROCmFABackend::AOTriton";
  13. case ROCmFABackend::Ck:
  14. return "at::ROCmFABackend::Ck";
  15. default:
  16. TORCH_CHECK(false, "Unknown ROCm flash attention backend")
  17. }
  18. }
  19. inline std::ostream& operator<<(
  20. std::ostream& stream,
  21. at::ROCmFABackend backend) {
  22. return stream << ROCmFABackendToString(backend);
  23. }
  24. } // namespace at