Архив по категории: Дневники разработчика

В данной рубрике публикуются заметки о процессе разработки

Мар 24 2017

Обработка исключений: SjLj vs SEH

В рамках подготовки к релизу CFW 0.8 была осуществлена небольшая переработка обработки исключений в СRTL и CSRTL. После проведения работ было решено провести сравнение скорости получившихся реализаций с реализацией из стандартной RTL FPC, а также сравнить между собой два подхода к реализации обработки исключений SjLj (используемых FPC в Unix системах) и SEH (обязательный для Win64).

Читать далее »

Окт 06 2016

Результаты переработки многопоточной реализации генерации простых числе для RSA и DH

Ещё весной, во время реализации DHE, я обратил внимание на плохую масштабируемость генерации ключей, хотя в теории этот процесс должен параллелиться почти идеально. Получалось же что RSA хоть как-то параллелиться до 4-х потоков, а DH вообще до 2-х. После небольшого расследования причин и соотв. переработки алгоритмов было произведено небольшое тестирование: среднее время генерации ключа на …

Читать далее »

Июн 05 2016

Разработка Cat Server Platform разморожена

Наконец-то возобновились работы над CSP и прояснились перспективы её дальнейшего развития. В первую очередь это вызвано началом глубокой переработкой внутренней инфраструктуры Cat Company. Текущая инфраструктура (как аппаратная, там и программная её части) была заложена в 2011 году и с тех пор получала лишь косметические изменения. А некоторые концептуальные подходы к организации обеспечения работы и вовсе …

Читать далее »

Фев 17 2016

Работа над протоколом SNT/IP и его реализацией завершена

Недавно была завершена работа над сетевым протоколом SNT/IP (часть компонента SkyNT), разрабатываемым для Sky Engine 2, его референсной реализацией и эмулятором сети для её тестирования и отладки. Полученные характеристики протокола хоть и оказались несколько хуже ожидаемых при начале работы, но вполне приемлемые:

Читать далее »

Янв 18 2016

О результата тестирования сети при разработке протокола SNT/IP

Ещё в мае 2012 года я начал небольшой R&D проект по созданию сетевого протокола для нужд MMORPG с no-target системой боя. Теоретическая часть была почти закончена ещё в 2012 году, но дальше проект был заморожен из-за наличия более приоритетных задач. И вот в начале декабря 2015 года работы над ним были возобновлены.

Читать далее »

Дек 24 2015

Небольшое тестирование TSX

Производительность в миллионах операций в секунду различных алгоритмов в однопоточном режиме.

Некоторое время назад ко мне в руки попал компьютер на базе Intel XEON D-1540 с поддержкой расширения TSX. Я давно уже хотел устроить хотя бы небольшое тестирование этого расширения, т.к. оно выглядит крайне интересно. Причём интерес вызывает как “бесплатная оптимизация” многопоточных приложения через HLE-префиксы (тем более что она не ломает обратную совместимость кода), так и …

Читать далее »

Май 31 2015

Работа над аудио-микшером движка завершена

Недавно была завершена работа над аудио-микшером движка SkyEngine2 (не путайте аудио-микшер с аудио-рендером). При разработке микшера ставились следующие задачи: Все звуки и музыка должны иметь частоту дискретизации в 48KHz и разрядность в 16 бит Микширование должно производиться в формате Float32 Возможность воспроизведения фоновой музыки с плавной сменой музыкальных тем Отсутствие необходимости удерживать в оперативной памяти …

Читать далее »

Мар 09 2015

0.6RC для Cat Framework + Cat Server Platform

После 4-х месяцев разработки Cat Framework + Cat Server Platform они выходят на release candidate в версию 0.6. Все необходимые изменения для версии 0.6 сделаны, но её релиз задерживается из-за необходимости быть полностью уверенными в качестве кода, т.к. возможно этот код будет использоваться в коммерческом продукте. В рамках работы над версией 0.6 была проведена значительная …

Читать далее »

Окт 16 2014

Выложил ряд старых демок

В рамках большого наведения порядка в хранимых данных нашёл целый ряд старых демок. Вот и решил выложить их, чтобы не потерялись: Magelan (05.2006) – про неё есть отдельный пост, кроме того для неё выкладываю исходники, но больше как пример того, как программировать не надо ни в коем случае Megatexture (17.01.2011) – тестирование одной реализации мегатекстуры …

Читать далее »

Июл 20 2014

Вывод изображения на экран в SkyLA

Для формирования изображения окна запускающего приложения SkyLA использует внутренний софтварный рендер, в том числе и шрифтов. Далее уже сформированное во внутреннем буфере изображение передаётся операционной системе для вывода на экран. Такое решение позволяет полностью не зависеть от операционной системы в вопросе подготовки изображения, в том числе от наличия шрифтов и кодировки символов. Однако в работе …

Читать далее »

Предыдущие сообщения «