| vram_budget |
function |
py |
ml |
1.0.0 |
pure |
def vram_budget(gpu_vram_total_mb: int, model_type: str, quantization: str, n_loras: int = 0, width: int = 1024, height: int = 1024, batch_size: int = 1) -> dict |
Estima la VRAM requerida para ejecutar un modelo de generacion de imagen via heuristicas tabuladas por (model_type, quantization). Retorna VRAM estimada, si cabe en la GPU indicada, headroom disponible, y warnings por incompatibilidades (lora+quant) o falta de VRAM. Funcion pura: solo lookup y aritmetica, sin GPU ni runtime. |
| ml |
| vram |
| gpu |
| budget |
| stable-diffusion |
| flux |
| sdxl |
| quantization |
| lora |
| estimation |
| pure |
|
|
|
|
false |
|
|
| name |
desc |
| gpu_vram_total_mb |
VRAM total de la GPU objetivo en MB. Obtener con gpu_info() o torch.cuda.get_device_properties(). |
|
| name |
desc |
| model_type |
Tipo de modelo. Valores soportados: sd15, sdxl, flux_dev, flux_schnell, sd3, qwen_image. Combinaciones fuera de la tabla retornan required_mb=-1. |
|
| name |
desc |
| quantization |
Esquema de cuantizacion. Valores: fp16, q8_0, q4_0 (y variantes q4_k_m, q5_k_m, q6_k). Afecta tanto el tamano base como la compatibilidad con LoRAs. |
|
| name |
desc |
| n_loras |
Numero de LoRAs a cargar simultaneamente en VRAM. Cada LoRA suma ~300 MB. Con quantization != fp16 se emite warning de incompatibilidad. |
|
| name |
desc |
| width |
Ancho en pixeles de la imagen a generar. Afecta el overhead de latentes (mayor resolucion = mas VRAM para activaciones). |
|
| name |
desc |
| height |
Alto en pixeles de la imagen a generar. |
|
| name |
desc |
| batch_size |
Numero de imagenes generadas en paralelo. El overhead de latentes escala linealmente con batch_size. |
|
|
dict con: required_mb (int, -1 si combo desconocido), fits (bool, True si cabe en gpu_vram_total_mb), headroom_mb (int, negativo si no cabe, 0 si combo desconocido), warning (str o None con aviso de incompatibilidad lora+quant o deficit de VRAM). |
true |
| sdxl fp16 cabe en 24gb con headroom positivo |
| flux fp16 no cabe en 8gb warning con deficit |
| lora con quantization incompatible emite warning |
| combo desconocido retorna required minus1 y warning |
|
python/functions/ml/tests/test_vram_budget.py |
python/functions/ml/vram_budget.py |