Back to blog
    Benchmarks de LLMs en Android: Snapdragon, Tensor y Exynos comparados
    AndroidbenchmarksSnapdragonTensorExynoson-device AIllama.cppsegment:mobile-builder

    Benchmarks de LLMs en Android: Snapdragon, Tensor y Exynos comparados

    Datos reales de benchmarks para ejecutar LLMs en Android via llama.cpp. Velocidades de tokens en Snapdragon 8 Gen 2/3, Tensor G3/G4, Exynos 2400 y chipsets de gama media con guia practica de despliegue.

    EErtas Team·

    La diversidad de chipsets de Android es tanto un desafio como una oportunidad para la IA en el dispositivo. A diferencia de iOS donde apuntas a un punado de chips serie A, Android abarca Qualcomm Snapdragon, Google Tensor, Samsung Exynos y MediaTek Dimensity en cientos de modelos de dispositivos.

    La buena noticia: los dispositivos Android flagship y de gama media recientes ejecutan modelos de 1-3B parametros a velocidades utilizables. La fragmentacion es manejable si apuntas a los niveles correctos.

    El panorama de chipsets

    Flagship (2023-2026)

    ChipsetDispositivos ejemploRAMGPU
    Snapdragon 8 Gen 3Galaxy S24, OnePlus 128-12GBAdreno 750
    Snapdragon 8 EliteGalaxy S25, OnePlus 1312-16GBAdreno 830
    Tensor G3Pixel 8, 8 Pro12GBMali-G715
    Tensor G4Pixel 9, 9 Pro12-16GBMali-G715
    Exynos 2400Galaxy S24 (intl)8-12GBXclipse 940
    Dimensity 9300Varios flagships8-16GBImmortalis-G720

    Gama media (2024-2026)

    ChipsetDispositivos ejemploRAMGPU
    Snapdragon 7+ Gen 3Gama media 2024+8-12GBAdreno 732
    Snapdragon 7 Gen 3Gama media 2024+6-8GBAdreno 720
    Dimensity 8300Gama media 2024+8-12GBMali-G615
    Tensor G2Serie Pixel 78GBMali-G710

    Presupuesto (2024-2026)

    ChipsetDispositivos ejemploRAMGPU
    Snapdragon 6 Gen 3Presupuesto 2024+4-6GBAdreno 710
    Dimensity 7300Presupuesto 2024+6-8GBMali-G615
    Helio G99Dispositivos economicos4-6GBMali-G57

    Resultados de benchmarks

    Todos los benchmarks usan llama.cpp con inferencia CPU (multi-hilo) y aceleracion GPU Vulkan donde esta disponible. Cuantizacion GGUF Q4_K_M, 2048 de longitud de contexto.

    Modelos de 1B parametros (~600MB GGUF Q4)

    ChipsetCPU (tok/s)GPU/Vulkan (tok/s)Memoria
    SD 8 Elite35-4545-55~800MB
    SD 8 Gen 330-4040-50~800MB
    SD 8 Gen 225-3535-45~800MB
    Tensor G428-3535-42~800MB
    Tensor G325-3230-38~800MB
    Exynos 240025-3532-42~800MB
    SD 7+ Gen 322-2828-35~800MB
    SD 7 Gen 318-2522-30~800MB
    Dimensity 830020-2825-33~800MB
    SD 6 Gen 312-1815-22~800MB

    Cada chipset flagship y de gama media de los ultimos 2-3 anos ejecuta modelos 1B a 20+ tokens por segundo. Incluso el chip economico Snapdragon 6 Gen 3 entrega rendimiento utilizable.

    Modelos de 3B parametros (~1.7GB GGUF Q4)

    ChipsetCPU (tok/s)GPU/Vulkan (tok/s)Memoria
    SD 8 Elite18-2522-30~2.2GB
    SD 8 Gen 315-2220-28~2.2GB
    SD 8 Gen 212-1816-22~2.2GB
    Tensor G414-2018-24~2.2GB
    Tensor G312-1615-20~2.2GB
    Exynos 240012-1816-22~2.2GB
    SD 7+ Gen 310-1413-18~2.2GB
    SD 7 Gen 37-119-14~2.2GB
    SD 6 Gen 34-75-9~2.2GB

    Los modelos 3B funcionan bien en flagships (15+ tok/s con GPU). Los dispositivos de gama media alta (SD 7+ Gen 3, Dimensity 8300) son utilizables. Los de gama media baja y economicos luchan por alcanzar el umbral de 10 tok/s para chat comodo.

    Aceleracion GPU Vulkan

    La aceleracion GPU Vulkan es la clave para inferencia rapida en el dispositivo en Android. La mejora sobre inferencia solo CPU varia del 20-40% en la mayoria de dispositivos:

    • Snapdragon 8 Gen 3: +30-35% con Vulkan
    • Tensor G4: +25-30%
    • Exynos 2400: +20-30%
    • Snapdragon 7 gama media: +20-25%

    llama.cpp habilita la aceleracion Vulkan con el parametro n_gpu_layers. Configurarlo al conteo completo de capas del modelo descarga toda la computacion a la GPU.

    La estrategia de fragmentacion

    La fragmentacion de Android es manejable con un enfoque por niveles:

    Nivel 1: Modelo 1B (4GB+ RAM)

    Cubre mas del 85% de dispositivos Android activos. Incluye todos los smartphones de los ultimos 3-4 anos, la mayoria de dispositivos economicos de los ultimos 2 anos.

    • Tamano del modelo: ~600MB (Q4_K_M)
    • Requisito de RAM: 800MB durante inferencia
    • Velocidad: 12-55 tok/s dependiendo del chipset
    • Adecuado para: clasificacion, autocompletado, sugerencias inteligentes, respuestas cortas

    Nivel 2: Modelo 3B (8GB+ RAM)

    Cubre dispositivos flagship y gama media alta de los ultimos 2-3 anos. Aproximadamente 40-50% de dispositivos Android activos en mercados desarrollados, creciendo cada ano.

    • Tamano del modelo: ~1.7GB (Q4_K_M)
    • Requisito de RAM: 2.2GB durante inferencia
    • Velocidad: 10-30 tok/s en dispositivos soportados
    • Adecuado para: chat, resumen, generacion de contenido, tareas complejas

    Deteccion en tiempo de ejecucion

    Detecta la RAM disponible y el chipset en tiempo de ejecucion para seleccionar el modelo apropiado:

    fun selectModelTier(): ModelTier {
        val memInfo = ActivityManager.MemoryInfo()
        val activityManager = getSystemService(ACTIVITY_SERVICE) as ActivityManager
        activityManager.getMemoryInfo(memInfo)
    
        val totalRamGb = memInfo.totalMem / (1024 * 1024 * 1024)
    
        return when {
            totalRamGb >= 8 -> ModelTier.THREE_B
            totalRamGb >= 4 -> ModelTier.ONE_B
            else -> ModelTier.NONE // Dispositivo demasiado limitado
        }
    }
    

    Impacto termico y de bateria

    Throttling termico

    Los dispositivos Android son mas propensos al throttling termico que los iPhones durante inferencia sostenida. El comportamiento de throttling varia por fabricante:

    • Samsung: Throttling agresivo, reduccion de velocidad del 20-40% despues de 3-5 minutos de carga sostenida
    • Pixel: Throttling moderado, reduccion del 15-25% despues de 5-7 minutos
    • OnePlus/telefonos gaming: Mas permisivos, reduccion del 10-20%

    Consumo de bateria

    Ejecutar inferencia consume aproximadamente:

    • Modelo 1B: 2-3W durante generacion
    • Modelo 3B: 3-5W durante generacion

    Para contexto, la capacidad tipica de bateria de un telefono es 4,000-5,500 mAh. Un modelo 3B generando continuamente drena aproximadamente 1% de bateria por minuto. Para uso tipico (unas pocas interacciones cortas por hora), el impacto en bateria es despreciable.

    Optimizacion

    • Usa conteo de hilos CPU que coincida con los nucleos de rendimiento del dispositivo (tipicamente 4)
    • Descarga el modelo cuando no este en uso para eliminar consumo de energia inactivo
    • Para tareas en segundo plano (clasificacion, etiquetado), el procesamiento por lotes es mas eficiente energeticamente que llamadas individuales

    Que significa esto para desarrolladores

    1. Los modelos 1B son universalmente viables. Apunta a 1B para amplio alcance. Fine-tunea para tu dominio para maximizar la calidad en este tamano.

    2. Los modelos 3B estan listos para flagships. Si tu base de usuarios se inclina hacia dispositivos mas nuevos (comun en apps de pago), 3B entrega calidad de generacion significativamente mejor.

    3. Vulkan importa. Siempre habilita la aceleracion GPU. La mejora de velocidad del 20-40% es rendimiento gratuito.

    4. Detecta y adapta. Usa deteccion de RAM en tiempo de ejecucion para ofrecer el nivel de modelo correcto. No fuerces un modelo 3B en un dispositivo de 4GB.

    5. Fine-tunea, no solo reduzcas. Un modelo 1B fine-tuned con tus datos de dominio supera a un 3B de proposito general en tus tareas especificas. Plataformas como Ertas lo hacen accesible: sube datos, entrena con LoRA, exporta GGUF, despliega.

    El ecosistema Android tiene el hardware. El motor de inferencia (llama.cpp) maneja la diversidad de chipsets. La pieza faltante es el modelo correcto para tu caso de uso.

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Keep reading