Hybrid Quantum and Classical Workload Management with Graph-based Scheduling
Este artículo presenta Fluence, un complemento de programador de Kubernetes que aprovecha la programación de grupo basada en grafos para resolver los desafíos únicos de orquestación de dos colas de las cargas de trabajo híbridas cuánticas-clásicas, reduciendo significativamente el tiempo de inactividad de los trabajadores, eliminando el desperdicio de recursos de los nodos y recortando costos al permitir una selección de dispositivos inteligente y consciente de las colas.
Artículo original bajo licencia CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo
Imagina que diriges una cocina masiva y de alta tecnología donde los chefs (computadoras clásicas) preparan platos complejos. Normalmente, solo necesitan ingredientes de la despensa. Pero ahora, has añadido un horno mágico y remoto (una computadora cuántica) que vive en otra ciudad. Este horno es increíble, pero tiene un inconveniente: no puedes simplemente entrar y usarlo. Tienes que enviar una solicitud a una línea de personas separada y misteriosa que espera para usarlo.
Esto crea un "problema de dos colas". Tienes la fila de tu cocina y la fila del horno remoto. ¿El problema? Tus chefs no saben qué tan larga es la fila del horno. Podrían empezar a picar vegetales y preparar sartenes (usando el espacio y el tiempo de tu cocina) mientras esperan a que el horno esté libre. Si el horno está ocupado durante una hora, tus chefs solo se quedan ahí parados, picando aire, desperdiciando energía y espacio.
Los autores de este artículo, Vanessa Sochat y Daniel Milroy, construyeron un nuevo gerente de cocina llamado Fluence. Piensa en Fluence como un jefe de cocina superinteligente que se niega a dejar que el equipo de preparación comience a trabajar hasta que el horno remoto esté realmente listo.
El truco de magia: "Todo o nada"
En la forma antigua de hacer las cosas (usando un programador por defecto), si pedías que un equipo de chefs trabajara junto, la cocina podría dejar que la mitad del equipo comience a cocinar mientras la otra mitad espera al horno. Esto es como enviar a un repartidor de pizza a la puerta antes de que la pizza esté siquiera horneada. Es un desperdicio de tiempo y espacio.
Fluence utiliza una estrategia llamada "programación en grupo" (gang scheduling). Trata a todo el equipo como una sola unidad. Dice: "Nadie empieza a picar, nadie empieza a preparar, hasta que el horno remoto esté 100% listo y todo el equipo pueda trabajar en el mismo instante".
En sus pruebas, cuando intentaron ejecutar grupos de 4 chefs, el administrador antiguo dejó que el equipo comenzara parcialmente, lo que causó que esperaran alrededor de 133 nodo-segundos (una medida de tiempo desperdiciado) mientras la fila del horno avanzaba. Fluence mantuvo ese tiempo desperdiciado casi en cero. Es la diferencia entre un embotellamiento donde los autos avanzan poco a poco y un semáforo que permanece en rojo hasta que toda la intersección está despejada, y luego deja que todos pasen de golpe.
La sincronización de "Dos Colas"
El mayor dolor de cabeza es que la fila del horno remoto es impredecible. A veces está vacía; otras veces tiene horas de duración.
- La forma antigua: Los chefs comienzan a trabajar inmediatamente. Si la cola del horno es larga, se quedan ociosos durante horas.
- La forma de Fluence: Un chef (el "productor") va a la fila del horno remoto y verifica el estado. El resto de los chefs (los "consumidores") son instruidos para "esperar en las sombras" (un estado llamado estar gated o con compuerta). No usan ningún espacio de cocina ni electricidad hasta que el productor dice: "¡El horno está libre!".
En sus experimentos, este simple truco ahorró una cantidad masiva de tiempo. Cuando la cola del horno era corta, Fluence redujo el tiempo de inactividad de los chefs en aproximadamente 5 veces. Pero cuando lo probaron en un dispositivo cuántico real donde la cola se extendía por horas, Fluence ahorró tiempo por órdenes de magnitud. En una prueba específica con un grupo de 8 chefs, el método antiguo los hizo esperar 223 segundos en un simulador, mientras que Fluence logró que comenzaran a trabajar en solo 32 segundos. En otro caso con una cola de 2.66 horas, el método antiguo desperdició 19,160 nodo-segundos de tiempo, mientras que los trabajadores de Fluence no comenzaron hasta el último segundo, evitando ese desperdicio por completo.
Eligiendo el mejor horno
Fluence también te ayuda a elegir qué horno remoto usar. Hay diferentes hornos (simuladores y dispositivos cuánticos reales) con diferentes precios y tiempos de espera.
- Elección aleatoria: Si eliges un horno al azar, podrías elegir uno súper caro o uno con una fila larga.
- La elección de Fluence: Fluence puede mirar el menú y decir: "Vamos a elegir el más barato" o "Vamos a elegir el que tenga la fila más corta".
En sus pruebas, cuando se le ordenó a Fluence elegir la opción más barata, redujo el costo promedio por ejecución en aproximadamente 70 veces en comparación con la elección aleatoria. También ayudó a terminar el trabajo más rápido al elegir los hornos con las filas más cortas.
Lo que Fluence NO es
Los autores son muy claros sobre lo que Fluence no hace.
- No hace que el horno remoto sea más rápido mágicamente. Solo gestiona mejor el tiempo de espera.
- No requiere que guardes contraseñas secretas en la oficina principal del gerente de cocina (lo cual es un riesgo de seguridad). En su lugar, permite que el usuario maneje las credenciales localmente.
- No funciona para todo tipo de trabajos cuánticos. Por ejemplo, si quieres enviar 8 chefs diferentes a 8 hornos diferentes al mismo tiempo, Fluence no necesita coordinar eso porque no están esperando unos a otros. Fluence es específicamente para cuando un equipo de chefs necesita trabajar juntos en una sola tarea que depende de un solo horno remoto.
La conclusión
El artículo muestra que, al añadir esta lógica de "esperar hasta estar listo" al gerente de la cocina, puedes dejar de desperdiciar valioso espacio de cocina mientras esperas un horno remoto. Demostraron esto usando simulaciones y pruebas reales con AWS Braket y otros proveedores cuánticos.
Encontraron que, sin esta coordinación inteligente, terminas desperdiciando mucho tiempo y dinero. Con Fluence, los chefs se mantienen frescos, la cocina se mantiene eficiente y el equipo solo comienza a cocinar cuando toda la comida puede ser servida al mismo tiempo. Es una forma de hacer que el futuro de la computación cuántica funcione sin problemas con las computadoras que ya tenemos, sin necesidad de cambiar las recetas que los chefs están usando.
¿Ahogado en artículos de tu campo?
Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.