3

Accelerate Frameworkを使用して、floatの配列に変換せずに、符号なし8ビット整数の配列を合計できますか?

私の現在のアプローチは次のとおりです。

vDSP_vfltu8(intArray, 1, floatArray, 1, size);
vDSP_sve(floatArray, 1, &result, size);

しかし、vDSP_vfltu8はかなり遅いです。

4

1 に答える 1

1
  1. vDSP_vfltu8( )高速であることが重要な場合は、バグ レポートを提出してください。質問がある場合は、バグ レポートを提出してください。不十分なパフォーマンスバグであり、報告するとバグとして扱われます。ライブラリの作成者は、この種のフィードバックを使用して、作業の優先順位を決定します。あなたのバグレポートは、最適化のためにキューの先頭にある関数とキュー内の #1937 の違いです。
  2. 示唆されているように、整数の累積はオーバーフローの懸念によって複雑になりますが、vDSP ライブラリによって提供される特定のケースに最適化された関数があると便利な場合は、バグ レポートを提出してそのような関数を要求してください (パターンに気づきましたか?) . ライブラリ作成者はサイキックではなく、要求されていない関数を作成しません。そのような関数をどのように使用するかを必ず説明してください。この情報が与えられた場合、彼らはあなたにとってさらに役立つわずかに異なる関数を思いつくかもしれません.
  3. 自分で NEON コードを作成することにした場合は、vaddw_u8( )組み込み関数を利用する必要があります。
于 2011-04-12T04:55:56.943 に答える