--- ./torch/csrc/distributed/c10d/GlooDeviceFactory.cpp_orig	2025-06-09 02:19:57.470131001 -0500
+++ ./torch/csrc/distributed/c10d/GlooDeviceFactory.cpp	2025-06-09 05:05:00.764264810 -0500
@@ -27,7 +27,7 @@
 #endif
 
 // On macOS, check that the uv transport is available.
-#ifdef __APPLE__
+#if defined(__APPLE__) || defined (_AIX)
 #if !GLOO_HAVE_TRANSPORT_UV
 #error "Expected the uv transport to be available on macOS."
 #endif
@@ -125,6 +125,7 @@
 // UV to `UV` for env "GLOO_DEVICE_TRANSPORT" override.
 C10_REGISTER_CREATOR(GlooDeviceRegistry, APPLE, makeUVDevice)
 C10_REGISTER_CREATOR(GlooDeviceRegistry, WIN32, makeUVDevice)
+C10_REGISTER_CREATOR(GlooDeviceRegistry, AIX, makeUVDevice)
 C10_REGISTER_CREATOR(GlooDeviceRegistry, UV, makeUVDevice)
 #endif
 
@@ -148,6 +149,10 @@
 
 #ifdef _WIN32
   return GlooDeviceRegistry()->Create("WIN32", interfaceName, hostName);
+#endif
+
+#ifdef _AIX
+  return GlooDeviceRegistry()->Create("AIX", interfaceName, hostName);
 #endif
 
   return nullptr;
