Программный SIMD ускоритель
Стартап проект представляет собой разработку программного обеспечения, позволяющего ускорить процессы арифметически-логических вычислений благодаря использованию технологии SIMD на процессорах общего назначения (центральных процессорах пользовательских компьютеров). Программное обеспечение представляет собой «умную» прослойку между низкоуровневыми технологиями многопоточных вычислений и пользователем, позволяя использовать преимущества многопоточных вычислений, не вдаваясь в подробности реализации. В качестве пользователя выступает разработчик.
Проблема
Проблема скоростей моделирования в настоящее время имеет важное значение во многих направлениях технологической деятельности. В силу того, что конечный производственный продукт может быть сложным в производстве и порой нет возможности получить опытный образец, разработчики прибегают к моделированию с помощью соответствующих систем автоматизированного проектирования, позволяющим симулировать их поведение в реальном мире. Так, прежде чем начать производство антенн, двигателей, самолетов или телекоммуникационных систем, воспроизводятся их модели.
Часто, приходится совмещать различные системы поскольку они взаимодействуют друг с другом, или же, тестируемая система является многокритериальной. Такие условности делают моделирование очень трудозатратным процессом с точки зрения вычислений, на их воссоздание могут потребоваться недели или даже месяцы.
В силу актуальности разработки отечественного ПО, в частности САПР, важно, чтобы такое ПО как минимум не уступало зарубежным аналогам, и более того, обладало конкурентными преимуществами в сравнении с ними.
Рассмотрим САПР SimInTech. Это программное обеспечение позволяет моделировать сложные системы(например телекоммуникационные системы и влияние на них температур). Однако данное САПР не лишено минусов. Одним из них является скорость моделирования. Например, при моделировании телекоммуникационных систем с любым потоком высокоскоростных сигналов, время моделирования может достигать неприемлемых значений.
Решение
Разрабатываемый продукт может решить проблему скоростей моделирования путем использования технологии SIMD в процессорах общего назначения. Использование многопоточных вычислений многократно сократит время вычисления арифметических операций.
Ключевыми технологическими параметрами ПО являются:
* Формат – динамическая библиотека(с расширением dll). Является встраиваемой и кросс платформенной, другими словами может быть использована для разработки под операционную систему LINUX или Windows.
* Типы процессоров – даст выигрыш на процессорах в архитектуре которых заложена технология SIMD. Использование на процессорах без этой технологии повлечет использование в штатном режиме. Таким образом использование библиотеки будет унифицировано и может быть задействовано на любой машине.
* Максимальной длинной обрабатываемого вектора является AVX регистр в 512 бит. Максимальное по количеству загружаемое число значений – 64. Таким образом максимальный выигрыш по вычислению одного массива может составить 64 раза. На деле ожидается выигрыш по вычислению операций над массивом до 8 раз с разрядностью чисел floating point(8 байт).
* В качестве базового списка разрабатываемых команд присутствует: умножение деление вычитание сложение нахождение косинуса, синуса, тангенса, степеней числа.
