惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Threat Research - Cisco Blogs
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Register - Security
The Register - Security
A
About on SuperTechFans
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
L
LangChain Blog
N
Netflix TechBlog - Medium
量子位
博客园 - 三生石上(FineUI控件)
宝玉的分享
宝玉的分享
H
Help Net Security
D
Docker
D
DataBreaches.Net
T
Tailwind CSS Blog
阮一峰的网络日志
阮一峰的网络日志
B
Blog
博客园 - 聂微东
Apple Machine Learning Research
Apple Machine Learning Research
Google DeepMind News
Google DeepMind News
The Cloudflare Blog
F
Full Disclosure
GbyAI
GbyAI
F
Fortinet All Blogs
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
人人都是产品经理
人人都是产品经理
Recent Announcements
Recent Announcements
博客园 - Franky
MongoDB | Blog
MongoDB | Blog
有赞技术团队
有赞技术团队
博客园 - 叶小钗
小众软件
小众软件
V
Visual Studio Blog
月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
The GitHub Blog
The GitHub Blog
Recorded Future
Recorded Future
J
Java Code Geeks
雷峰网
雷峰网
P
Privacy & Cybersecurity Law Blog
C
Cisco Blogs
C
Cyber Attacks, Cyber Crime and Cyber Security
AWS News Blog
AWS News Blog
Webroot Blog
Webroot Blog
美团技术团队
N
News | PayPal Newsroom
G
Google Developers Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
博客园_首页
V
Vulnerabilities – Threatpost

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python) The Hidden Cost of AI Systems Nobody Talks About. undefined vs undeclared, and how typeof behaves Switching from file-based jobs to NATS/Kafka in Rust without changing code io_uring Adventures: Rust Servers That Love Syscalls Why Agentic AI is Killing the Traditional Database The POUR principles of web accessibility for developers and designers Quantum Neural Network 3D — A Deep Dive into Interactive WebGL Visualization How To Install Caveman In Codex On macOS And Windows Automation Pipeline Reliability: Why Your Workflow Breaks When Nobody Is Watching I Built an 'Open World' AI Coding Agent — It Works From ANY Folder From Freelancing to Product: A Tech Service Company's SaaS Transformation China's AI Giants: Adding Tencent Hunyuan & ByteDance Doubao to AI University (74 Providers) On the Vibe Coders and Their Lies clerk: Auto-Summarize Your Claude Code Sessions AI Weekly — 2026/04/10–04/17 | The Model Lockdown Is Here, but the Toolchain Is the Real Battleground AI 週報 — 2026/04/10–2026/04/17 模型封鎖潮來了,但工具鏈才是真戰場 Maybe this is how Open-Source apps are born... 🚀 Fine-Tune LLMs with LoRA and QLoRA: 2026 Guide tRPC v11 + Next.js App Router: End-to-End Type Safety Without the Boilerplate ShadCN UI in 2026: Why I Stopped Installing Component Libraries and Started Owning My Components SaaS Billing in React Server Components: Stripe + Supabase Without a Single `useEffect` Join our DEV Weekend Challenge — $1,000 in Prizes Across TEN winners! Submissions Due April 20 at 6:59 AM UTC. Implementing FSRS Spaced Repetition in Flutter + Supabase — Adding Memory Science to an AI Learning App "I Texted My Localhost From the Train — Claude Code Fixed the Bug Before I Got Home" I Built a Sales Prep AI and It Went Deeper Than Expected Design to Code #2: One JSON, Eleven Outputs Solving the 100M-Row Problem: A Summary Table Pattern for High-Volume Push Notification Logs Flutter Web With Wasm: What Actually Changes For Developers I Built 50 Royalty-Free Soundtracks for My Side Project in a Weekend Using AI Music Generation The Vibe Coding Security Checklist: 7 Things to Check Before You Ship Stop Letting Googlebot Guess Fix Your React App's SEO Right Desconstruindo o Streaming do LinkedIn: Como Criar um Engine de Extração de Vídeo de Alta Performance com HLS e FFmpeg (EDA Part-1) EDA (Exploratory Data Analysis) Explained With Real Life — Why Looking at Your Data Is the Most Important Step in Machine Learning Brand Relationship Management at Scale: Our 4-Touch Outreach System for 200+ Brands Why String.fromEnvironment() Might Return an Empty String in Dart JGuardrails 1.0.0 — Hardening Java LLM Apps Against Jailbreaks, Toxicity, and Prompt Injection Plan and Schedule a Full Week of Threads Content From One Claude Conversation Coding Cat Oran Ep3, Five Tables Changed Everything Updated: BFF Pattern I'm done watching freelancers get buried by 200 proposals. So I'm building the alternative. This is my first post BFS Algorithm in Java Step by Step Tutorial with Examples Tracking LLM Pricing Monthly: An Open Dataset for 22 AI Models How We Measure Content ROI on a Comparison Site: Revenue Attribution Without Perfect Data Introducing Nova AI Ops: The AI-Native Operating System for SRE Teams I built a free desktop video downloader for Windows — Grabbit How Talkie OCR Helps Vision-Impaired & Dyslexic Users Read the World Around Them VRCFaceTracking安装和iPhone面捕配置教程,有bug Even CrowdStrike Can't See Your Agents The Automation Gold Rush: What n8n Workflows and Claude Are Opening Up for Developers Right Now
Ollama vs llama.cpp vs vLLM: Which Should You Use in 2026?
Thurmon Demi · 2026-05-20 · via DEV Community

From the Best GPU for LLM archive. The canonical version has interactive calculators, an up-to-date GPU comparison table, and live pricing.

Three tools dominate local LLM inference in 2026. They are not interchangeable — each has a distinct use case, and choosing wrong wastes both time and hardware. Here is the direct comparison.

See the recommended pick on the original guide

Quick comparison

Feature Ollama llama.cpp vLLM
Setup difficulty Easiest (one command) Easy (compile or binary) Harder (Python env)
Speed (single user) Good Best Good
Speed (multi-user) Limited Limited Best
Model format GGUF GGUF HuggingFace / GPTQ / AWQ
GPU requirement Any supported Any NVIDIA CUDA required
AMD support Partial Vulkan backend Limited
API OpenAI-compatible REST REST (server mode) OpenAI-compatible REST
Best for Personal use Power users Production serving

Ollama — easiest, best for personal use

Ollama wraps llama.cpp under the hood with a model registry, automatic GPU detection, and a clean CLI. ollama run llama3 downloads the model and starts inference in seconds.

Best for:

  • Personal daily driver (chat, code assist, writing)
  • macOS users (native Apple Silicon support)
  • Non-technical users who want zero-friction setup
  • Running one model at a time

Limitations:

  • Less control over inference parameters than raw llama.cpp
  • Multi-user concurrency is limited
  • Model selection is limited to what's in the Ollama registry (though custom models work)

Minimum GPU: Any 8GB+ VRAM card with CUDA, ROCm, or Apple Silicon. Start here if you are new to local LLMs.

See the recommended pick on the original guide

llama.cpp — fastest raw inference, most flexible

llama.cpp is a C++ inference engine that runs GGUF-format quantized models. It is what Ollama is built on, but running it directly gives you more control: batch size, rope scaling, context length, GPU layer splitting across multiple cards.

Best for:

  • Squeezing maximum tokens per second from a single GPU
  • Splitting large models across multiple GPUs or GPU+CPU
  • Running any GGUF model file, not just registry models
  • Linux power users who tune inference settings
  • Embedding and batch processing workloads

Limitations:

  • No built-in model management (you download files yourself)
  • Server mode is less polished than Ollama's API
  • Config requires some familiarity with inference parameters

GPU requirement: Same as Ollama — any CUDA or ROCm GPU. Vulkan backend provides AMD compatibility without ROCm. For multi-GPU tensor parallelism on large models, you need matching GPU pairs.

Speed note: Direct llama.cpp with optimized settings runs 10-20% faster than Ollama on the same hardware, since Ollama adds wrapper overhead. For interactive chat, the difference is small. For batch processing, it adds up.

See the recommended pick on the original guide

vLLM — best for production serving

vLLM is a Python inference server designed for high-throughput multi-user serving. Its PagedAttention algorithm allows it to batch multiple requests efficiently, turning what would be sequential processing into parallel GPU utilization.

Best for:

  • Serving LLMs to multiple users simultaneously
  • Production API endpoints with SLA requirements
  • Teams running shared LLM infrastructure
  • Maximizing GPU utilization on expensive hardware (A100, H100)

Limitations:

  • Requires NVIDIA CUDA. AMD support exists but is incomplete.
  • Higher VRAM overhead than llama.cpp due to paging and batching buffers (plan for 20-30% more VRAM than the model base size)
  • Slower than llama.cpp for single-user, single-request inference
  • More complex setup (Python environment, HuggingFace model formats)

GPU requirement: NVIDIA cards with 16GB+ VRAM minimum for practical serving. The sweet spot for vLLM is 24GB+ cards. For multi-user production use, A100/H100 class hardware is the real target.

GPU tier list available at the original article

GPU requirements side by side

Tool Minimum VRAM Recommended Notes
Ollama 8GB 16GB+ 8GB limits you to small quantized models
llama.cpp 8GB 16GB+ Same as Ollama, but better multi-GPU support
vLLM 16GB 24GB+ Needs VRAM headroom for batching buffers

vLLM needs more VRAM than llama.cpp for the same model because it pre-allocates memory for its paging mechanism. A 14B Q4_K_M model that fits in 12GB under llama.cpp may need 16GB under vLLM.

Which tool should YOU use?

  • New to local LLMs, just want to run models? Use Ollama. Install in 30 seconds, download a model, start chatting. No config needed.
  • Want maximum speed on your personal setup? Use llama.cpp directly. The extra tokens-per-second adds up over long sessions. Worth it if you know what you're doing.
  • Building an LLM API for a team or app? Use vLLM. PagedAttention batching makes it the only practical choice for multi-user workloads. Ollama and llama.cpp do not scale to concurrent users efficiently.
  • Running on AMD or Apple Silicon? Use Ollama or llama.cpp. vLLM's AMD support is incomplete. Ollama is the easiest path on macOS.
  • Need to run very large models across multiple GPUs? llama.cpp with tensor split gives you the most control over layer distribution. vLLM handles multi-GPU better for serving workloads.

See the recommended pick on the original guide

See the recommended pick on the original guide

Common mistakes to avoid

  • Using vLLM for personal single-user inference. vLLM's advantages are for concurrent requests. For a single user, llama.cpp is faster with less overhead and complexity.
  • Using Ollama for production serving. Ollama is a personal tool. It handles one request at a time without batching. Under load from multiple users, it becomes a bottleneck immediately.
  • Assuming all three tools run identical models. Ollama and llama.cpp use GGUF quantized models. vLLM uses HuggingFace format with GPTQ or AWQ quantization. The model files are different — you can't swap them.
  • Forgetting vLLM's CUDA requirement. People coming from Ollama on AMD sometimes assume vLLM will work the same way. It won't. Check hardware compatibility before planning a production vLLM deployment.

Final verdict

You are... Use this GPU needed
Personal daily user Ollama 8GB+ any vendor
Power user, max speed llama.cpp 8GB+ any vendor
Serving to a team vLLM 16GB+ NVIDIA only
Building a product vLLM 24GB+ NVIDIA

All three tools are excellent. Ollama for getting started, llama.cpp for squeezing performance, vLLM for scaling to users. If you are weighing Ollama against a GUI-first alternative, our LM Studio vs Ollama comparison shows how the two tools differ on GPU utilization, model loading, and ease of setup for non-technical users.

See the recommended pick on the original guide

For GPU-specific Ollama advice, see our best GPU for Ollama guide. Optimizing your Ollama configuration? Check how to choose a GPU for Ollama. For production vLLM deployments, see best GPU for vLLM. If you are sizing hardware for a dedicated, always-on inference box rather than a personal workstation, our best GPU for an LLM server guide covers the throughput, ECC, and 24/7 thermals math.

Related guides on Best GPU for LLM


The full version lives on Best GPU for LLM — VRAM calculator, GPU comparison table, and live Amazon pricing.