タグ付けされた質問 「performance」

コードおよびアプリケーション効率の測定または改善に関する質問。

30
C ++パフォーマンスとJava / C#
ロックされています。質問はトピックから外れていますが、歴史的に重要であるため、この質問とその回答はロックされています。現在、新しい回答や相互作用を受け入れていません。 私の理解では、C / C ++は特定のマシンアーキテクチャで実行するネイティブコードを生成します。逆に、JavaやC#などの言語は、ネイティブアーキテクチャを抽象化する仮想マシン上で実行されます。この中間ステップのため、JavaまたはC#がC ++の速度に一致することは論理的に不可能であるように見えますが、最新のコンパイラー(「ホットスポット」)はこの速度に達するか、それを超えることさえあると言われています。 おそらく、これは言語の問題よりもコンパイラの問題のほうが多いですが、これらの仮想マシン言語の1つがネイティブ言語よりも優れたパフォーマンスを発揮する方法を誰でも簡単に英語で説明できますか?
119 c#  java  c++  performance  bytecode 

4
複数のINSERTステートメントと複数のVALUESを持つ単一のINSERT
1000のINSERTステートメントを使用してパフォーマンスを比較しています。 INSERT INTO T_TESTS (TestId, FirstName, LastName, Age) VALUES ('6f3f7257-a3d8-4a78-b2e1-c9b767cfe1c1', 'First 0', 'Last 0', 0) INSERT INTO T_TESTS (TestId, FirstName, LastName, Age) VALUES ('32023304-2e55-4768-8e52-1ba589b82c8b', 'First 1', 'Last 1', 1) ... INSERT INTO T_TESTS (TestId, FirstName, LastName, Age) VALUES ('f34d95a7-90b1-4558-be10-6ceacd53e4c4', 'First 999', 'Last 999', 999) ..対して、1000個の値を持つ単一のINSERTステートメントを使用します: INSERT INTO T_TESTS (TestId, FirstName, …


10
PHPで書かれたコードの速度をどのように測定できますか?[閉まっている]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 5か月前に閉鎖。 この質問を改善する どのクラスの多く(すべて同じジョブを実行する)がより速く実行されると言えるでしょうか?それを測定するソフトウェアはありますか?

25
乗算または除算を使用する必要がありますか?
これはばかげた楽しい質問です: 変数の値の半分が必要な単純な操作を実行する必要があるとしましょう。通常、これには 2つの方法があります。 y = x / 2.0; // or... y = x * 0.5; 言語で提供されている標準の演算子を使用していると仮定すると、どちらの方がパフォーマンスが優れていますか? 乗算は通常より良いと思いますので、コードを書くときはそれを守るようにしますが、これを確認したいと思います。 個人的にはPython 2.4-2.5 の回答に興味がありますが、他の言語の回答も投稿してください。また、必要に応じて、他のより洗練された方法(ビット単位のシフト演算子の使用など)も投稿してください。

12
MySQL:行数をカウントする最速の方法
MySQLでは、行数をカウントするためにどちらが高速なのでしょうか。 この: SELECT COUNT(*) FROM ... WHERE ... または、代替: SELECT 1 FROM ... WHERE ... // and then count the results with a built-in function, e.g. in PHP mysql_num_rows() これは明らかにデータベースの領域であり、このようなことを内部で決定する場合、データベースエンジンは他の誰よりも高速であるべきであるため、最初の方法の方が高速であると考えられます。
117 mysql  performance 


30
コンパイラ/オプティマイザがより高速なプログラムを作成できるようにするコーディングプラクティス
何年も前、Cコンパイラはそれほど賢くありませんでした。回避策としてK&Rがregisterキーワードを考案し、コンパイラーにヒントを与えるために、この変数を内部レジスターに保持することをお勧めします。彼らはまた、より良いコードの生成を支援するために三次演算子を作りました。 時間の経過とともに、コンパイラは成熟しました。フロー分析により、レジスタにどの値を保持するかを、ユーザーが実行できるよりも適切に決定できるという点で、非常に賢くなりました。registerキーワードは重要ではなくなりました。 FORTRANは、エイリアスの問題により、ある種の操作ではCよりも高速になる場合があります。理論的には、注意深くコーディングすれば、オプティマイザがより高速なコードを生成できるように、この制限を回避できます。 コンパイラ/オプティマイザがより高速なコードを生成できるようにするために、どのようなコーディングプラクティスを利用できますか? 使用するプラットフォームとコンパイラを特定していただければ幸いです。 なぜテクニックはうまくいくように見えるのですか? サンプルコードが推奨されます。 ここに関連する質問があります [編集] この質問は、プロファイルを作成して最適化するプロセス全体に関するものではありません。プログラムが正しく記述され、完全に最適化されてコンパイルされ、テストされ、本番環境に導入されていると想定します。コード内に、オプティマイザが可能な最善の仕事をすることを禁止する構成要素があるかもしれません。これらの禁止事項を取り除き、オプティマイザがさらに高速なコードを生成できるようにするには、リファクタリングに何ができますか? [編集] オフセット関連リンク

4
std :: swap()をオーバーロードする方法
std::swap()並べ替えや割り当ての際に、多くのstdコンテナ(std::listおよびなどstd::vector)で使用されます。 ただし、のstd実装swap()は非常に一般化されており、カスタムタイプに対しては非効率的です。 したがってstd::swap()、カスタムタイプ固有の実装でオーバーロードすることで効率を上げることができます。しかし、どのように実装すれば、標準コンテナで使用できますか?

2
Androidでビットマップのサイズを変更する最もメモリ効率の良い方法?
サーバーからデバイスに画像が送信される画像集約型のソーシャルアプリを作成しています。デバイスの画面解像度が小さい場合、デバイスのビットマップのサイズを変更して、目的の表示サイズに合わせる必要があります。 問題は、createScaledBitmapを使用すると、サムネイル画像の大群のサイズを変更した後、多くのメモリ不足エラーが発生することです。 Androidでビットマップのサイズを変更する最もメモリ効率の良い方法は何ですか?

3
範囲ベースのforループで転送参照を使用する利点は何ですか?
const auto&読み取り専用の操作を実行する場合は十分です。しかし、私はぶつかった for (auto&& e : v) // v is non-const 最近数回。これは私に不思議に思います: またはと比較して、一部のあいまいなケースで、転送参照を使用することでパフォーマンスが向上する可能性はありますauto&かconst auto&? (shared_ptrあいまいなコーナーケースの容疑者です) 更新 お気に入りで見つけた2つの例を。 基本型を反復するときにconst参照を使用することの欠点はありますか? 範囲ベースのforループを使用して、マップの値を簡単に反復できますか? 質問に集中してください:範囲ベースのforループでauto &&を使用する理由は何ですか?

9
プロセスを強制終了するWindows .batファイルを書き込む方法はありますか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 10か月前に閉鎖。 この質問を改善する 会社所有の開発マシンをオンにするたびに、タスクマネージャーまたはその他のプロセス管理アプリを使用して10以上のプロセスを強制終了し、IDEのパフォーマンスを向上させる必要があります。はい、これらは私のセキュリティとコンプライアンスのために私の会社にインストールするプログラムからのプロセスです。私がやりたいのは、問題のプロセスを強制終了できる.batファイルまたはスクリプトです。 誰かがこれを行う方法を知っていますか?

8
プロセスの個別のCPUコア使用率を測定するにはどうすればよいですか?
コアによる特定のプロセスCPU使用率を測定する方法はありますか? 私が知っているトップは、コアとすることにより、システム全体のCPU使用率の測定に適してタスクセットを上で実行するプロセスに許可されているCPUコアについての情報を提供することができます。 しかし、CPUコアによる特定のプロセスのCPU使用率をどのように測定しますか?

13
C ++では、わざわざ変数をキャッシュするか、コンパイラーに最適化を行わせる必要がありますか?(エイリアシング)
次のコードを考えてみてください(これpは型unsigned char*でbitmap->widthあり、整数型であり、正確には不明であり、使用している外部ライブラリのバージョンに依存します)。 for (unsigned x = 0; x < static_cast<unsigned>(bitmap->width); ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } それを最適化する価値があります[..] これにより、次のように書くことでより効率的な結果が得られる場合があります。 unsigned width(static_cast<unsigned>(bitmap->width)); for (unsigned x = 0; x < width; ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } ...または、コンパイラが最適化するのは簡単ですか? 「より良い」コードは何だと思いますか? 編集者からのメモ(Ike):取り消しテキストについて疑問に思っている方のために、元の質問は、フレーズどおり、トピックから外れた領域に危険なほど近く、肯定的なフィードバックにもかかわらず非常に閉じていました。これらは打たれました。ただし、質問のこれらの被害を受けたセクションに対応した回答者を罰しないでください。

7
LINQ関数の順序は重要ですか?
基本的に、質問のように... LINQ関数の順序はパフォーマンスの点で重要ですか?もちろん、結果は同じでなければなりません... 例: myCollection.OrderBy(item => item.CreatedDate).Where(item => item.Code > 3); myCollection.Where(item => item.Code > 3).OrderBy(item => item.CreatedDate); どちらも同じ結果を返しますが、LINQの順序が異なります。いくつかのアイテムを並べ替えると結果が異なることに気づき、それらについては気にしません。同じ結果を得るために、順序付けがパフォーマンスに影響を与える可能性があるかどうかを知ることが私の主な関心事です。そして、私が行った2つのLINQ呼び出し(OrderBy、Where)だけでなく、すべてのLINQ呼び出しについてもです。
114 c#  performance  linq 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.