TokForge TokForge

Vulkan vs OpenCL vs CPU: Which Backend and When

Understand GPU acceleration options and how TokForge auto-detects the fastest path for your device.

Run this on your own phone

TokForge is free. Android is live on Google Play; iPhone and iPad are in public beta on TestFlight. No account, and it works with the network off once a model is downloaded.

Get it on Google Play iPhone beta on TestFlight Discord community

Reading on a computer? Check which models fit your phone, or see real measured speeds on the phone-speed leaderboard.

The Acceleration Paths

TokForge doesn't ask you to choose a backend. Instead, TokForge detects your chip and picks a path for each model automatically, using routes that have been tested on that GPU family. Here are the paths it can use:

You don't have to switch between them by hand, though you can. TokForge handles the choice, and the Runs on row in AutoForge shows where the current model runs.

New in 1.3.8 (beta):Beta: 1.3.8 and newer the per-chip rules on this page describe 1.3.6.1, the Google Play production version. In 1.3.8 they are starting points only. Each phone checks the GPU's answers once while idle, then times the CPU, the GPU and a mix of both for the model you loaded, and keeps whichever measured faster. Settings (Advanced mode) > Speed & engine > Performance > Measured on your phone shows what it found. On Snapdragon 8 Gen 3 and 8 Elite Gen 5, an optional NPU boost can read long prompts. Pixel 10 and Snapdragon 865 phones stay on the CPU, and Gemma 4 E4B stays on the CPU on every GPU.

Two Inference Backends

It's important to distinguish acceleration paths from inference backends. TokForge uses two backends on Android:

The model's format decides the backend: MNN bundles load in MNN, GGUF files load in llama.cpp. The acceleration path is chosen within that backend. On iPhone and iPad, TokForge runs models with llama.cpp on Metal; the rest of this guide is about Android.

GPU Path Comparison

Here's how the paths compare in real-world use:

Path Best For Chipsets Picked Automatically Notes
CPU Every model, every phone All Yes, the default on most phones Always works; often the fastest path for chat
OpenCL MNN models on Snapdragon Snapdragon For some phone and model pairs Can also be chosen per model
Vulkan GGUF models on supported GPUs Recent flagship phones with other GPUs, such as the Pixel 9 and the Xiaomi 14T Pro; an option on some recent Snapdragon phones For GGUF models on those supported phones; very large models stay on CPU MNN offers Vulkan only as an option, for some model and phone pairs where it tested faster on long prompts
NPU (QNN) Image generation Snapdragon When you pick an image model made for the AI chip Not used for chat in 1.3.6.1. In the beta (1.3.8 and newer), an optional boost reads long chat prompts on Snapdragon 8 Gen 3 and 8 Elite Gen 5Beta: 1.3.8 and newer

Which Chipset Uses What

Device manufacturers use different SoCs (System-on-Chip). Here's how TokForge 1.3.6.1 handles each major category. In the beta (1.3.8 and newer) these rules are only starting points: your phone's own check and measurement pick the route (see how your phone picks the route).Beta: 1.3.8 and newer

Snapdragon phones

Qualcomm's chips, from flagships to mid-range. TokForge uses:

Recent flagship phones with other GPUs

Flagship phones without a Snapdragon chip, such as the Xiaomi 14T Pro and the OnePlus Ace 5 Ultra:

Pixel phones

Other and Mid-Range Phones

Mid-range Snapdragon phones, other mid-range and older chips, and similar:

KleidiAI: ARM CPU Acceleration

Not all devices have strong GPU support. That's where KleidiAI comes in. It's ARM's CPU-side acceleration for mobile inference.

What Does KleidiAI Do?

KleidiAI uses the i8mm (integer 8-bit matrix multiply) instructions found on Armv9 CPU cores. Older cores such as the Cortex-A78 do not have them. When available, it provides:

When KleidiAI Is Used

KleidiAI is used automatically when:

In the GGUF backend, just load a Q4_0 quantized model and KleidiAI activates automatically on supporting chips.

How to Check Your Acceleration Path

Curious what your phone is running? AutoForge shows it:

  1. Open TokForge → AutoForge (the Home screen tile, or Settings → Speed & engine)
  2. On the Tune tab, What your phone can do lists the speed-up features TokForge detected
  3. The Runs on row shows where the selected model runs
  4. Run a speed test from the Results tab
  5. Each result shows the model, the chip and the backend it ran on
Pro Tip: If you're unhappy with the selected path, you can change it per model: in the model's settings, under Hardware, pick a Backend (Auto, CPU, OpenCL, or Vulkan where it is offered). The change applies when the model reloads. But we recommend letting TokForge auto-select first.

Real-World Performance

Theory is fine, but what do real phones actually achieve? The live leaderboard has measured results by phone, model and backend.

Example: a recent flagship phone with Vulkan

GGUF models run on the Vulkan path here. For the actual numbers on hardware like yours, see the live leaderboard:

Results vary widely by chipset; on many mid-range and budget devices the CPU path wins, which is why TokForge benchmarks instead of assuming.

Prefill vs Decode Speed

GPU paths can help prompt processing (prefill) more than writing the answer (decode):

Does GGUF Work on Android?

Yes. GGUF is the model format for the llama.cpp engine, one of the two inference backends in TokForge, and it runs on every supported Android device on the CPU path, with OpenCL and Vulkan GPU paths where the phone supports them. The MNN engine uses its own bundle format instead; both live side by side in the app, so a GGUF file downloaded from Hugging Face works without conversion.

Don't Overthink It

Here's the reality: TokForge auto-selects for you. You don't need to:

Just open the app, load a model, and inference begins on the path TokForge picked for your phone. If you're curious about performance tuning, run AutoForge once. It benchmarks your phone and shows you the detailed results. That's it.

Most users never manually change backends. TokForge's automatic choice comes from routes tested on real phones in each GPU family.

Learn More

Interested in deeper optimization? Check out these related guides:

Ready to Start?

Get TokForge on your Android device and run AI on the CPU or GPU path that suits your phone.