ELAI S.r.l.

Los agentes trabajan en paralelo: ¿por qué la tarea no acaba antes?

Seis tareas explican dependencias, camino crítico y límites del paralelismo: cálculo reproducible, no benchmark de agentes.

Los agentes trabajan en paralelo: ¿por qué la tarea no acaba antes?

Más ejecutores no eliminan requisitos previos

Sistema de agentes responde con documento, catálogo y reglas. Pasos rápidos/paralelos, no mejora con tercer ejecutor. Hay que conocer requisitos, no dividir duraciones. Flujo explícito permite cota inferior y plan que la alcanza. Pregunta de coordinación, no exactitud.

Resumen.Seis tareas sintéticas suman 13 s; dependencias imponen A→B→D→F de 10 s. Un trabajador 13 s, dos 10 s, tercero no mejora. Código filtra 720 permutaciones a cinco órdenes y planes enteros no interrumpibles. Alcanzar cota prueba óptimo de esta instancia. Duraciones elegidas, no LLM, servicio o EL-AI medidos.

Grafo describe restricciones, no conversación

Grafo dirigido acíclico, DAG: tareas y A→B exige A completo antes de B. Ningún camino vuelve al inicio. Sin diálogos iterativos, retries o cambios de grafo; ciclos exigen otro modelo/despliegue finito. Cada tarea una vez, sin efectos externos ni interrupción.

A prepara documento 2 s; B busca catálogo 4; C lee reglas 1; D combina 3; E comprueba reglas 2; F finaliza 1. Nombres ilustrativos, no módulos disponibles. B, C requieren A; D requiere B, C; E solo C; F requiere D, E. Independencia de E respecto B permite solapar.

TareaDuración(s)Predecesores
A2—
B4A
C1A
D3B, C
E2C
F1D, E

La cota que ningún número de trabajadores supera

Con trabajadores ilimitados, fin mínimo=duración más máximo de finales previos: todos listos, no solo rápido. Máximo vacío cero. Orden topológico pone previos primero. Calcula cota, no aún plan de dos recursos.

EF_i=d_i+max(EF_j : j in Pred(i)) EF_A=2; EF_B=6; EF_C=3; EF_D=9; EF_E=5; EF_F=10

10 s vienen A→B→D→F:2+4+3+1, camino crítico no solapable. Ni 1000 trabajadores finalizan antes de D recibir/combinar B. A→C→E→F dura 6 y no limita aquí; E sigue necesario, su tiempo cabe mientras se espera otra rama.

Capacidad: T≥W/P para 13 segundos-trabajador y P idénticos sin duplicar. Así T≥max(10,13/P); con 2,10 domina 6.5. Cotas no construyen plan general, puede haber más espera. Pero plan válido 10 prueba óptimo bajo hipótesis.

Construir y verificar plan que alcanza cota

Dos trabajadores: A 0–2, B 2–6 junto C 2–3, E 3–5 tras C. A 6 B, C completos, D 6–9, Eya terminó, F 9–10. Nunca más de dos activos ni inicio anticipado. Figura son intervalos, no medición CPU/GPU.

TrabajadoresDuración(s)Trabajo total(s)
11313
21013
31013

Trabajo 13, makespan 13→10 por solape, aceleración 1.3 no 2. Tercero no paraleliza cadena crítica, sin beneficio aquí. Identifica cuello concreto, no consejo genérico. Más servicio sí podría ayudar throughput de solicitudes simultáneas; estudiamos un flujo.

Izquierda:intervalos con dos trabajadores abstractos y tiempos sintéticos;filasA–F no son procesadores.Derecha:makespan1,2,3 y cota10s.Trabajo13s siempre,sin tiempoLLM medido.
Izquierda: intervalos con dos trabajadores abstractos y tiempos sintéticos; filas A–F no son procesadores. Derecha: makespan 1,2,3 y cota 10 s. Trabajo 13 s siempre, sin tiempo LLM medido.

Acelerar nodo correcto

Variantes separadas: E 2→1 s deja 10 s, ya terminaba antes; reducir B 4→2 permite 8 s con dos. Cambiamos una duración y recalculamos, sin aceleración gratis. Mejorar E ahorra trabajo u otros objetivos, pero no necesariamente makespan de este flujo.

VarianteDuración(s)
E:2→110
B:4→28

Orden topológico no es plan temporal

Python 3.14 graphlib TopologicalSorter recibe predecesores y expone listos; leímos get_ready/done. Orden estático no asigna duraciones/trabajadores.done debe significar resultado listo, no solicitud iniciada. No probamos framework; separamos orden de coordinación.

Enumeramos 720 permutaciones, cinco válidas. Por prioridad colocamos cada tarea en primer intervalo entero libre tras previos, capacidad P, sin interrumpir. No cubre necesariamente todo plan general. Encontrar 10 s y cota independiente 10 prueba este óptimo.

Aserciones verifican precedencia/capacidad. Búsqueda factorial didáctica, no escalable a cientos. Cálculo de fin temprano O(V+E) con duraciones dadas. Complejidad abstracta, no tiempo plataforma. Código/JSON permiten revisar intervalos.

Dónde termina modelo y empieza servicio

Agentes reales varían duración, esperas, límites y memoria; llamadas independientes compiten GPU. Trabajadores abstractos idénticos ocupan una tarea completa, sin contención modelada. Medias no garantizan plazo, rama lenta cambia. Grafo no sustituye medir distribuciones.

Comparación operativa registraría inicio y resultado listo, separando ejecución/espera. Propuesta, no experimento EL-AI. Sin calidad, coste tokens o fiabilidad medidos; rapidez no prueba corrección. Evidencia distinta. Conclusión cuantitativa solo plan determinista.

Paralelismo ayuda trabajo solapable. Dos alcanzan 10 s, tercero no acorta cadena. Acelerar B cambia límite, E no en variante probada. Dependencias explícitas explican espera inevitable y espera por recursos.

Python 3.14 documentation: graphlib. TopologicalSorter, predecessors, get_ready, done, cycles. Read 17 October 2026. Own deterministic scheduling calculation; no agent-runtime benchmark..

from experiment import D,PRE,schedule
print(schedule(tuple(D),2))

Código, datos e instrucciones · JSON. Cálculos didácticos ejecutados con Python 3.14.0; figuras con Matplotlib 3.11.2. Análisis asistido por IA, sin afirmar revisión por pares ni humana. Portada original ImageGen ilustrativa: no documenta personas, sedes ni instalaciones de EL-AI. Fuentes consultadas el 17 de octubre de 2026.