Android ARMv6 / v7 и VFP / NEON

Я хотел бы больше узнать о процессорах, используемых в телефонах Android. Причина в том, что мы создаем библиотеку C, которая имеет определенные флаги архитектуры процессора / математического процессора, которые мы можем установить.

  1. На данный момент мы обнаружили, что все процессоры Android-устройств являются процессорами ARM и являются либо ARMv6 (старые устройства, младшие классы, Huawei, ZTE, small SE), либо ARMv7 (Honeycomb планшеты и все более дорогие устройства, почти все с разрешением WVGA и выше) Я проверил ~ 20 устройств, и у всех есть процессор этого типа. Это правильно? Есть ли другие?

  2. Теперь, когда дело доходит до мультимедийных и математических операций, я думаю, что важны два модуля - VFP для арифметики с плавающей запятой и SIMD - NEON . После тестирования вышеупомянутой группы устройств я обнаружил, что поддержка VFP есть почти во всех устройствах, а NEON - нет. Есть комментарии к этому?

  3. Я не знаю, в чем именно разница между ARMv6 и ARMv7 (помимо скорости в целом). Сейчас мы создаем мультимедийную библиотеку C, у которой есть несколько флагов для сборки. Мой вопрос заключается в том, как настроить таргетинг на максимальное количество устройств с одной стороны и как позволить пользователям более совершенных устройств использовать свое оборудование. Мое предложение - подготовить 3 разных сборки: ARMv6 / VFP, ARMv7 / VFP и ARMv7 / VFP / NEON.Другие предложения?

  4. ARMv6 / VFP Я думаю, что он должен работать во всех конфигурациях, кроме устройств, в которых отсутствует VFP (например, старый HTC Wildfire), но они останутся неподдерживаемыми.

Это хороший подход? Любые комментарии приветствуются.

С уважением, STeN

18
задан Tamar E. Granor 28 February 2012 в 21:38
поделиться