NetCDF > 異なるサイズの.ncファイル | 同じncdump結果 > NetCDFのバージョン3と4の違い
Xeon E5-2620 v4 (8コア) x 2
32GB RAM
CentOS 6.8 (64bit)
NCAR Command Language Version 6.3.0
for WRF3.7.1, WPS3.7.1
openmpi-1.8.x86_64 とその-devel
mpich.x86_64 3.1-5.el6とその-devel
gcc version 4.4.7 (とgfortran)
for WRF3.9, WPS3.9
Open MPI v2.1.1
gcc version 4.9.2 (とgfortran; devtoolset-3使用)
NetCDF v4.4.1.1, NetCDF (Fortran API) v4.4.4
Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37)
Python 3.6.0 on virtualenv
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
date (GNU coreutils) 8.4
tmux 1.6-3.el6
CentOS 6.8 (64bit)
- on VMWare workstation
- ホスト側はCore i7-6700
for WRF3.9, WPS3.9
Open MPI v2.1.1
gcc version 4.9.2 (とgfortran; devtoolset-3使用)
NetCDF v4.4.1.1, NetCDF (Fortran API) v4.4.4
症状
WRF(Weather Research and Forecasting Model)とその前処理であるWPS、およびWRFの後続処理のF***T関連。
動作環境1で動いていたのと同じ環境を動作環境2で構築中。
WRFの処理結果までは同じであることは確認済。
F***Tで生成される.ncファイルに違いがある。
原因の切り分けのために試しに以下を実施してみた。
- 動作環境2でビルドした実行ファイルF***Tを動作環境2で実行 (original)
- 動作環境1でビルドした実行ファイルF***Tを動作環境2で実行 (copied)
- 動作環境2にコピーして実行
- 動作環境1でビルドした設定で、動作環境2でビルドしたファイルF***Tを動作環境3で実行 (sameConfig)
以下のファイルが得られた。
$ ls -l FXXXXXT_*
-rw-rw-r--. 1 wrf wrf 1536636 Mar 14 08:46 FXXXXXT_copied
-rw-rw-r--. 1 wrf wrf 50678 Mar 14 08:44 FXXXXXT_original
-rw-rw-r--. 1 wrf wrf 1536636 Mar 14 09:17 FXXXXXT_sameConfig
ファイルサイズが異なる。
一方で、ncdumpで出力される結果は同一となった。
copiedで使った実行ファイルは圧縮する機能が有効にでもなっているのだろうか?
動作環境1でビルドして動作環境1で実行した場合のファイルサイズも1536636 となっている。
原因
ビルドするところで以下のオプションを変えてビルドしてしまっていた。
#NETCDFVERSION=4
NETCDFVERSION=3
この設定の近辺に「Version 4は圧縮に関してずっといい」というコメントがある。
Version 3にした理由はメモに残っていない。
NetCDF-3とNetCDF-4の違いについては以下に詳しそう。
https://www.unidata.ucar.edu/blogs/developer/entry/netcdf_compression
圧縮の有無の違いはmd5sumの違いも生じさせてしまう。
Author And Source
この問題について(NetCDF > 異なるサイズの.ncファイル | 同じncdump結果 > NetCDFのバージョン3と4の違い), 我々は、より多くの情報をここで見つけました https://qiita.com/7of9/items/5782324c2a078d45debd著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .