Unlimited-OCR 2 on a 16 GB GPU: it reads as well as Chandra 2, but it is not unlimited A developer benchmarked Baidu's newly released Unlimited-OCR 2 (3.3B parameters, MIT license) on a 16 GB RTX 4070 Ti SUPER against Chandra 2, Tesseract, Marker 2.0 and DeepSeek-OCR, finding it ties Chandra 2 for accuracy at a 0.12% median character error rate on a 20-page Central Bank of Chile report. However, the model's "unlimited" length claim failed on consumer hardware: under transformers, memory grew from 7.5 to 11.1 GB and per-token time rose 1.49x between 10 and 40 pages, and an 80-page request ran out of memory after 74 minutes. Baidu's modified SGLang kept per-token time flat at roughly 4.17-4.19 ms but hung in 10-page window mode and silently truncated a 40-page document to 24 pages, leading the tester to conclude Marker remains the practical choice for huge files. On October 27 Baidu released Unlimited-OCR 2: 3.3B parameters, MIT license, and a promise that its sparse attention keeps "per-step decoding latency and memory footprint nearly constant regardless of document length". That night I ran it on a 16 GB RTX 4070 Ti SUPER against what I actually used for huge PDFs Datalab's Marker and Chandra 2, locally , DeepSeek-OCR, Unlimited-OCR 1 and Tesseract, with the decision rules written down before the first run. | Median character error rate per page | Unlimited-OCR 2 | Chandra 2 | Tesseract | Marker 2.0 | DeepSeek-OCR | | 20 pages of a real Central Bank of Chile report | 0.12 % | 0.31 % | 0.51 % | 2.51 % | 3.12 % | - On reading quality it ties at the top with Chandra 2 paired difference -0.15 points, 95 % CI -0.36 to 0.00 and beats Tesseract, Marker and DeepSeek-OCR. Marker's error is mostly the page footer placed elsewhere; DeepSeek-OCR actually drops paragraphs under 90 % of the text on 6 of 20 pages . - "Unlimited" does not hold on 16 GB with transformers. From 10 to 40 pages in one request, memory went from 7.5 to 11.1 GB and time per token rose 1.49 times; at 80 pages it ran out of memory after 74 minutes. The transformers path keeps every token in a dynamic cache. - With Baidu's modified SGLang, time per token stays flat 4.17-4.19 ms from 10 to 40 pages, about nine times faster than transformers . But the 10-page window mode hung after the first window, and a single window silently returned 24 of 40 pages when its fixed cache filled up the README's --allow-auto-truncate . - For huge files, Marker is still the practical choice: the full 74-page report in 12.6 minutes using 4.2 GB of the card. Chandra 2 took 46 minutes and 11 GB. - Unlimited-OCR 2 is MIT; Chandra 2's weights are free only under 2 million dollars in funding or revenue. The post also covers the install stumbles on NixOS Triton looking for /sbin/ldconfig , Surya spawning Docker with --runtime nvidia , a normalization bug the external audit caught in my own analysis, and the threats to validity. Read the full measurements, the pre-registered sheet and the scripts → https://efraingaray.com/en/blog/unlimited-ocr-2-16gb/ https://efraingaray.com/en/blog/unlimited-ocr-2-16gb/