[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:003757] Re: 大規模データ



堀之内です。

すみません,GPhys の中の拡張ライブラリ(補間とか)は
まだ対応してません。
というか,ruby-netcdf 等も bigmem 対応は取り込まれてない
と思うのですが,対応版はどこにあるんですか? > 西澤さま。
(本家レポジトリに取り込んで貰えると嬉しい。)

> 竹広です. 
> 
> もしかして gphys もコンパイルしなおす必要有ですか?
> 試したけどコンパイルエラー出てしまいます. 
> 
> #そこまで対応していない?
> 
>                     Takepiro(竹広真一)@数理解析研究所. 京都大学
>                       	E-mail:takepiro@xxxxxxxxxxxxxx
> 			       takepiro@xxxxxxxxxxxxxxxxxxxx
> 
> 
> At Thu, 30 Oct 2014 09:52:16 +0900,
> Seiya Nishizawa wrote:
> > 
> > 竹広様
> > 
> > 3/18 日に 本MLに送った
> > narray-bigmem (narray plus over 2GB memory handling and thread
> > parallel processing)
> > というメールにあるように、2GB越え用の narray があります。
> > https://github.com/seiya/narray-bigmem
> > これを使うために、上記メールに添付されているパッチが必要です。
> > あと、東大の高麗さんから以下の変更が必要との指摘もいただいています。
> > 
> > # gmail でおくると送られてきたメールが見えないので、スレッド番号が分かりません。すいません。
> > # あと、 dennou-ruby ML の web アーカイブが 2014 はつくられていないんですね。
> > 
> > 
> > ---  高麗さんのメールここから (勝手に転記してすいません > 高麗様)
> > ○ ruby-netcdf-*.*.*/lib/netcdf.rb と ruby-dcl-*.*.*/lib/dcl.rb
> > 頭の部分で NArray か NArray-bigmem かを判定している箇所がありますが、
> > 例:NArray.constants.include?("SUPPORT_BIGMEM")
> > Ruby-1.9以上では、メソッド名がシンボルになっており、
> > 上手く動作しませんでした。
> > 
> > NArray.constants.include?("SUPPORT_BIGMEM")
> > を
> > NArray.constants.map{|t|t.to_s}.include?("SUPPORT_BIGMEM")
> > として回避しました。
> > 
> > # あと、場合分けを行って、エラーメッセージが出るようになっていますが、
> > # 順番が逆のような気がします
> > 
> > ○ ruby-dcl で NumRu::DCL::SUPPORT_BIGMEM が定義されていない
> > ruby-netcdfのパッチでは、同様のものが定義されていたので、
> > それを参考に、init.c.default 内で定義しました。
> > 
> > --- /home/kohmasa/usr/src/ruby-dcl-1.7.0/init.c.default
> > +++ /home/kohmasa/usr/src/ruby-dcl-1.7.0_bigmem/init.c.default
> > @@ -1,6 +1,7 @@
> >  #include <stdio.h>
> >  #include "ruby.h"
> >  #include "libtinyf2c.h"
> > +#include "narray.h"
> > 
> >  /* for compatibility with ruby 1.6 */
> >  #ifndef RARRAY_PTR
> > @@ -124,6 +125,12 @@
> >      mDCL = rb_define_module_under(mNumRu, "DCL");
> >      rb_define_const(mDCL, "DCLVERSION", rb_str_new2(DCLVersion));
> > 
> > +#ifdef NARRAY_BIGMEM
> > +    rb_define_const(mDCL, "SUPPORT_BIGMEM", Qtrue);
> > +#else
> > +    rb_define_const(mDCL, "SUPPORT_BIGMEM", Qfalse);
> > +#endif
> > +
> >      init_grph1_csgi(mDCL);
> >      init_grph1_scpack(mDCL);
> >      init_grph1_sgpack(mDCL);
> > 
> > 以上です。
> > --- 高麗さんのメールここまで
> > 
> > 
> > 西澤誠也
> > 
> > 2014年10月30日 6:54 Shin-ichi Takehiro <takepiro@xxxxxxxxxxxxxx>:
> > > 竹広です.
> > >
> > > 諸事情で倍精度 1024^3 程度の大きさのデータを扱わねば
> > > ならなくなりました. 当然ながら読み込んだ配列は
> > > GPhys/NArray の 2GB の限界を越えてしまい, 何かしら
> > > ロードするタイミングでエラーが出てしまいます.
> > >
> > > 2 GB っていまどきデータ解析としては厳しいような気がしますが,
> > > 皆さんどう対処されているのでしょう? チュートリアルに出ていた
> > > 座標変数をループで回して, といったことはあまりやりたくないです.
> > > 識者のご意見お聞かせ下さい.
> > >
> > >                     Takepiro(竹広真一)@数理解析研究所. 京都大学
> > >                         E-mail:takepiro@xxxxxxxxxxxxxx
> > >                                takepiro@xxxxxxxxxxxxxxxxxxxx
> > >
> > >
> > >
> > 
> > 
> > 
> > -- 
> > Seiya Nishizawa
> > RIKEN Advanced Institute for Computational Science
> > Tel: +81-78-940-5754, Fax: +81-78-304-4972
> > 7-1-26, Minatojima-minami-machi, Chuo-ku, Kobe, Hyogo 650-0047, Japan
> > 
> > 

堀之内 武
北海道大学 地球環境科学研究院 地球圏科学部門
〒060-0810 札幌市北区北10条西5丁目