У меня есть платформа на базе ARM с ОС Linux. Хотя его набор инструментов на основе gcc поддерживает как hardfp, так и softfp, поставщик рекомендует использовать softfp, и платформа поставляется с набором стандартных библиотек и библиотек, связанных с платформой, которые имеют только версию softfp.
Я делаюинтенсивный для вычислений (NEON) AI-код на основе OpenCV и tenorflow lite. Следуя руководству поставщика, я создал их с опцией softfp. Тем не менее, у меня есть ощущение, что мой код недостаточно эффективен по сравнению с другими похожими платформами hardfp.
Зависит ли производительность кода от настроек softfp / hardfp? Правильно ли я понимаю, что все файлы .o и .a, которые компилятор создает для сборки моей программы, также используют соглашение softfp, которое менее эффективно? Если да, есть ли какие-нибудь хитрые способы использовать соглашение о вызовах hardfp внутри, но softfp для внешних библиотек?