問題タブ [hdf]
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 - HDF を使用して非常に大きな行列を格納する方法
HDF を使用して、1e6 x 1e6 の浮動小数点数のような非常に大きな行列を格納することを計画しています。
連続する行または列のバッチでマトリックスを読み取る必要があります。
私の質問は、速度を最大化するために HDF ファイルを構造化/微調整する最適な方法は何でしょうか?
いくつかのポイント:
私のシステムでは、HDF で圧縮されていない完全な行列の読み取り/書き込みに約 5 時間かかると見積もっています。これは合理的ですが、サイズが数テラバイトになるため、行列を圧縮せずに保存するのは合理的ではありません。
行列が疎の場合、圧縮によって読み取り速度が、圧縮されていない密な行列の読み取りと同等またはそれ以上になる可能性がありますか?
元の行列から行/列を読み取ったり、行列の乗算などを行うのが複雑になるため、行列を個別のサブ行列データセットに分割するのは面倒です。したがって、可能であればこれを避けたいと思います(これにより速度が大幅に向上する場合を除きます)。
マトリックスを一度読んだら、何度も読むつもりです。したがって、読み取り/解凍速度は、書き込み/圧縮速度よりも重要です。
hdfとのインターフェースにpython h5pyを使用しています。
python - Python の Anaconda ディストリビューションの HDF4 ファイル
64 ビット Windows 7 で Anaconda Python ディストリビューションを使用して HDF4 ファイルを読み込もうとしています。これを行う方法についてアドバイスはありますか?conda.binstar.org/mutirri を .condarc ファイルに追加しようとしましたが、conda はまだパッケージが見つからないと言っています....ありがとう!
matlab - Matlab での HDF4 データのエクスポート
MatlabからHDF4形式にデータをエクスポートするスクリプトが必要です。hdf4ファイルに保存したい変数の寸法は3128 * 242 * 256(int 16型)です。
ありがとう
hadoop - HDFS Namenode への接続の問題
新しい Hadoop 単一ノードのインストール後、hadoop-root-datanode-localhost.localdomain.log に次のエラーが表示されました。
何か案が。?
JPSは出力を提供していません
コア site.xml が更新されました
また、hadoop namenode -format got below aborted エラーを使用したフォーマットでは
c++ - Visual C++ を使用して 2 次元配列 int[n][m] を HDF5 ファイルに書き込む
私は HDF5 を使い始めたばかりで、次の点についてアドバイスをいただければ幸いです。
私は 2 次元配列を持っています: data[][]
メソッドに渡されます。メソッドは次のようになります。
データのサイズは実際には 48 x 100 ではなく、むしろ 48 x サイズです[i]。つまり、各行の長さは異なる可能性があります。私が扱っている 1 つの単純なケースでは、すべての行が同じサイズ (ただし 100 ではない) であるため、配列は 48 X サイズ [0] であると言えます。
これを HDF5 に書き込むにはどうすればよいですか?
0 から 48 までループして、各行の新しいデータセットを作成する作業コードがあります。
何かのようなもの:
1 つの DataSet にデータを一度に書き込む方法はありますか? おそらく、すべての行が同じ長さの単純なケースに対する 1 つの解決策と、不規則な行に対する別の解決策でしょうか?
私は無駄にいくつかのことを試しました。私は dataSet.write(data, intDataType) を呼び出しました。つまり、配列全体を投げました。データが格納されている配列が実際には 48x100 であり、そのごく一部しか必要としないため、ファイルにガベージが含まれているようです。
double ptrs int** または vector> を使用できるかもしれないと思いましたが、それに固執しています。私が知る限り、「書き込み」には void* ptr が必要です。また、ファイルが「正しく見える」ようにしたいと思います。つまり、データのすべての行を含む 1 つの巨大な行は望ましくありません。そのルートに行かなければならない場合、ファイルからデータを読み戻すことができる情報を保存するための巧妙な方法を誰かが伝える必要があります (おそらく、行の長さを次のように保存します)。属性?)
おそらく、私の本当の問題は、重要なユース ケースの C++ の例を見つけることです。
どんな助けでも大歓迎です。
デイブ
python - 特定のディレクトリ内のすべての HDF5 ファイルをどのように連結しますか?
ディレクトリに多くの HDF5 ファイルがあり、それらすべてを連結したいと考えています。私は次のことを試しました:
ただし、これは空のファイルを作成するだけです。各 HDF5 ファイルには 2 つのデータセットが含まれていますが、2 つ目のデータセット (それぞれに同じ名前が付けられています) を取得して新しいファイルに追加することだけを考えています。
HDF ファイルを連結するより良い方法はありますか? 私の方法を修正する方法はありますか?
c - データ型検出による HDF5 ファイルのデータセットからの読み取り
私は現在、このような C の hdf5 データセットからいくつかのデータを読み込もうとしています。
ic_group
これはデータセットを含むグループで、 memspacevx
はメモリ内のハイパースラブ、vx_ptr はメモリ内のデータです。このアプローチはうまく機能しますが、後で別のデータ型を使用する必要があるため、データセットから型を直接読み取りたいと考えています。
残念ながら、このアプローチは関数で segfault を引き起こしますH5Dread
。多分私は何かを逃していますか?ご提案ありがとうございます。
編集:これが役立つかどうかはわかりませんが、gdb のバックトレースは
0x00007ffff5adbd1e in __memcpy_ssse3_back () from /lib64/libc.so.6
.