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

推荐订阅源

The Register - Security
The Register - Security
云风的 BLOG
云风的 BLOG
U
Unit 42
F
Fortinet All Blogs
The GitHub Blog
The GitHub Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
D
Docker
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
S
Secure Thoughts
Hacker News: Ask HN
Hacker News: Ask HN
Vercel News
Vercel News
S
Security @ Cisco Blogs
GbyAI
GbyAI
Stack Overflow Blog
Stack Overflow Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
I
Intezer
MongoDB | Blog
MongoDB | Blog
AI
AI
MyScale Blog
MyScale Blog
Engineering at Meta
Engineering at Meta
Y
Y Combinator Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Proofpoint News Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
W
WeLiveSecurity
博客园 - 叶小钗
S
SegmentFault 最新的问题
N
News | PayPal Newsroom
WordPress大学
WordPress大学
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
D
DataBreaches.Net
小众软件
小众软件
Microsoft Azure Blog
Microsoft Azure Blog
Spread Privacy
Spread Privacy
H
Help Net Security
美团技术团队
博客园 - 司徒正美
T
Threat Research - Cisco Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
K
Kaspersky official blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
V
Vulnerabilities – Threatpost
TaoSecurity Blog
TaoSecurity Blog
N
Netflix TechBlog - Medium
L
Lohrmann on Cybersecurity
J
Java Code Geeks
量子位
Martin Fowler
Martin Fowler
博客园_首页

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Линейка для чисел: как я собрал каталог из 83 форматов с плавающей точкой — и почему он всё время «не сходится»
Дмитрий Васильев · 2026-06-24 · via Все публикации подряд на Хабре

Средний

7 мин

13

Это вторая статья про проект GoldenFloat. Первая была про φ-лестницу форматов и троичную «Сетунь». Здесь — про инструмент, который вырос из той работы: единый, машинно-проверяемый каталог форматов чисел, где у каждого формата есть точная разрядка битов, статус-метка и битовый отпечаток. И про главную дисциплину этой работы: у каждого формата есть честная статус-метка того, насколько он проверен — вплоть до границы, где формула ещё работает, а проверенного железа уже нет.

Любой, кто хоть раз дебажил несовпадение точности между двумя реализациями нейросети, знает это чувство: один и тот же matmul на двух устройствах даёт разный результат, и непонятно — это баг, или просто bf16 так округлил, или вообще другой формат подкрался. Инженеры на разных концах конвейера меряют один и тот же результат разными линейками — и корректная деталь читается как брак.

Идея каталога простая: сделать одну линейку с точными насечками. Для каждого числового формата — сколько бит на знак, экспоненту, мантиссу; чему равно смещение (bias); как кодируются inf, NaN, субнормальные; где лежит «якорная» точка 3.0. Не описание словами, а машинный источник истины (SSOT), из которого автоматически генерируются Markdown, JSON, Python, Rust, C — и даже RTL для кремния.

Препринт по каталогу: arXiv:2606.09686.

Обложка: Golden Ruler — каталог из 83 числовых форматов

Обложка: Golden Ruler — каталог из 83 числовых форматов

Оглавление

Зачем вообще каталог форматов

За последние десять лет зоопарк числовых форматов в машинном обучении вырос взрывообразно. Раньше хватало float32 и float16. Потом появились bfloat16, TF32, FP8 в двух вариантах (E4M3 и E5M2), FP6, FP4, микромасштабируемые MXFP-форматы с общей экспонентой, NF4 из мира QLoRA, posit’ы, takum’ы, логарифмические LNS. У каждого — свой компромисс «диапазон против точности», свои правила округления, свои граничные случаи.

Проблема в том, что спецификации этих форматов разбросаны по статьям, стандартам и кодовым базам, и нередко противоречат друг другу даже внутри одной библиотеки. Классический пример: что делает FP8 E4M3 при переполнении на кодировании? По одной конвенции (tt-metal, AMD) — насыщается до максимума 448.0; по другой (JAX, TPU) — уходит в NaN. Стандарт OCP MX разрешает оба варианта. И пока вы не зафиксируете, какой именно у вас, «совпадает ли результат» — вопрос не проверяемый, а вкусовой.

Каталог отвечает на это так: один файл-спецификация, из которого всё остальное выводится механически. Если спека и сгенерированный декодер разойдутся — это ловит CI, а не человек на ревью.

Что внутри: 83 формата в 13 кластерах

На момент написания статьи живой источник истины (specs/numeric/formats_catalog.t27) содержит 83 формата, сгруппированных в 13 кластеров. Вот разбивка (число проверено на свежем клоне репозитория — это важно, и ниже я объясню почему):

Кластер

Кол-во

Что внутри

GoldenFloat

22

φ-семейство GF2…GF1024 + гибриды (GF+LNS, MXGF) (arXiv:2606.05017)

HistoricalVendor

10

IBM HFP, VAX (F/D/G/H), Cray, Microsoft MBF

PositUnumIII

8

Posit8…64, takum8…64 (Hunhold 2024)

IntegerFixed

8

INT4…INT128, Q-формат, BCD

MlLowPrecision

7

bfloat16, TF32, FP8 (E4M3/E5M2), FP6, FP4

Ieee754Binary

5

binary16/32/64/128/256

Theoretical

4

minifloat, Unum I/II, tapered FP

Lns

4

логарифмические LNS-8…64

CompressionTrick

4

block FP, shared-exponent, per-channel scale, stochastic rounding

Microscaling

3

MXFP8/6/4 (общая экспонента E8M0) (Rouhani 2023)

Ieee754Decimal

3

decimal32/64/128

ExtendedFloat

3

x87 FP80, double-double, quad-double

QuantTuned

2

NF4 (Dettmers 2023), AFP

Разрядность охватывает диапазон от 2 бит (балансная троичность GFTernary) до 1024 бит (GF1024 — крайняя ступень φ-лестницы). Каждая строка несёт не только s/e/m/bias, но и поле phi_distance — насколько разбиение формата близко к тому, что диктует золотое сечение через тождество φ² + φ⁻² = 3.

Важная оговорка про слово «golden». Это стандартный отраслевой термин — эталонное значение, с которым сравнивают результат (как эталонный метр в палате мер и весов). Его используют NVIDIA, Intel, все инженеры HDL и ML. Это не моё изобретение и не чьё-то ещё — каталог просто говорит на том же языке.

Статус-метки: главная честность каталога

Если бы я ставил одну вещь в центр всего проекта — это была бы дисциплина статус-меток. Каждый формат в каталоге несёт честный ярлык того, насколько он проверен:

Статус

Кол-во

Что означает

Verified

51

Проверен против эталона (стандарт или ml_dtypes)

Historical

12

Исторический формат (IBM, VAX, Cray…), для полноты

Experimental

11

Спека + частичная реализация, без полного покрытия

Open

9

Только спецификация, выведенная из правила; без RTL

Вот это — суть. И здесь проходит самая важная честная граница каталога: где правило e = round((N−1)/φ²) ещё является работающим железом, а где оно уже становится гипотезой. GF16 проверен вплоть до кремния (FPGA 35/35 тестов, 323 МГц на Artix-7, кремниевый якорь). Для ступеней GF48…GF256 написан RTL, но кремния под ними нет. А GF512 и GF1024 — это уже чистая экстраполяция правила: у них в SSOT прямо стоит пометка (extrapolation, no RTL), и я не делаю вид, что они проверены. Подробно эту лестницу зрелости я разбираю ниже.

Эта честность стоит дороже, чем красивые цифры. В каталоге значение 0.1 в bfloat16 показано с ненулевой ошибкой — потому что 0.1 в bf16 не представимо точно. Прятать это означало бы испортить саму линейку.

Граница RTL: где правило перестаёт быть железом

Это самая честная часть статьи. φ-семейство построено на одном правиле: для ширины N бит число бит экспоненты e = round((N−1)/φ²), мантисса m = N − 1 − e, сдвиг bias = 2^(e−1) − 1. Правило красивое и применимо к любой ширине. Но «формат описан правилом» и «формат работает в железе» — это разные уровни зрелости, и я не имею права их путать.

Вот лестница зрелости φ-ступеней — ровно так, как она есть в репозиториях сегодня:

Уровень зрелости

Ступени

Что реально есть

Проверено вплоть до кремния

GF16

RTL + FPGA 35/35 @ 323 МГц + кремниевый якорь gf16_v2_mul.v

RTL + бенчмарк (Verified)

GF8, GF12, GF32, GF64

файлы _add.v / _mul.v + измерения

RTL написан, кремния нет (Open / Exp)

GF6, GF10, GF14, GF20, GF24, GF48, GF96, GF128, GF256

_add.v / _mul.v существуют (сумматор GF256 ≈ 939 строк Verilog); тесты местами

Чистая экстраполяция, RTL НЕТ (Open)

GF512, GF1024

только спека; файлов gf512* / gf1024* в RTL нет

Главный честный парадокс здесь — GF1024. По метрике близости к φ это лучшая ступень лестницы (phi_distance ≈ 0.0006), и именно она наименее проверена: ни одной строки Verilog. В SSOT её use_case буквально записан как (extrapolation, no RTL). Красивая метрика не повышает уровень зрелости — и каталог это показывает, а не прячет.

И RTL, который есть, — не декорация. Умножитель GF256 в начале июня переписали после реального бага: произведение мантисс было на 2 бита у́же, чем нужно, и 1.0 × 1.0 давало 0.5. Это нашли, потому что под форматом есть железо, которое можно прогнать. Под GF512/GF1024 такого железа пока нет — поэтому они и помечены честно.

Якорь 0x47C0: одна точка проверки на всех

У каталога есть единая «реперная точка». Она вытекает из того же тождества: φ² + φ⁻² = 3 = L₂ (второе число Люка). Если посчитать dot4(1, 2, 3, 4) в формате GF16, бит-в-бит получается значение с отпечатком 0x47C0. Этот якорь проносится без изменений через все реализации — от JSON-векторов до RTL-декодеров на кремнии (проект Corona). Любое расхождение в этой одной точке означает, что где-то линейка сбита.

Это механическая проверка «одинаковости», а не доказательство превосходства. И тут важная оговорка, которую я держу жёстко: φ-семейство заслуживает место в каталоге широтой охвата и связностью тулчейна, а не тем, что каждая ступень бьёт конкурента. takum (Hunhold, 2024) — стоящий контрпример, и он не спрятан: он лежит в каталоге рядом со всеми.

Линейка, кластеры, якорь 0x47C0

Линейка, кластеры, якорь 0x47C0

Связь с IEEE P3109

Рабочая группа IEEE P3109 стандартизирует семейство 8-битных форматов для машинного обучения. В каталоге есть cross-walk — одностраничная карта, которая сопоставляет семейство P3109 binary8 (p1…p7) с индексами каталога. Это не заявление о соответствию стандарту — это справочник для разработчиков, который сама рабочая группа может проверить и поправить. Там, где есть расхождение, каталог уступает Lean-формализации FLoPS (arXiv:2602.15965).

Это сознательная позиция: входить не с требованием «примите нас», а с проверяемой информацией, которую можно сверить.

Что это даёт на практике

Самое прямое применение — арбитр при расхождении точности. Когда один и тот же расчёт даёт разные результаты на двух устройствах (классическая боль: PCC падает с 0.99 до 0.93 при другой блокировке редукции), бит-точный эталон формата отвечает на вопрос «чей результат корректен» механически, а не на глаз.

Второе применение — кодоген под новое железо. Из одной спеки выводятся декодеры на нужном языке, включая RTL. Цепочка SSOT → кодоген → RTL → кремний целиком механическая; CI-гейт rom_readback ловит любое расхождение между спекой и тем, что реально лежит в ПЗУ декодера на чипе.

Третье — общий словарь. Когда вы и ваш собеседник из другой команды называете один и тот же формат одинаково, с одинаковой разрядкой и одинаковым поведением на границах, исчезает целый класс споров «у нас не так».

Честные ограничения

Чтобы статья не превратилась в рекламу, перечислю прямо:

  • Проверка кремнием — пока только GF16. Для GF48…GF256 RTL написан, но не в кремнии; GF512 и GF1024 — чистая экстраполяция правила без RTL. Самая близкая к φ ступень (GF1024) — наименее проверенная.

  • Кремний Corona — это законченный дизайн (RTL + GDS + формальная верификация + cocotb), а не отлитый чип. Проверено в симуляции и формально; кремний впереди.

  • φ-семейство не заявлено как «лучше всех». Место в каталоге — за широту и связность, не за победу по каждой ступени. takum в каталоге как стоящий контрпример.

Каталог — это инструмент и дисциплина, а не финальное слово. Линейка хороша ровно настолько, насколько честны её насечки — поэтому я и показываю, где они сейчас сбиты.


Источники и материалы:

Аффилиация: Trinity S³AI (независимый исследовательский коллектив). ORCID: 0009-0008-4294-6159. Контакт: admin@t27.ai (асинхронно).