マルチスレッドアプリケーションでは、おおよそ次の傾向が見られます。
No. of threads: 2
Application time: 5s
No. of threads: 4
Application time: 10s
No. of threads: 8
Application time: 20s
No. of threads: 16
Application time: 40s
1-アプリケーション時間が増加する理由は何でしょうか(他のアプリケーションを実行しておらず、十分なリソースがある場合)?
2-アプリケーション時間の増加は、スレッドコンテキスト切り替えのオーバーヘッドの増加によるものだと思います。私が正しければ、このコンテキスト切り替えのオーバーヘッドを減らす方法は何ですか?
プロファイラーは、スレッドレベルでの洞察を私に与えていません。
プラットフォーム情報
Android、ARMCortex-A8で実行