ПОРТИРОВАНИЕ и МИГРАЦИЯ ПО

Мы переносим на новые технологии как целые ИТ-системы, так и отдельные компоненты

Это может быть переход как на другие аппаратные платформы, так и на другие программные технологии. В процессе перехода мы выявляем «узкие» места, где падает производительность,  проводим оптимизацию с учетом возможностей выбранных платформ и технологий. Также обеспечиваем  техническую документацию, проводим обучение технических специалистов по развертыванию ПО. Можем обеспечивать постоянную техподдержку портированного ПО.

Примеры реализованных проектов:

Миграция БД корпоративной ИТ-системы (Москва, 2018)

Перенос базы данных с Oracle на PostgreSQL с максимальным сохранением бизнес-логики, реализованной на уровне СУБД, которая взаимодействует с бэк-ендом, реализованным на Java. Сделано также множество оптимизаций.

Технологии: СУБД Oracle, СУБД PostgreSQL, Ora2Pg

Портирование и оптимизация математических библиотек для платформы «Эльбрус» (МЦСТ, с 2015)

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

  • OpenCV –библиотека компьютерного зрения. Специфические оптимизации существенно улучшили производительность: например, при  вычислении функции  GEMM  (умножение матриц) процессор Эльбрус с 800 МГц обгоняет  процессор Intel х86 с 3.4 ГГц на 20%
  • EML -  библиотека математических функций
  • LibreSSL – библиотека шифрования
  • Библиотека функций цифровой обработки сигналов для специализированного сопроцессора DSP
Портирование и оптимизация программных технологий для платформы "Эльбрус" (МЦСТ, с 2012)

Для российской аппаратной платформы, на основе которой выпускаются российские процессоры "Эльбрус", сделано портирование нескольких очень популярных программных платформ на основе открытых проектов.  Это позволило запускать на "Эльбрусах" программные приложения и системы, которые работают на основе Java, JavaScript и С#. При этом некоторые компоненты этих технологий реализованы с нуля. Также проведено множество оптимизаций, которые многократно улучшили производительность. Работа по этим направлениям продолжается, подробности здесь:

  • Виртуальная машина Java на основе проекта OpenJDK; выпущено уже более 10 последовательных версий
  • Виртуальная машина языка JavaScript на основе двух "движков" - V8 из браузера Chrome  и SpiderMonkey из браузера FireFox
  • Реализация поддержки языка C# на основе проекта Mono
Миграция компонентов корпоративной системы управления проектами (EU, с 2007)

В рамках реинжиниринга большого коммерческого пакета по корпоративному управлению проектами реализованы:

  • Перенос пользовательского интерфейса с языка C и Win32 API на язык Java и библиотеку SWT
  • Реинжиниринг приложения, написанного с использованием устаревшего (1997 г) пакета Visual Prolog v4.1 до современного уровня через трансформацию проприетарного расширения языка к современному стандарту с последующей генерацией Java кода. Как следствие произошло расширение поддерживаемых платформ для бэк-енда до Win/Linux x32/x64.

 Технологии: С, Java, Prolog, SWT