Ответ 1
Есть ли конкретная причина, по которой вы просите "использует OpenGL ES 2.0 под обложками?" Или вам просто нужна быстрая библиотека аппаратной оптимизации линейной алгебры, такая как BLAS, которая встроена в iOS?
Кто-нибудь знает библиотеку линейных алгебр для iOS, которая использует OpenGL ES 2.0 под обложками?
В частности, я ищу способ сделать матричное умножение на матрицах произвольного размера (например, намного больше, чем 4x4, больше как 5000 × 100 000), используя графические процессоры на устройствах iOS.
Есть ли конкретная причина, по которой вы просите "использует OpenGL ES 2.0 под обложками?" Или вам просто нужна быстрая библиотека аппаратной оптимизации линейной алгебры, такая как BLAS, которая встроена в iOS?
MetalPerformanceShaders.framework предоставляет некоторые настроенные BLAS-подобные функции. Это не ГЛЕС. Он металлический и работает на графическом процессоре. См. MetalPerformanceShaders/MPSMatrixMultiplication.h
OpenGL на iOS - это, вероятно, неправильный путь. Металлическая поддержка на iOS была бы лучшим способом, если вы собираетесь использовать GPU.
Apple, согласно разговору WWDC 2014 Что нового в Accelerate Framework, вручную настроил библиотеки линейной алгебры, предназначенные для их текущего поколения аппаратное обеспечение. Они не просто быстры, но энергоэффективны. Есть и новые переговоры.
Вы можете использовать поддержку Apple для шейдеров Metal Compute. Я написал высокопроизводительный код для моего доктора философии. Ранний эксперимент, который я сделал для вычисления фракталов использующих Metal, может дать вам несколько идей начать
В конечном счете, этот вопрос слишком широк. На что вы собираетесь использовать библиотеку или как вы собираетесь ее использовать? Это однократное умножение? Вы тестировали с текущими библиотеками и обнаружили, что производительность слишком медленная? Если да, то насколько?
В общем, вы можете запускать образовательные или чисто информационные эксперименты по выполнению алгоритма X по процессору против графического процессора или специализированного оборудования, но чаще всего вы сталкиваетесь с Закон Amdahl и ваш код против команды экспертов в этой области.