Escribir código eficiente no solo ahorra tiempo de ejecución, sino también costes de servidor y energía. Sin embargo, la optimización prematura es la raíz de muchos males: a veces intentamos arreglar lo que no está roto. ChatGPT es una herramienta excepcional para realizar una auditoría de rendimiento objetiva, ayudándote a encontrar esos puntos donde el script se «atasca».
1. Identificación de Cuellos de Botella
Antes de cambiar nada, debes saber qué partes del código son lentas. ChatGPT puede ayudarte a insertar herramientas de medición o identificar visualmente algoritmos ineficientes.
- Prompt de diagnóstico:
«Actúa como un experto en optimización de software. Analiza este script en [Lenguaje] e identifica las secciones que podrían causar un alto consumo de CPU o memoria. Busca específicamente bucles anidados, redundancias o llamadas innecesarias a funciones. [Pegar script].»
2. Optimización de Estructuras de Datos
A veces, el problema no es el código, sino cómo guardamos la información. Cambiar una lista por un set o un diccionario puede reducir el tiempo de búsqueda de segundos a milisegundos.
| Estructura Lenta | Alternativa Optimizada | Por qué ChatGPT lo sugiere |
| Listas (búsquedas) | Sets / Diccionarios | La búsqueda en sets es $O(1)$, casi instantánea. |
| Concatenación de strings | Join de listas | Evita crear nuevos objetos de texto en cada iteración. |
| Bucles manuales | Operaciones vectorizadas | En lenguajes como Python (NumPy), la vectorización es hasta 100 veces más rápida. |
3. Refactorización para la Complejidad Algorítmica
La IA es capaz de reconocer si estás usando un algoritmo de complejidad exponencial $O(2^n)$ y sugerir uno lineal $O(n)$ o logarítmico.
- Prompt de refactorización: «Este script tarda mucho en procesar grandes volúmenes de datos. ¿Puedes refactorizarlo para mejorar su complejidad Big O? Explícame la diferencia de rendimiento entre tu versión y la mía».
4. El «Prompt Maestro» para el Perfilado de Código
Si quieres una optimización profesional que no sacrifique la legibilidad, utiliza este bloque de instrucciones:
«Actúa como un Ingeniero de Performance.
Tarea: Optimiza el rendimiento del siguiente script: [Pegar código].
- Lazy Loading: Identifica si hay recursos que se cargan y no se usan de inmediato.
- Caché: Sugiere dónde podríamos implementar ‘memoización’ o caché para evitar cálculos repetidos.
- Concurrencia: Evalúa si el script se beneficiaría de multiprocesamiento o asincronía.
- Código Limpio: Reescribe el script optimizado y comenta qué cambios específicos mejoran la velocidad.»
5. Implementación de Asincronía y Paralelismo
Muchos scripts se detienen mientras esperan que una página web cargue o un archivo se lea. ChatGPT puede ayudarte a que el código haga varias cosas a la vez.
- Prompt de concurrencia: «Este script realiza 50 peticiones HTTP de forma secuencial y es muy lento. Ayúdame a reescribirlo usando [Asyncio en Python / Promesas en JS] para que las peticiones se realicen de forma concurrente».
6. Pruebas de Estrés y Benchmarking
Una vez optimizado, hay que demostrar que es mejor. Puedes pedirle a la IA que genere un script de prueba para comparar ambos tiempos.
- Prompt de benchmark: «Crea un script de prueba de rendimiento (benchmark) que compare mi código original con la versión optimizada. Muestra el tiempo de ejecución de ambos para una muestra de 10,000 elementos».
Conclusión
Optimizar con ChatGPT es como pasar un coche por el túnel de viento: la IA detecta la «fricción» en tu código que tú no puedes ver. No obstante, recuerda que la optimización más inteligente es aquella que mantiene el código mantenible. No sacrifiques la claridad por ganar unos pocos milisegundos a menos que sea estrictamente necesario.


