<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Mario Campos — Blog</title><description>Notes on infrastructure, reliability, platforms and engineering leadership, from someone who has been on both sides of the pager.</description><link>https://mariojcr.com/</link><language>en</language><item><title>Squeezing vLLM on AMD Strix Halo: 2.3× llama.cpp under load</title><link>https://mariojcr.com/blog/vllm-on-amd-strix-halo/</link><guid isPermaLink="true">https://mariojcr.com/blog/vllm-on-amd-strix-halo/</guid><description>vLLM on the Strix Halo iGPU, measured against llama.cpp with the same 35B model: 2.1× faster per token with graphs, 2.3× the throughput with 16 concurrent requests, startup from 9 minutes to 97 seconds, and the one case where llama.cpp still wins.</description><pubDate>Wed, 21 Oct 2026 00:00:00 GMT</pubDate><category>Performance</category><category>vllm</category><category>amd</category><category>rocm</category><category>llm-inference</category><category>performance</category></item><item><title>Memory that earns its place: mnemo, long-term memory for my agents</title><link>https://mariojcr.com/blog/mnemo-agent-memory/</link><guid isPermaLink="true">https://mariojcr.com/blog/mnemo-agent-memory/</guid><description>mnemo is the long-term memory I built for Claude Code, Codex and my own agents: six-W memories distilled in the background, a judge that closes what stops being true, recall in 35–50 ms without calling a model, and a measure of whether what it injects gets used. In a comparison inside Claude Code it got all 18 questions right at the lowest cost per correct answer.</description><pubDate>Tue, 20 Oct 2026 19:00:00 GMT</pubDate><category>Projects</category><category>mnemo</category><category>agents</category><category>memory</category><category>rust</category><category>clickhouse</category><category>mcp</category></item><item><title>Metrics forever in half the disk: Google-style monitoring for my homelab</title><link>https://mariojcr.com/blog/atalaya-homelab-observability/</link><guid isPermaLink="true">https://mariojcr.com/blog/atalaya-homelab-observability/</guid><description>Atalaya, the metrics and logs system I built on ClickHouse for my homelab, now open source: Cloud Monitoring&apos;s data model, every metric kept forever in tiers with percentiles that survive, logs forever, 4.6× fewer bytes per point than the OpenTelemetry schema, and half the disk of the stack it replaced.</description><pubDate>Tue, 20 Oct 2026 00:00:00 GMT</pubDate><category>Projects</category><category>clickhouse</category><category>observability</category><category>rust</category><category>promql</category><category>homelab</category></item><item><title>3.5 GB of dead prompts: what an LLM gateway really costs</title><link>https://mariojcr.com/blog/llm-gateway-on-pingora/</link><guid isPermaLink="true">https://mariojcr.com/blog/llm-gateway-on-pingora/</guid><description>I built an LLM gateway on Pingora and measured it against nginx and OpenResty doing the same work. The CPU was fine. The memory was holding every prompt until the last token, and one of the fixes ended up as a patch for Pingora.</description><pubDate>Sun, 27 Sep 2026 00:00:00 GMT</pubDate><category>Performance</category><category>pingora</category><category>llm-inference</category><category>rust</category><category>performance</category><category>nginx</category></item></channel></rss>