Hacker News Digest

Обновлено: 23 ноября 2025 г. в 21:40

Постов: 4469 • Страница 218/447

Tuning async IO in PostgreSQL 18 (vondra.me)

В PostgreSQL 18 появилась поддержка асинхронного ввода-вывода (AIO), что позволяет эффективнее использовать хранилище. Основные параметры для настройки — io_method и io_workers. По умолчанию io_method = worker использует пул процессов для выполнения операций ввода-вывода, что обеспечивает кроссплатформенность и стабильность. Альтернатива io_uring эффективнее, но работает только на Linux и может быть недоступна в некоторых контейнерах из-за проблем безопасности.

Значение io_workers = 3 слишком консервативно для серверов с большим количеством ядер. Рекомендуется увеличивать его пропорционально числу CPU, особенно для интенсивных рабочих нагрузок. Например, на системе с 64 ядрами можно установить 16–32 воркеров. Важно тестировать настройки под конкретную нагрузку, так как универсального решения нет.

by fanf2 • 29 сентября 2025 г. в 11:42 • 82 points

ОригиналHN

#postgresql#async-io#io-uring#zfs#azure

Комментарии (12)

  • Ожидание тестирования новой функции async I/O на базах данных в Azure с использованием ZFS для повышения производительности последовательного сканирования.
  • Обсуждение выбора метода worker по умолчанию вместо io_uring из-за его универсальности и проблем безопасности с io_uring в некоторых средах.
  • Вопрос о причинах более низкой производительности io_uring в сравнении с worker в некоторых бенчмарках и является ли это ошибкой или ограничением технологии.
  • Дебаты о целесообразности использования CoW-файловых систем (например, ZFS, btrfs) для Postgres и сжатия на уровне ФС против встроенного сжатия СУБД.
  • Уточнение, что новая функция async I/O сейчас применяется только для последовательных и bitmap-сканирований, но не для индексных.

What if I don't want videos of my hobby time available to the world? (neilzone.co.uk) 🔥 Горячее 💬 Длинная дискуссия

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

Он отвергает аргумент «не хочешь — не появляйся в публичных пространствах», подчёркивая, что частное хобби на закрытой площадке — не то же самое, что уличная съёмка. Ключевой вопрос этический: возможность публикации не означает её моральной оправданности. Автор выступает за более осознанный подход к консенсусу, например, через систему опознавательных знаков для тех, кто против съёмки.

by speckx • 29 сентября 2025 г. в 11:28 • 596 points

ОригиналHN

#privacy#german-law#consent#ethics#surveillance#airsoft

Комментарии (639)

  • Участники обсуждают конфликт между правом на приватность в общественных местах и свободой съемки, отмечая разные культурные и поколенческие взгляды на эту проблему.
  • Поднимается вопрос о необходимости явного согласия на публикацию изображений людей, особенно детей, и приводятся примеры законодательства разных стран (например, Германии), где это требуется.
  • Высказываются опасения по поводу массового распространения видеоконтента и автоматизированного surveillance, а также потенциальных рисков, таких как использование материалов в коммерческих целях или для создания компрометирующих подборок.
  • Предлагаются практические решения: от личных просьб не снимать и поиска сообществ с запретом на съемку до законодательных инициатив по введению opt-систем (например, QR-кодов) и судебных разбирательств.
  • Отмечается, что в конкретном случае с airsoft проблема смягчается ношением масок, но это не отменяет общих этических и юридических дилемм.

DeepSeek-v3.2-Exp (github.com) 🔥 Горячее

DeepSeek AI выпустила экспериментальную версию своей языковой модели DeepSeek-V3.2-Exp. Это обновление демонстрирует улучшенные возможности обработки естественного языка, включая более точное понимание контекста и генерацию кода. Модель оптимизирована для разработчиков и исследователей, предлагая расширенную поддержку программирования и анализа данных.

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

by meetpateltech • 29 сентября 2025 г. в 10:26 • 271 points

ОригиналHN

#deepseek#deepseek-v3.2-exp#natural-language-processing#code-generation#sparse-attention#caching#openrouter#github

Комментарии (41)

  • Обсуждается значительное снижение стоимости моделей ИИ, особенно у DeepSeek, с акцентом на важность доступности для широкого распространения технологий.
  • Поднимаются вопросы о технических особенностях моделей (sparse attention, кэширование) и их влиянии на производительность и стоимость вычислений при больших контекстных окнах.
  • Участники спорят о реальной выгоде "дешевых" моделей в рабочих процессах, учитывая необходимость поддержки кэширования провайдером для снижения затрат.
  • Высказываются предположения о дальнейшей динамике цен на ИИ, ссылаясь на возможное продолжение стремительного падения стоимости по аналогии с законом Мура.
  • Обсуждается открытость и прозрачность платформ (OpenRouter, DeepSeek), включая вопросы о использовании данных для обучения и статусе исходного кода.

Optimizing a 6502 image decoder, from 70 minutes to 1 minute (colino.net)

Изначальный алгоритм декодирования изображений с камеры Quicktake 150 на процессоре 6502 работал 70 минут. Основная проблема — сложный формат сжатия на основе кодирования Хаффмана и 16-битной математикой, что крайне неэффективно для 8-битного процессора.

Оптимизация началась с отказа от декодирования цвета, поскольку итоговое изображение было монохромным. Это сократило обработку только до зелёных пикселей матрицы Байера. Далее удалили ненужные буферы и промежуточные шаги, включая интерполяцию, что уменьшило размер вывода до 320×240. В итоге остался лишь один используемый буфер из трёх. Эти изменения сократили количество инструкций с 301 млн до 25 млн, а время декодирования — до минуты. Ключевой вывод: алгоритмическая оптимизация даёт больший выигрыш, чем низкоуровневая оптимизация кода.

by davikr • 29 сентября 2025 г. в 10:11 • 181 points

ОригиналHN

#6502#image-decoding#huffman-coding#algorithm-optimization#low-level-programming#bayer-filter#performance-optimization

Комментарии (28)

  • Обсуждение визуального парадокса: изображение с чередующимися черными пикселями кажется более четким, чем изображение без них, несмотря на одинаковый объем информации.
  • Ностальгия по низкоуровневому программированию и работе с аппаратными ограничениями (память, скорость) как к refreshing практике для инженеров.
  • Технические гипотезы о причинах визуальных артефактов (масштабирование браузером, адаптивная подсветка, HDR-режим).
  • Критика современного ПО: несмотря на миллионократный рост мощности hardware, воспринимаемая скорость и отзывчивость интерфейсов часто снизились.
  • Идея о необходимости целенаправленной оптимизации кода для повышения эффективности, возможно, с использованием ИИ.

Bad Apple but it's played inside Super Mario Bros (tasvideos.org)

В Super Mario Bros. для NES реализовано произвольное исполнение кода (ACE) через манипуляции с игровым состоянием. Используется старт на уровне 'N' для инициализации объекта C9, который перезаписывает память и позволяет выполнять пользовательский код. В демонстрации воспроизводится видеоклип Bad Apple!! с синхронизированным звуком через контроллер, преобразуя музыку в нажатия кнопок. Для графики применяется эффективное кодирование кадров в тайлы NES с оптимизацией через пакеты данных. Эмулятор BizHawk 2.9.1 обеспечивает точность, включая работу с "открытой шиной", что подтверждено запуском на реальной консоли. Достигнуты полное прохождение, максимальный счёт и время 4:52.65.

by carlesfe • 29 сентября 2025 г. в 09:34 • 185 points

ОригиналHN

#nes#emulation#tas#rom#audio#vector-quantization#bizhawk#apple

Комментарии (24)

  • Аудио на NES стримится через контроллер с помощью миллионов быстрых нажатий кнопок (5.8 млн), что является формой векторного квантования.
  • Воспроизведение требует модифицированного ROM или ручной настройки памяти для загрузки кода, но возможно на реальном железе.
  • Частота аудиострима достигает ~25 кГц, периодически снижаясь до ~9 кГц при обработке видео.
  • Полный файл TAS (~16 МБ) значительно превышает объем RAM NES (4 КБ), поэтому данные стримятся в реальном времени.
  • Результат впечатляет качеством звука, сохраняя аутентичный 8-битный стиль, особенно в басах.

Consistent hashing (eli.thegreenplace.net)

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

При изменении количества узлов перемещаются только данные, попадающие в зону между старыми и новыми узлами — примерно M/N элементов вместо всех M. Это обеспечивает стабильность системы: например, при выходе узла из строя его нагрузка равномерно распределяется между соседями, а не вызывает каскадный сбой. Алгоритм широко применяется в кеширующих прокси, распределённых базах данных и CDN для минимизации дисбаланса при масштабировании.

by zoidb • 29 сентября 2025 г. в 08:16 • 77 points

ОригиналHN

#consistent-hashing#distributed-systems#caching#cdn#rendezvous-hashing#clojure

Комментарии (21)

  • Предложено использовать rendezvous hashing как более простую и универсальную альтернативу consistent hashing, не требующую виртуальных узлов и поддерживающую взвешенное распределение.
  • Упомянуты различные реализации и применения хеширования: CRUSH в Ceph, Lamping-Veach алгоритм, кеш-ориентированная версия для SSD, простая реализация на Clojure.
  • Обсуждаются стратегии минимизации перераспределения данных при изменении числа узлов: увеличение числа партиций, метод "power of 2 choices", кластеризация в rendezvous hashing.
  • Отмечена опечатка в заголовке исходного поста ("Constitent" вместо "Consistent") и дан совет по её исправлению.
  • Затронута историческая справка об основателе Akamai Дэниеле Люине и его трагической судьбе.

Google appears to have deleted its political ad archive for the EU (thebriefing.ie)

Google удалила архив политической рекламы в ЕС, уничтожив данные за семь лет — с 2018 года. Исчезла информация о расходах, таргетинге и сообщениях партий и кандидатов на YouTube, в поиске и дисплейной рекламе во время выборов в 27 странах. Ранее Google анонсировала запрет на политическую рекламу, но о стирании архива не предупреждала.

Теперь доступны только данные по США, Великобритании, Индии и нескольким другим странам, но не по ЕС. Поиск по ключевым словам или партиям (например, Sinn Féin, тратившая до €10 тыс. в день) возвращает ноль результатов. Архив создавался после скандалов вокруг Brexit и выборов Трампа для прозрачности и исторической фиксации кампаний. Его удаление подрывает подотчётность, память и демократические процессы.

by doener • 29 сентября 2025 г. в 07:57 • 205 points

ОригиналHN

#google#political-advertising#eu-regulations#bigquery#data-archiving#data-transparency

Комментарии (99)

  • Пользователи критикуют ожидание, что корпорации (вроде Google) бесплатно и вечно архивируют данные, и подчеркивают личную ответственность за сохранение важной информации.
  • Высказывается предположение, что удаление архива политической рекламы связано с новыми регуляциями ЕС и желанием Google избежать рисков и издержек.
  • Отмечается, что Google заработал на этой рекламе, и его решение удалить архив, когда он стал невыгоден, воспринимается как циничное.
  • Обсуждается роль крупных tech-компаний как де-факто хранителей цифрового пространства и возможная необходимость государственного регулирования их архивной политики.
  • Приводятся технические детали: данные ещё доступны в BigQuery в течение 7 дней, и участники призывают сообщество к их срочному сохранению.

Queueing to publish in AI and CS (damaru2.github.io)

Система публикаций в ИИ и CS с низким фиксированным процентом принятия работает как очередь: авторы бесконечно пересылают отклонённые работы. Модель показывает, что снижение acceptance rate с 35% до 20% почти не отсеивает больше плохих статей — их доля среди заброшенных растёт лишь с ~60% до ~77%. Зато резко увеличивается нагрузка на рецензентов (на 46%) и число забракованных средних работ — с ~4% до ~24%.

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

by damaru2 • 29 сентября 2025 г. в 07:50 • 83 points

ОригиналHN

#llm#cs#research#publication#peer-review

Комментарии (48)

  • Проблема массового использования ИИ для генерации низкокачественных и даже фальшивых статей, нагружающих систему рецензирования.
  • Кризис системы научных конференций: перегруженность, низкое качество рецензий, физические ограничения на число участников.
  • Системные искажения: карьера учёных зависит от количества публикаций в престижных журналах, а не от реального вклада в науку.
  • Предлагаются решения: введение платы за подачу статей, изменение системы оценки исследователей, создание новых конференций.
  • Общее ощущение, что текущая модель поощряет «гонку на дно» в ущерб качеству и глубине исследований.

What is “good taste” in software engineering? (seangoedecke.com) 🔥 Горячее 💬 Длинная дискуссия

Хороший вкус в разработке — это не техническое умение, а способность выбирать набор инженерных ценностей, подходящих конкретному проекту. В отличие от навыков, которые можно развить учёбой и практикой, вкус формируется через личный опыт и предпочтения. Например, одни разработчики ценят читаемость кода с map и filter, другие — производительность for-циклов, и это различие отражает их приоритеты, а не уровень компетенции.

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

by olayiwoladekoya • 29 сентября 2025 г. в 06:41 • 302 points

ОригиналHN

#software-engineering#software-development#best-practices#code-readability#performance#scalability

Комментарии (208)

  • Обсуждение определяет "хороший вкус" в разработке как способность выбирать оптимальные решения, основанные на контексте и требованиях проекта, а не на личных предпочтениях.
  • Участники подчеркивают, что хороший вкус тесно связан с опытом, гибкостью, умением аргументировать выбор и предвидеть последствия решений для поддержки и масштабирования.
  • Многие отмечают, что хороший вкус — это баланс между читаемостью, производительностью, простотой и соответствием бизнес-целям, а не слепое следование догмам или модным тенденциям.
  • Спорным остается вопрос, является ли "вкус" субъективным эстетическим понятием или его можно формализовать через принципы инженерии (например, поддерживаемость, ясность, минимальная сложность).
  • Некоторые видят корень проблемы в смешении объективно плохих решений (например, неэффективные алгоритмы) и субъективных предпочтений (стиль кода, выбор парадигм).

Zero ASIC releases Wildebeest, the highest performance FPGA synthesis tool (zeroasic.com)

Компания Zero ASIC выпустила Wildebeest — инструмент синтеза для FPGA с рекордной производительностью, который впервые в opensource-сообществе сокращает разрыв в качестве результатов (QoR) с проприетарными аналогами. Ключевые инновации включают адаптацию алгоритмов синтеза под размер схемы, использование передовых команд abc9 для минимизации глубины логики и опору на обширный бенчмарк-набор из 150+ тестов. Разработку возглавил Тьерри Бессон, привнёсший 30-летний опыт создания коммерческих решений.

Wildebeest демонстрирует превосходство над ведущими коммерческими и opensource-инструментами: например, для picorv32 он использует на 20% меньше LUT, чем лучший проприетарный конкурент, при сравнимой глубине логики. Проект развивается при поддержке сообщества через открытый бенчмарк LogikBench, а в планах — дальнейшее улучшение QoR для полного преодоления технологического отрыва коммерческих инструментов.

by stefanpie • 29 сентября 2025 г. в 03:45 • 173 points

ОригиналHN

#fpga#synthesis#opensource#yosys#benchmarks#logic-synthesis#asic#picorv32#logikbench

Комментарии (45)

  • Открытые инструменты синтеза ценятся за отсутствие громоздких сред разработки, в отличие от проприетарных решений.
  • Новый плагин для Yosys представлен как отдельный инструмент, но вызывает вопросы из-за ограниченной поддержки архитектур и отсутствия интеграции с основным проектом.
  • Результаты бенчмарков подвергнуты критике за некорректное сравнение разных архитектур FPGA (LUT6 vs LUT4) и отсутствие данных о реальных устройствах.
  • Открытые инструменты всё ещё отстают от проприетарных из-за отсутствия документации по битстримам и маршрутизации для популярных FPGA.
  • Снижение логической глубины не всегда ведёт к повышению частоты, так как ключевым фактором задержки часто является маршрутизация, а не логика.