私はiPhone用のライブラリを構築していますが(speex、他の多くのライブラリにも当てはまると確信しています)、makeスクリプトには浮動小数点の代わりに固定小数点を使用するオプションがあります。iPhone用コンパイルの最適化:浮動小数点または固定小数点?
iphone ARMプロセッサにVFP拡張機能があり、浮動小数点計算が非常にうまくいくので、固定小数点オプションを使用する方が良いと思いますか?
誰かが既にこれをベンチマークして共有したいと思ったら、私は本当に彼に感謝します。
私はiPhone用のライブラリを構築していますが(speex、他の多くのライブラリにも当てはまると確信しています)、makeスクリプトには浮動小数点の代わりに固定小数点を使用するオプションがあります。iPhone用コンパイルの最適化:浮動小数点または固定小数点?
iphone ARMプロセッサにVFP拡張機能があり、浮動小数点計算が非常にうまくいくので、固定小数点オプションを使用する方が良いと思いますか?
誰かが既にこれをベンチマークして共有したいと思ったら、私は本当に彼に感謝します。
まあ、それはあなたのアプリケーションの設定に依存し、ここではいくつかのガイドライン
が大量のシーケンシャルデータを扱う場合は、確かにNEONが必要です。
浮動小数点または固定で、それは良い質問です。 NEONは固定を扱う方がやや速いですが、変換には時間がかかり、最終的に余分なメモリが必要になるため、ネイティブの入力形式をそのまま使用します。
libがオプションとして異なる出力フォーマットを提供するとしても、ほとんどの場合、lib内部変換を意味します。だから私は浮動小数点は、この場合のネイティブなものだと思います。それに固執。
いいえ、より良いアルゴリズムをマイクロ最適化できません。通常は、アルゴリズムが優れているほど、現代のマシンでのパイプライン化によるマイクロ最適化により、より多くのパフォーマンスを達成することができます。
私は組み込み関数から離れていますが、 intrinsicが狂ったことをしていると不平を言っているネット上の記事がたくさんあります。特に即値を扱う場合は特にそうです。 これは非常に面倒なことがありますが、イントリンシックを使って何かを最適化することはほとんどできません。