Android:計算量が増えると、整数計算がフロート計算よりもはるかに遅いのはなぜですか?

kwotsin

私はかなり奇妙な現象を観察しています:必要なCPU計算の量を1000万以上から数億に増やすと(ほとんどは乗算と加算と除算です)、フロートで計算すると、速度が非常に速くなることがわかりますもっと早く。ただし、それほど極端ではない特定の量を下回る演算の場合、予想どおり、整数の計算は実際に高速です。

これが起こる特別な理由はありますか?計算が大幅に増加したときにfloat操作が自動的に並列化されることに関係しているのではないかと思いますが、整数計算には関係していません。アプリケーションに対して明示的にマルチスレッドを実行しなかったことに注意してください。私はAndroidの専門家ではないので、Androidプロやコンピューターアーキテクチャの専門家がこれについて私に教えてくれるかどうか疑問に思っています。

ありがとうございました。

ガベセチャン

最近のプロセッサには、並列フロート命令(ベクトル命令と呼ばれる)が組み込まれています。多くのfp操作を実行している場合は、それらに最適化されている可能性があります。組み込みのCPU操作のリストについては、http://infocenter.arm.com/help/index.jsp?topic = /com.arm.doc.dui0802b /a64_simd_vector_alpha.html参照してください

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

ペアで計算を実行することにより、整数の連続配列の積を計算する方が速いのはなぜですか?

素数の合計を計算するために、最初の解が2番目の解よりもはるかに遅いのはなぜですか?

メモリだけが重要なのに、CPUがGPUよりも計算が遅いのはなぜですか?

数学的には、Pythonのコードの時間計算量はCの時間計算量よりも優れていると言えますか?

階乗計算がJavaよりもHaskellではるかに速いのはなぜですか

EnumerateFilesがサイズの計算よりもはるかに速いのはなぜですか

ユークリッド距離を計算するときに、パンダのDataFrame全体での計算よりも列単位の計算が速いのはなぜですか

合計によってFLT_MAXを計算しているときに、ある時点でフロートが増加しないのはなぜですか?

計算が行われたかどうかを確認するよりも、すべての行の計算が速いのはなぜですか?

Dask /分散型ワーカー内での計算がはるかに遅いのはなぜですか?

C#での計算がPythonよりもはるかに高速なのはなぜですか

素数の合計の計算において、NodeJSがRustよりも速いのはなぜですか?

この算術計算がキャストnvarcharよりも速いのはなぜですか?

フロートの計算結果がCと電卓で異なるのはなぜですか?

sqrtの計算にピタゴラスよりも時間がかかるのはなぜですか?

timeit.timeitの実行時間の計算がtime.timeよりも遅いのはなぜですか?

goに整数データ型の絶対値を計算する機能がないのはなぜですか?

ディスクからロードするよりもORB記述子を再計算する方が速いのはなぜですか?

列の最大値を事前計算するdplyrコードが、mutate呼び出し内でそれを計算するdplyrコードよりも遅いのはなぜですか?

フロートをint一時実行に合計すると、すべてがintの場合よりも非常に遅くなるのはなぜですか?

オーバーフロー計算を行うとPythonがフリーズするのはなぜですか?

同じ時間計算量で、あるアルゴリズムが別のアルゴリズムよりも速いのはなぜですか?

計算からメソッドに切り替えるときに、次のVue.jsコードが機能しないのはなぜですか?

VBA マクロによって自動計算がオフになるのはなぜですか?

足し算と引き算がうまく機能しているのに、なぜ私の計算機は掛け算と割り算のときに常に0を与えるのですか?

CPUで浮動小数点計算をスレッド化すると、計算にかなり時間がかかるのはなぜですか?

CPUで浮動小数点計算をスレッド化すると、計算にかなり時間がかかるのはなぜですか?

このコードの時間計算量を計算するにはどうすればよいですか?

完全数を計算する私のプログラムが何も印刷しないのはなぜですか?

TOP 一覧

  1. 1

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  2. 2

    Railsで宝石のレイアウトを使用するにはどうすればよいですか?

  3. 3

    Chromeウェブアプリのウェブビューの高さの問題

  4. 4

    Ansibleで複数行のシェルスクリプトを実行する方法

  5. 5

    アンドロイド9 - キーストア例外android.os.ServiceSpecificException

  6. 6

    Windows 10 Pro 1709を1803、1809、または1903に更新しますか?

  7. 7

    CSSのみを使用して三角形のアニメーションを作成する方法

  8. 8

    Google Playストア:アプリページにリーダーボードと実績のアイコン/バッジが表示されない

  9. 9

    GoDaddyでのCKEditorとKCfinderの画像プレビュー

  10. 10

    PyCharmリモートインタープリターはプロジェクトタブにサイトパッケージのコンテンツを表示しません

  11. 11

    Windows 7では、一部のプログラムは「ビジュアルテーマを無効にする」レジストリ設定を行いませんか?

  12. 12

    Get-ADGroupMember:このリクエストのサイズ制限を超えました

  13. 13

    Pyusb can't find a device while libusb can

  14. 14

    MySQLでJSON_LENGTHとJSON_EXTRACTを組み合わせる方法は?

  15. 15

    Postmanを使用してファイル付きの(ネストされた)jsonオブジェクトを送信する

  16. 16

    Swiftのブロックのパラメーターに関するドキュメントのマークアップ形式は何ですか?

  17. 17

    Reactでclsxを使用する方法

  18. 18

    追加後、ブートストラップマルチセレクトがテーブルで機能しない

  19. 19

    MongoDB Compass: How to select Distinct Values of a Field

  20. 20

    「埋め込みブラウザのOAuthログイン」を有効にしてコールバックURLを指定した後でも、Facebookのコールバックエラーが発生する

  21. 21

    複数行ヘッダーのJTableヘッダーテキストの折り返し(カスタムTableCellRenderer)

ホットタグ

アーカイブ