問題タブ [memory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - ファイルの内容を istringstream に読み込むには?
ファイルからの読み取りのパフォーマンスを向上させるために、大きな (数 MB) ファイルの内容全体をメモリに読み込んでから、istringstream を使用して情報にアクセスしようとしています。
私の質問は、この情報を読み取って文字列ストリームに「インポート」する最良の方法はどれですか? このアプローチの問題 (以下を参照) は、文字列ストリームを作成するときにバッファがコピーされ、メモリ使用量が 2 倍になることです。
c - 優れた設計でスタックスペースを確保するには?
RTOSを備えたRAM制限付き組み込みマイクロコントローラー用にCでプログラミングしています。
私は定期的にコードを短い関数に分割していますが、すべての関数呼び出しにはより多くのスタック メモリが必要です。すべてのタスクは自分のスタックを必要とし、これはプロジェクトの重要なメモリ消費者の 1 つです。
コードを適切に整理して読みやすくし、メモリを保持する代替手段はありますか?
c - c で既に解放されているメモリを free() しようとするとどうなりますか?
例えば:
これを行うことによる悪影響はありますか?
c - 文字配列と整数配列の速度の違いは?
現在、画像データ(8ビット符号付きおよび符号なし)が16として割り当てられた16整列整数の配列に格納されているビデオ処理ソフトウェアを扱っています。
一般に、次のようなsigned / unsigned char配列を使用すると、読み取りと書き込みが高速になりませんか?:
キャッシュラインのサイズとデータ転送の最適化についてはほとんど知りませんが、少なくともそれが問題であることはわかっています。それを超えて、SSEは将来使用される予定であり、その場合、char-arrays(int配列とは異なり)はすでにパック形式になっています。では、どちらのバージョンが高速でしょうか?
memory - VB6クエリを使用したディレクトリウォークの高速化:キャッシュとRAMの問題?
以下は、マシン上にあるファイルの数をカウントするかなり単純な関数です。「C:\」で呼び出され、実行には約5秒かかります。しばらく実行していないか、最初にRAMクリアプログラムを実行していない限り、60秒以上かかります。毎回新しいスキャンを実行しているので(つまり、このスキャンだけなので、プログラムの新しいインスタンスを開始しているので)キャッシュされている可能性があるとは思いませんでしたが、おそらくメモリ割り当てに関連していますか?その高速実行を毎回実行する方法、またはそれが実行できない理由についてのアイデアはありますか?他のプログラム(SpaceMongerなど)は、RAMをクリアしたり、実行の合間に長時間待機したりしても、10秒でファイルの総数を取得できます。したがって、必ずしもVBである必要はありませんが、これを行う方法は間違いなくあります。
java - 列挙型はどのくらいのメモリを消費しますか?
たとえば、2 つのケースを持つ Enum がある場合、ブール値よりも多くのメモリを消費しますか? 言語: Java、C++
java - ラムダプローブは死んだ?
LambdaProbeのソースコードを入手できる場所を知っている人はいますか?
または、プロジェクトをコミュニティ リポジトリに移動できるかどうかを知っている人はいますか?
ツールが 1 年以上更新されていないことに加えて、LambdaProbe Web サイトは 2008 年 9 月下旬からダウンしています。
背景: Lambda Probe は、実行中の Tomcat サーバーの統計を表示するための便利なツールです。以前はhttp://www.lambdaprobe.orgで見つかりました。
linux - 「swappiness」の議論が、情報が一度に 1 か所にしか存在しないように振る舞うのはなぜですか?
私は Linux の "swappiness" tuneable について読んでいます。これは、アプリケーションが使用されていないときに、カーネルがアプリケーションのメモリをディスクにスワップする方法を制御します。この用語を Google で検索すると、このような長所と短所について議論しているページがたくさん表示されます。論点を簡単に言うと、次のようになります。
swappiness が低すぎると、非アクティブなアプリケーションが、他のプログラムが使用する可能性のあるすべてのシステム メモリを占有します。
swappiness が高すぎると、非アクティブなアプリケーションを起動するときに、その状態がディスクから読み取られるため、大きな遅延が発生します。
この議論は私には意味がありません。大量のメモリを使用している非アクティブなアプリケーションがある場合、カーネルがそのメモリをディスクにページングし、そのデータの別のコピーをメモリ内に残さないのはなぜですか? これは両方の長所を生むようです: 別のアプリケーションがそのメモリを必要とする場合、その別のコピーがディスク上にあり、非アクティブなアプリケーションが起動されたときにスワップインできるため、すぐに物理 RAM を要求して書き込みを開始できます。上。また、元のアプリが起動すると、まだ RAM にあるページをディスクから取り出すことなく、そのまま使用できます。
または、何か不足していますか?
c++ - C/C++ 用のマルチスレッド メモリ アロケータ
私は現在、マルチスレッド サーバー アプリケーションを大量に使用しており、優れたマルチスレッド メモリ アロケータを探しています。
これまでのところ、私は間で引き裂かれています:
- サンズ ウメン
- Google の tcmalloc
- Intel のスレッド ビルディング ブロック アロケータ
- エメリー・バーガーの財宝
私が見つけたものからは、hoard が最速かもしれませんが、今日まで聞いたことがなかったので、本当に見た目と同じくらい良いかどうかは懐疑的です. これらのアロケーターを試してみた経験のある人はいますか?
memory - コンピューターが使用しているRAMの種類を、開かずに確認する方法はありますか?
アップグレードを注文する前に、コンピューターが使用しているRAMの種類を確認したいと思います。私はそのDDR2をかなり確信していますが、これを再確認したいと思います。
ケースを開いて見ずにWindowsXPでこれを確認する方法はありますか?
編集 コンテンツ警察はスティックの間違った端を取得したようです、私はこれをチェックすることを可能にするソフトウェアまたはコマンドの一部を探していました。これにより、この質問はStackOverflowにとって完全に有効であり、他のプログラマーにとっても興味深いものになると思います。