Convertir “optimizar” en una pregunta comprobable
Una comparación útil declara un flujo, una máquina, una línea base y un solo cambio. También define de antemano qué resultado se evaluará: finalización, categoría del fallo, latencia, pico muestreado de memoria del dispositivo o pico del asignador PyTorch. Mezclar todos esos resultados en una puntuación de “rendimiento” oculta diferencias importantes.
Separar las dos vistas de memoria
Pico del asignador PyTorch
torch.cuda.max_memory_allocated() informa del máximo ocupado por tensores que controla el asignador CUDA de PyTorch. La definición oficial no equivale al consumo total del proceso o del controlador.
Pico muestreado del dispositivo
Una herramienta del fabricante toma muestras de una medida del dispositivo. Para NVIDIA, el protocolo usa consultas documentadas de nvidia-smi y guarda el intervalo, porque el máximo observado depende del muestreo.
Ambas medidas se publican con nombres, unidades y límites explícitos. Ninguna de ellas demuestra por sí sola calidad de imagen, caudal o compatibilidad.
Diseñar la comparación antes de ejecutar
| Mantener fijo | Registrar | Modificar |
|---|---|---|
| Flujo, modelos, prompt, semilla, dimensiones, lote, pasos, sampler, scheduler y formato. | Hashes, revisiones de ComfyUI y nodos, acelerador, controlador o backend, sistema operativo, RAM, Python, PyTorch, comando y entorno. | Una sola condición declarada frente a la línea base. |
Las familias admitidas por la metodología son la línea base, --lowvram, --preview-method none, una reducción de carga especificada y --cpu como vía de compatibilidad. Son etiquetas experimentales, no garantías. Cada opción debe contrastarse con la documentación oficial vigente.
Ejecutar sin seleccionar solo las muestras favorables
El protocolo solicita un calentamiento no publicado y cinco repeticiones medidas. ComfyUI se reinicia entre familias, y todos los fallos permanecen en el registro. Cada resumen incluye muestras crudas, mediana, rango, tasa de éxito, registros, hashes y la comprobación exacta del resultado.
Una familia con menos de tres ejecuciones satisfactorias se marca como incompleta. El término “reproducido” requiere una segunda ejecución limpia que alcance la misma categoría definida. Así, una sola finalización o un único pico bajo no se convierten en una afirmación general.
Etiquetas que exponen lo que falta
Hipótesis
La documentación permite comparar una opción, pero aún no hay una ejecución controlada.
Incompleto
La familia no alcanza las repeticiones satisfactorias exigidas por el protocolo.
Observado
La ejecución especificada tiene muestras y recibos, con alcance limitado a ese entorno.
Reproducido
Una segunda ejecución limpia alcanza la misma categoría; no implica una promesa universal.
Decidir después de medir
- Si la línea base y la candidata fallan, conservar la etapa y el mensaje exactos y revisar compatibilidad o definición de carga.
- Si las repeticiones difieren, publicar el rango y la tasa de éxito en lugar del mejor caso.
- Si los dos picos de memoria divergen, revisar muestreo y alcance de las métricas; no declarar que uno es incorrecto.
- Si solo completa la vía de compatibilidad, informar de ese hecho limitado sin recomendar velocidad o calidad.
Estado de publicación: el método existe, pero no hay filas válidas con las que clasificar tácticas o categorías de GPU.
Fuentes primarias y recursos controlados
- Resolución oficial de problemas de ComfyUI — opciones actuales de memoria y compatibilidad.
- Requisitos oficiales del sistema de ComfyUI — contexto actual de compatibilidad.
- PyTorch:
max_memory_allocated— definición del pico del asignador. - NVIDIA System Management Interface — consultas, bucles y salvedades.
- Metodología de VRAM baja de 42 UK — protocolo, plantilla vacía y estado de evidencia.
Esta intención no es la ruta inicial
Si todavía no existe una línea base estable, comience por la guía para principiantes. Si existe un fallo concreto y necesita elegir la siguiente observación, continúe con el árbol de decisión de resolución de problemas.