Lección 78 de 170

Un presupuesto es una herramienta de decisión

Curso de desarrollo de videojuegos con IA

Define restricciones medibles de GPU, CPU, memoria y carga, y conecta cada umbral con evidencia y una decisión de desarrollo.

1131. Identidad de la lección

Módulo
3.7 — GPU y rendimiento
Lección
Un presupuesto es una herramienta de decisión
Tipo académico
Concepto
Tipo de esquema
texto
Orden
1 del módulo
Tiempo estimado
30–40 minutos, incluida la práctica

1132. Objetivo de aprendizaje

Después de esta lección, podrás redactar un presupuesto de rendimiento medible que nombre una categoría de coste, establezca un umbral, defina el contexto de prueba y especifique la evidencia necesaria para tomar una decisión.

1133. Por qué importa

Hablar de rendimiento es demasiado impreciso cuando solo se dice que una escena debe “sentirse fluida”. Un presupuesto convierte esa intención en restricciones que pueden orientar la implementación y la revisión. También proporciona a un asistente de programación basado en IA un objetivo preciso, en lugar de una invitación a optimizar a ciegas. Una medición resulta útil cuando puede compararse con un límite explícito bajo condiciones de prueba reproducibles.

1134. Conocimientos previos

Debes poder identificar las responsabilidades principales que intervienen en la producción de un fotograma 3D y rastrear un resultado visible a través del estado de la escena, la cámara, el renderizado y la presentación, como se practicó en 3.6 L2 — Rastrear un frame 3D. No necesitas experiencia previa con herramientas de profiling. En esta lección solo tendrás que nombrar una fuente de evidencia adecuada y una regla de muestreo. La siguiente lección introduce la recogida e interpretación de esas mediciones.

1135. Concepto central

Un presupuesto de rendimiento es una regla para decidir, no una lista de deseos. Tiene cinco partes:

  1. Categoría de coste: qué consume tiempo o memoria.
  2. Umbral: el valor máximo aceptable o el intervalo requerido.
  3. Contexto de prueba: hardware, resolución, escena, cámara y carga bajo los que se aplica el umbral.
  4. Evidencia: la fuente de medición, la regla de muestreo y el resumen utilizados para evaluar el umbral.
  5. Respuesta: qué decisión se toma si el resultado cumple o incumple el umbral.

Las categorías medibles habituales incluyen:

Categoría Qué mide Posible fuente de evidencia
Intervalo entre fotogramas Tiempo entre dos fotogramas presentados consecutivos Traza de presentación de la plataforma o contador de tiempos del motor
Tiempo de GPU Trabajo realizado por el procesador gráfico Profiler de GPU o captura de frame
Tiempo de CPU por frame Simulación, scripts, preparación de escena y envío de trabajo Profiler de CPU o traza de frame del motor
Memoria Presión causada por asignaciones y datos residentes Profiler de memoria o diagnóstico de plataforma
Tiempo de carga Tiempo necesario para llegar a un estado jugable definido Prueba de carga con marcas temporales

Una categoría temporal debe definirse de forma operativa. Por ejemplo, un presupuesto puede usar el intervalo entre presentaciones consecutivas indicado por una traza de presentación de la plataforma o la duración de frame en tiempo real indicada por el contador de tiempos del motor. Registra qué fuente y qué definición utilizas: dos contadores con nombres parecidos pueden abarcar tramos distintos.

El intervalo entre fotogramas o la duración de frame del motor es una medida de cadencia y rendimiento sostenido. No equivale necesariamente a la latencia completa de un fotograma lógico ni a la latencia desde la entrada del jugador hasta la presentación. Esas métricas tienen otros puntos de inicio y final, por lo que necesitan presupuestos y fuentes de evidencia propios.

La estabilidad no es una categoría de coste independiente. Es una propiedad transversal de aceptación: describe si una categoría permanece dentro de su umbral durante muestras repetidas o en las condiciones relevantes. Una afirmación de estabilidad debe nombrar la categoría evaluada y especificar un resumen, como un percentil, un máximo o una observación del peor caso. Por ejemplo, “el tiempo de GPU se mantiene en 12 ms o menos durante 120 muestras” es un presupuesto de tiempo de GPU con un requisito de estabilidad, no un sexto tipo de coste.

La categoría debe corresponderse con la decisión. Si el problema es un pase de sombras largo, el tiempo medio de carga no aporta evidencia útil. Si el problema es un tirón al entrar en una escena, un único frame estable tampoco basta.

1136. Modelo mental

Usa el modelo C-U-C-E-R:

Categoría → Umbral → Contexto → Evidencia → Respuesta

Redacta cada línea del presupuesto como una afirmación completa:

En [contexto], [categoría] debe mantenerse en [umbral], según [fuente de evidencia y regla de muestreo]. Si falla, [respuesta].

Ejemplo:

En la escena de juego objetivo, con la resolución seleccionada y desde la posición de cámara más exigente, el tiempo de GPU debe mantenerse en 12 ms o menos, medido con el profiler de GPU durante 120 frames consecutivos. Si falla, se inspeccionarán los pases de GPU más costosos antes de añadir detalle visual.

La respuesta forma parte del presupuesto porque un número sin consecuencias no orienta ninguna decisión. El umbral también queda incompleto si falta el contexto de prueba: 12 ms en una escena vacía y 12 ms durante el encuentro más exigente no son afirmaciones equivalentes.

1137. Ejemplo concreto

Supón que una pequeña escena de juego 3D tiene como objetivo presentar 60 fotogramas por segundo. El intervalo correspondiente entre presentaciones es de unos 16,67 ms. Para este presupuesto, el equipo define su métrica de frame como el intervalo entre presentaciones consecutivas indicado por una traza de presentación de la plataforma. Esta definición mide la cadencia y el rendimiento de presentación; no afirma que la latencia completa de un fotograma lógico sea exactamente de 16,67 ms ni mide la latencia desde la entrada del jugador hasta la presentación.

El equipo podría definir este presupuesto inicial:

Categoría Umbral Contexto Evidencia Decisión
Intervalo entre presentaciones ≤ 16,67 ms Vista de juego prevista más exigente, con la resolución y el hardware objetivo Traza de presentación durante 120 intervalos; registrar la mediana y el peor intervalo Tratar el fallo como un problema de cadencia o rendimiento sostenido y determinar después si la causa está en CPU, GPU, sincronización o presentación
Tiempo de GPU ≤ 12 ms La misma vista y carga de trabajo Profiler de GPU durante la misma ventana de 120 frames; registrar la mediana y la peor muestra Inspeccionar los pases de GPU más costosos antes de aumentar el detalle de la escena
Tiempo de CPU por frame ≤ 10 ms La misma vista con la actividad normal del juego Profiler de CPU del motor durante la misma ventana; registrar la mediana y la peor muestra Inspeccionar scripts, simulación, preparación de escena y envío de trabajo si se supera
Memoria en ejecución ≤ 1,5 GB Después de entrar en la escena y completar el calentamiento normal Instantánea del profiler de memoria en un punto de control fijo Reducir o descargar asignaciones retenidas si se supera

El límite de 12 ms de GPU y el de 10 ms de CPU no deben sumarse para deducir un intervalo de 22 ms. El trabajo de CPU y GPU puede solaparse, y la sincronización o las esperas pueden afectar al intervalo de presentación observado. Además, la traza de presentación, el profiler de GPU y el profiler de CPU abarcan límites distintos. Son evidencias relacionadas, no cifras intercambiables.

Un fallo del intervalo entre presentaciones con las medianas de CPU y GPU por debajo de sus límites puede indicar una muestra de peor caso, sincronización, problemas de cadencia, comportamiento de la presentación u otra parte no medida del recorrido. A la inversa, un umbral de CPU o GPU puede incumplirse aunque la mediana del intervalo de presentación sea aceptable; esa categoría sigue requiriendo investigación porque ha superado su límite. Registra el mismo contexto de prueba y alinea las ventanas de muestreo para poder comparar la evidencia sin tratar las mediciones como si fueran sumables.

Este presupuesto no demuestra que la escena esté terminada. Crea una base para decidir. Un problema de latencia completa necesitaría un presupuesto distinto, como un umbral de entrada a presentación medido mediante un método específico para latencia.

Una versión débil diría: “Mantén la escena optimizada y evita efectos costosos”. No nombra una categoría, un umbral, un contexto, una medición ni una respuesta. Un sistema de IA podría proponer muchos cambios técnicamente plausibles a partir de esa frase, pero ninguno estaría vinculado a una restricción verificable.

1138. Error común

Un error habitual es escoger un umbral a partir de una regla general y tratarlo como si ya fuera evidencia. Declarar “60 FPS” sin indicar la escena de prueba, la resolución, el hardware, la ventana de muestras, la fuente de medición o la condición de peor caso no establece un presupuesto utilizable.

Otro error es usar la expresión “tiempo de frame” sin definir el contador. Un contador de duración de frame del motor, una traza entre presentaciones, una duración de GPU y una medición de latencia desde la entrada hasta la presentación no abarcan necesariamente los mismos límites. Nombra la herramienta o el contador e indica qué intervalo representa.

No uses solo medias cuando importe un tirón breve. Indica si la decisión usa la mediana, el máximo, un percentil u otro resumen explícito, y mantén fijo el contexto de muestreo al comparar resultados. Tampoco clasifiques la estabilidad como un coste junto al tiempo de GPU, el tiempo de CPU, la memoria o la carga; la estabilidad describe con qué constancia una categoría medida cumple su umbral.

1139. Práctica guiada

Redacta una línea de presupuesto para un riesgo de rendimiento en una escena de juego 3D:

  1. Elige una categoría: intervalo entre fotogramas, tiempo de GPU, tiempo de CPU, memoria o tiempo de carga.
  2. Describe la carga que debe protegerse. Incluye la escena o condición de cámara y, cuando corresponda, la resolución o la clase de hardware.
  3. Establece un umbral numérico con unidades.
  4. Nombra la fuente de evidencia y define qué representa su medición. Añade una regla de muestreo o un punto de control fijo.
  5. Escribe la respuesta ante un fallo. Identifica el siguiente diagnóstico o decisión; no saltes directamente a una optimización sin verificar.

Usa esta plantilla:

Categoría:
Umbral:
Contexto:
Fuente de evidencia y definición de la métrica:
Regla de muestreo o punto de control:
Respuesta si falla el umbral:

Después, somete tu línea a estas tres preguntas:

  • ¿Podría otro desarrollador reproducir la prueba sin preguntarte qué querías decir?
  • ¿Están claros los límites de la medición para distinguir entre cadencia y latencia cuando corresponda?
  • ¿El resultado provocaría una decisión clara en lugar de producir solo otro número?

Revisa la línea una vez si alguna respuesta es negativa.

1140. Validación / evidencia

Tu evidencia es una línea de presupuesto completada y una breve nota de revisión. La línea supera la comprobación cuando:

  • nombra una categoría de coste medible;
  • usa un umbral numérico y una unidad;
  • define la carga y el contexto de prueba;
  • identifica una fuente de medición y qué representa su métrica;
  • especifica una ventana de muestras, un resumen o un punto de control fijo; y
  • establece qué decisión se toma si el resultado cumple o incumple el umbral.

Un revisor debe poder marcar cada una de las cinco partes de C-U-C-E-R como presente o ausente. Si la línea trata sobre tiempos de frame, también debe poder distinguir si presupuestas una duración de frame del motor, un intervalo entre presentaciones, trabajo de CPU o GPU, o una métrica de latencia independiente. Si mencionas la estabilidad, identifica la categoría medida y la regla utilizada para juzgar su consistencia.

No afirmes todavía que el presupuesto se ha cumplido. Esta lección establece la restricción y el plan de evidencia. La siguiente lección introduce cómo recoger e interpretar mediciones para comparar un resultado observado con el umbral.

1141. Puntos clave

  • Un presupuesto de rendimiento convierte un objetivo de calidad en una regla de decisión medible.
  • Cada línea necesita categoría, umbral, contexto, método de evidencia y respuesta.
  • Define las métricas temporales mediante su fuente de medición y sus límites.
  • El intervalo entre fotogramas o la duración de frame del motor no equivale automáticamente a la latencia completa ni a la latencia desde la entrada hasta la presentación.
  • Los tiempos de CPU y GPU no deben sumarse sin más, porque su trabajo puede solaparse y sus contadores abarcan límites distintos.
  • La estabilidad describe si una categoría medida permanece dentro de su umbral durante varias muestras; no es una categoría de coste independiente.
  • Un presupuesto solo resulta útil cuando su resultado cambia lo que el equipo hará después.

1142. Siguiente lección

Continúa con 3.7 L2 — Medir antes de cambiar.

1143. Comprobación

Responde estas preguntas por tu cuenta antes de leer las respuestas.

¿Qué conjunto describe mejor una línea completa de presupuesto de rendimiento?

  • A. Un objetivo visual y una lista de efectos que deben evitarse.
  • B. Una categoría, un umbral, un contexto, un método de evidencia y una respuesta.
  • C. Una tasa de frames objetivo medida una vez en cualquier hardware.
  • D. Una captura del profiler sin una regla para aprobar o fallar.
Mostrar respuesta y explicación

Respuesta: Una categoría, un umbral, un contexto, un método de evidencia y una respuesta.

Por qué: Correcto. Un presupuesto útil conecta la categoría de coste y el umbral numérico con un contexto reproducible, un método de evidencia y una respuesta de decisión.

¿Por qué debe incluirse el contexto de prueba en un presupuesto de rendimiento?

  • A. Porque la misma medición puede significar cosas distintas bajo cargas de trabajo diferentes.
  • B. Porque el contexto sustituye la necesidad de un umbral numérico.
  • C. Porque solo la posición de la cámara afecta al rendimiento.
  • D. Porque un presupuesto solo es válido durante la carga.
Mostrar respuesta y explicación

Respuesta: Porque la misma medición puede significar cosas distintas bajo cargas de trabajo diferentes.

Por qué: Correcto. La resolución, el hardware, la escena, la cámara y la carga determinan qué representa una medición y si las comparaciones son válidas.

¿Cuál es la principal debilidad de decir únicamente “el juego debe funcionar a 60 FPS”?

  • A. Se refiere a una tasa de frames en lugar de a un valor de memoria.
  • B. Es imposible medir cualquier tasa de frames.
  • C. No especifica la carga, las condiciones de prueba, la regla de muestreo ni la respuesta ante un fallo.
  • D. Proporciona a la IA demasiados detalles de implementación.
Mostrar respuesta y explicación

Respuesta: No especifica la carga, las condiciones de prueba, la regla de muestreo ni la respuesta ante un fallo.

Por qué: Correcto. El objetivo de tasa de frames solo se puede aplicar cuando se definen la carga, las condiciones, el método de evidencia y la regla de decisión.

¿Qué respuesta encaja mejor en un presupuesto cuando el tiempo de GPU supera su umbral?

  • A. Añadir más efectos visuales inmediatamente.
  • B. Ignorar el resultado si la mediana es aceptable.
  • C. Sustituir el umbral por un objetivo general de optimización.
  • D. Inspeccionar los pases de GPU más costosos antes de aumentar el detalle de la escena.
Mostrar respuesta y explicación

Respuesta: Inspeccionar los pases de GPU más costosos antes de aumentar el detalle de la escena.

Por qué: Correcto. La respuesta debe conducir a un diagnóstico específico antes de elegir un cambio de implementación.

Apoyar