Около года назад, в одной из прошлых своих публикаций, я уже вскользь касался темы самой совершенной советской видеоигровой аркадной платформы, ТИА-МЦ1. Недавно поступило предложение рассказать про это поподробнее: какое я имею к ней отношение, как и когда удалось создать её эмулятор для современных ПК, как она устроена, в конце концов. Приступаем!Читать полностью »
Рубрика «ruvds_статьи» - 14
Простой советский геймдев: многокадровый, цветной
2024-08-20 в 13:00, admin, рубрики: 8080, MSX, ruvds_статьи, zx spectrum, видеоигры, городки, игры, Игры и игровые приставки, конёк горбунок, кр580ви53, кр580вм80, кр580ик80, Музей советских игровых автоматов, советские игровые автоматы, советские игры, ТИА-МЦ-1Около года назад, в одной из прошлых своих публикаций, я уже вскользь касался темы самой совершенной советской видеоигровой аркадной платформы, ТИА-МЦ1. Недавно поступило предложение рассказать про это поподробнее: какое я имею к ней отношение, как и когда удалось создать её эмулятор для современных ПК, как она устроена, в конце концов. Приступаем!Читать полностью »
Как подружить PyTorch и видеокарты AMD с помощью pytorch_dlprim
2024-08-20 в 9:00, admin, рубрики: amd, gpu, opencl, pytorch, ruvds_статьиКогда начинаешь изучать или использовать машинное обучение, то думаешь, как приспособить те устройства, которые есть в наличии, чтобы снизить свои траты на вход. И, в частности, обладатели довольно мощных старых карт AMD (типа AMD Fury), на которых легко идут довольно тяжёлые игры типа Cyberpunk 2077 или Atomic Heart, сталкиваются с тем, что эти GPU бесполезны для PyTorch и других фреймворков машинного обучения. Да и самые современные карты AMD 7900-й серии работают с PyTorch только из под Linux. Также есть редкие карты других брендов, типа Intel Arc или китайские, которые хотелось бы использовать для машинного обучения.
Итак, в этой статье я приведу подход, который в некоторых случаях может помочь. Он сыроват, но других работающих вариантов под PyTorch я не нашёл. Итак, речь пойдёт о проекте израильского разработчика Артёма Бейлиса (Тонких) pytorch_dlprim.
Читать полностью »
JPEG XL лучше всех, но Google против
2024-08-19 в 9:00, admin, рубрики: avif, chrome, chromium, FLIF, Google, JPEG XL, JPEG XL Viewer, Jpegli, JXL, libjxl, PNG, ruvds_статьи, WebP, сжатие без потерь, сжатие изображенийJPEG XL превосходит все форматы по уровню сжатия и визуальному восприятию (DSSIM), источник
Оригинальный формат JPEG разработан в далёком 1992 году и уже устарел. Вопрос в том, кто придёт ему на смену. Идеальной заменой казался JPEG XL, в сравнительных тестах он показывает превосходство над AVIF, WebP и другими форматами. Можно было бы сказать, что будущее за JPEG XL, если бы не один нюанс: в 2022 году корпорация Google почему-то удалила его поддержку из браузера Chrome. И не хочет возвращать обратно.
Читать полностью »
Гибкие шестерни
2024-08-18 в 13:00, admin, рубрики: ruvds_статьи, волновая передача, волновой редуктор, гармоническая передача, гармонический редукторВ робототехнических проектах зачастую требуется использование разнообразных редукторов и передач. Слабым местом таких конструкций остаётся их относительная громоздкость и, соответственно, дороговизна.
В этой статье мы поговорим о том, как можно решить этот вопрос наиболее простым способом.Читать полностью »
Виниловый звук. Доработка проигрывателя, сборка лампового усилителя-корректора
2024-08-16 в 9:00, admin, рубрики: ruvds_статьи, винил, винил корректор, виниловые пластинки, виниловые проигрыватели, ламповая техника, ламповые усилители, ламповый звук, ламповый усилитель своими рукамиОтправная точка — преобразование аналогового сигнала (звук) в цифровой, неизбежно приводит к потерям и искажениям, тем более что конечный результат стараются тем или иным способом сделать покомпактнее. Обратный процесс тоже ничего хорошего не добавит. Трагично и поучительно, что и сегодня, для «звуковоспроизведения высокой верности» наиболее близким к оригиналу массовым способом сохранения звукозаписи, как и при царе Горохе, остаётся грампластинка. Читать полностью »
Бомбезная модификация электрогитары типа «Телекастер»
2024-08-15 в 14:00, admin, рубрики: ruvds_статьи, апгрейд, гитара, гитаризм, датчики, звукосниматели, магниты, стратокастер, электрогитараПривет! Исходя из набора предметов на фото, может показаться, что речь пойдёт просто об установке рельсового хамбакера в бриджевую позицию с попутным апгрейдом колковых механизмов, верхнего порожка и ретейнеров.
Однако мне хочется сделать нечто более интересное. Это будет мой авторский вариант нэшвилловской схемы с тремя звукоснимателями и пятипозиционным переключателем, причём оба добавочных промежуточных положения получатся бесшумными, а три стандартных телекастеровских звучания нисколько не пострадают.
Читать полностью »
Авария на М9 в начале июля — я обещал разбор
2024-08-15 в 7:01, admin, рубрики: ruvds_статьи, авария, автономная система, дата-центр, М9, цодВозможно, вы ждали, что мы затолкаем этот косяк под ковёр, как и следовало бы сделать обычному хостинг-провайдеру. Но я обещал рассказать подробнее о причинах простоя.
Итак, оператор связи в дата-центре М9 запланировал техработы с 23:00 4 июля до часу ночи 5 июля по Москве. Предварительно — им нужно было обслужить и при необходимости поменять коммутатор уровня ядра плюс провести ещё ряд сопутствующих работ. Обещали до 2 часов без связи. Для нас это считается простоем (несмотря на то, что виртуальные машины работают и некоторые VDS-хостинги не рассматривают ситуацию без отключения сервера как простой) — мы оповестили своих клиентов, чьи ВМ физически были размещены в этом ЦОДе.
Примерно под конец планового времени простоя дата-центр сообщил про продление работ до 06:00 5 июля, то есть ещё на 5 часов. Уведомить об этом продлении в адекватное время мы не успели, потому что в этот момент как раз и закрутилась история. Читать полностью »
Оптимизация в Python. Эффективное использование модуля threading и asyncio
2024-08-14 в 9:00, admin, рубрики: asyncio, python3, ruvds_статьи, threading, ThreadPoolExecutor, многопоточное программирование▍ Введение
При создании нового приложения с нуля, где основным ограничивающим фактором является производительность ввода-вывода, использование asyncio может быть вполне оправданным выбором. С самого начала можно интегрировать неблокирующие библиотеки, совместимые с asyncio, такие как asyncpg и aiohttp. Однако большая часть работы может быть связана с поддержкой уже существующего кода, который использует блокирующие библиотеки ввода-вывода, например, requests для HTTP-запросов или psycopg для взаимодействия с базами данных Postgres. Кроме того, возможно, что подходящих библиотек, совместимых с asyncio, просто не существует. В таком случае, как можно извлечь выгоду из конкурентных преимуществ, которые предлагает asyncio?
Многопоточность предоставляет решение для данной задачи. Поскольку блокирующие операции ввода-вывода освобождают глобальную блокировку интерпретатора, мы можем выполнять ввод-вывод параллельно в различных потоках. Аналогично библиотеке multiprocessing, asyncio позволяет использовать пулы потоков, что даёт нам все преимущества многопоточности, не отказываясь от таких API, как gather и wait.Читать полностью »
Gameboy Advance — полный гайд по выживанию в 2024 году
2024-08-13 в 13:00, admin, рубрики: gameboy, gba, Nintendo, ruvds_статьи, гайд, Игровые приставки, консоль, модификации, портативная консольКак же поживает консоль детства в 2024 году? Как купить и не напороться на подделку, что же с ней делать, дабы вернуть былой лоск, и как играть в игры, не прибегая к дорогим оригинальным картриджам? Обо всём этом и даже больше я расскажу далее в статье.
Читать полностью »
Магия CSS на практике: советы по вёрстке от гика. Часть 3
2024-08-13 в 9:00, admin, рубрики: css, ruvds_статьи, верстка, лайфхакиЯ снова пришёл к вам со статьёй, где показываю мои любимые техники вёрстки. Моя цель — поделиться опытом с вами. Я использую не только трюки известных экспертов, есть лично мои придумки. Но, пожалуйста, относитесь к этому контенту, как к просто альтернативному мнению. Мои техники не являются единственными правильными решениями.
Сегодня мы рассмотрим:
- подходы при стилизации элементов для вёрстки текста;
- какая может быть проблема с радиокнопками в вашем проекте;
- как задать размеры с использованием функций
min()
иmax()
; - CSS-наследование и свойство
line-height
; - для чего делать подсказки в имени класса.
Давайте посмотрим, что я вам подготовил.