問題タブ [sparse-file]
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.
python - numpy.memmap: 偽のメモリ割り当て
配列を操作するpython3
スクリプトがあります。numpy.memmap
次の場所にある新しく生成された一時ファイルに配列を書き込みます/tmp
。
HDDのサイズはわずか250G。それにもかかわらず、何らかの方法で 10T の大きなファイルを生成でき/tmp
、対応する配列には引き続きアクセスできるようです。スクリプトの出力は次のとおりです。
ファイルは実際に存在し、10T の大きさとして表示されます。
ただし、全体のサイズ/tmp
ははるかに小さいです。
このプロセスは、10T の仮想メモリを使用するふりをしていますが、これも不可能です。top
コマンドの出力:
私が理解している限り、これは、呼び出し中にnumpy.memmap
配列全体に必要なメモリが割り当てられないため、表示されるファイルサイズが偽物であることを意味します。これは、配列全体をデータで徐々に埋め始めると、ある時点でプログラムがクラッシュするか、データが破損することを意味します。
実際、コードに以下を導入すると:
しばらくすると次のエラーが表示されます。
したがって、質問:データに十分なメモリがあるかどうかを最初に確認し、実際に配列全体のスペースを予約する方法は?
sparse-file - Vdbench 50404rc2 ベータ コード - スパース ファイルの作成
最新のvdbench 50404rc2でスパースファイル(ホーリーファイル)を作成するためのポインタを教えてください。これが最新のサポート機能のようです。
詳細情報へのリンク: https://community.oracle.com/thread/3759500?start=0&tstart=0
macos - Mac で「cp --sparse=always」を使用するにはどうすればよいですか?
このページに従って、カスタム Oracle Linux マシン イメージをビルドします。
Mac でVM ディスクをそのページのマシン イメージに変換するcp --sparse=always
ようなcp を使用したいと考えています。しかし、私の Mac はこのオプションを認識できません。Mac でこの手順を実行するにはどうすればよいですか?
c - FS_IOC_FIEMAP で ioctl を使用する方法
私の問題は、スパースファイルの読み取りに対処し、ファイルのエクステントがどこにあるのかを理解し、その周りで何らかのロジックを実行することです。
これらを把握するための直接の API 呼び出しがないため、ioctl api を使用してこれを行うことにしました。私は cp コマンドがスパース ファイルのコピーの問題をコードを調べて処理する方法からアイデアを得て、最終的にこれを確認しました。
そのため、ユーザー空間で実行しているサンプル プログラムで同じことを実行しようとすると、「引数が無効です」というエラーが発生します。何が欠けているのか、またはこれがユーザー空間から可能かどうかはわかりません。ext4 ファイル システムの ubuntu 14.04 で実行しています。これは、これらの要求モードをサポートするデバイス ドライバーの問題でしょうか?
unix - スパース ファイルがサポートされているかどうかをテストする方法
ファイル記述子またはファイル名が与えられた場合、介在する部分がディスク上で明示的に消去されるのを待たずに、任意の場所に書き込めるかどうかをどのように知ることができますか?
python - Python hashlib とスパース ファイル
python hashlib ライブラリがスパース ファイルをどのように扱うのか知りたかったのです。ファイルに多数のゼロ ブロックがある場合、ゼロ ブロックの読み取りで CPU とメモリを浪費する代わりに、inode ブロック マップをスキャンし、割り当てられたブロックのみを読み取ってハッシュを計算するなどの最適化を行いますか?
まだ行っていない場合、自分で行う最善の方法は何でしょうか。
PS: この質問を StackOverflow Meta に投稿するのが適切かどうかはわかりません。
ありがとう。
ntfs - スパース ファイルに割り当てられる範囲のサイズと数の制限は何ですか?
NTFS スパース ファイルにデータを書き込むソフトウェアに取り組んでいますが、NTFS スパース ファイルの制限に関するドキュメントが見つかりません。
制限が存在するという事実への言及を見てきましたが、それらの制限が何であるかについては言及していません。
具体的には、スパース ファイルの最大ファイル サイズと、ファイル内に割り当てられる範囲の数に関する制限に関心があります。
go - GOで実際のファイルサイズと見かけのサイズを取得する
" fs.sys.Size " (fsはosパッケージのfileStatです) は、ファイルの見かけのサイズを返します。これは、スパース ファイルを扱う場合には理想的ではありません。
GOで実際のファイルサイズを取得する方法はありますか? それとも、すべてのアプリケーションが、空のブロックを実際のブロックとして表す変換されたメタデータを取得するようにバインドされていますか?
file - スパース ファイルとは何ですか? なぜ必要なのですか?
スパース ファイルとは何ですか? なぜ必要なのですか? 私が得ることができる唯一のことは、それが非常に大きなファイルであり、効率的であることです(ギガバイト単位)。どのように効率的ですか?