C++でコードを最適化する方法は?C++でコードを最適化する方法は?
答えて
- 書き込みコード
- プロフィールコード
- 微調整のパフォーマンスホットスポット
- まだ十分に速くない場合は、2
ボトルネックであることがわかるまで、最も重要な手法は最適化ではありません。
1に進みますが)私ができる最もクリーンで簡単なコードを書きます。
2)最適化された設定の最新のコンパイラを使用します。
3)完了してください。
オプション:
4)私は何かが著しく遅いと思う場合、私のアプリケーションをプロファイルします。
5)自分のプロフィールの結果を使って、何が遅いかを見つけて修正します。
6)できるだけ清潔で簡単な状態にしてください。
7)完了してください。
これらのうち、ステップ6ははるかに難しい(IMO)です。高度に手に最適化されたコードをきれいにすることは、驚くほど難しいことです。それはまたすごく楽しいことです:-D –
私は過去3回しなければならなかった回数は私の手に数えることができます。 -O4はいつも素敵です。シェルフ上のKnuthのコピーは、コンパイラがそれを行うことができないため、O(n.ln(n))が常にo(n^2)よりも良くなるため、正しいアルゴリズムを選ぶのに便利です。 –
@Martin :O(nlogn)が平均の場合ではなく、qsortとバブルのソート。逆順でソートされた数字は、qsortをO(n^2)に減らします...... –
コーディング標準に従います。一読してくださいhttp://sourcemaking.com/
これは何の問題もありませんか? –
Infact mate、そうです。どんな言語で作成したとしても、基本を正しく理解すれば、コードは最適化されます。それ以外にも、各プロジェクトには、経験から学ぶことができるだけでなく、単に質問するだけではなく、さまざまな最適化ルールやテクニックがあります。 – Samnan
@Samnan:効率的に書くと、コードが最適化されます。コーディング標準は、通常、パフォーマンス以外の品質を重視します。あなたがJavaでよく見られる "ベストプラクティス"に従うならば、あなたのプログラムは無限の抽象化レイヤーを使ってその時間の95%を費やすつもりです。それは速くないでしょうが、多くの人々のガイドラインに従います。 – jalf
- 1. ARMCCがC++コードを最適化する方法
- 2. C#コードの最適化
- 3. C#コード/ハードコードの最適化
- 4. C#コード最適化GroupBy
- 5. Cコード最適化クエリ
- 6. segueでアニメーションのhidesBackButtonコードを最適化する方法は?
- 7. Z3でコードを最適化する方法は? (PI_NON_NESTED_ARITH_WEIGHT関連)
- 8. PythonでMAPEコードを最適化する方法は?
- 9. Laravelでコードを最適化する方法は?
- 10. このC#コードを最適化する方法はありますか?
- 11. CとC++のコード最適化
- 12. ASP.NET(C#)アプリケーションで画像を最適化する方法は?
- 13. このjQueryコードを最適化する方法は?
- 14. SQL Serverコードを最適化する方法は?
- 15. 次のコードを最適化する方法は?
- 16. Pythonでこのコードを最適化する方法
- 17. OrangeFSを最適化する方法は?
- 18. ラーベールキューを最適化する方法は?
- 19. プロシージャメソッドを最適化する方法は?
- 20. pigzを最適化する方法は?
- 21. バッチピボットを最適化する方法は?
- 22. c#vs2005 .net 2.0:コードの最適化
- 23. コードを最適化するには?
- 24. PHPコードを最適化するには?
- 25. .net:このコードを最適化する方法?
- 26. 遅いVBAコードを最適化する方法Excel
- 27. このABAPコードのパフォーマンスを最適化する方法
- 28. Visual Studio - 最適化されたコードを逆にする方法
- 29. nonperformant javascriptコードを最適化/デバッグする方法
- 30. 次のコードを最適化する方法
すごく広い質問です。 –
「早すぎる最適化はすべての悪の根源」の下に投票されるので、これは答えではありません:私はきれいで簡単なコードを書いていますが、文脈によっては遅いことを避けてみてください(いくつかの文脈では、私は他の人たちで新しい/削除を避けようとしています[パフォーマンスの重要性に依存しています] – mmmmmmmm
次のリンクhttp://www.agner.org/optimize/を読んでください。言われたすべての単一の最適化を行うことができるので、試してみてはいけません。 –