1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

信濃一国、Raspberry Pi 4B で2時間30分

Last updated at Posted at 2021-02-27

国連ベクトルタイルツールキットの一つとして、国土地理院の基盤地図情報をベクトルタイルに変換するものを作っています。

長野県全域を含む基盤地図情報を、Raspberry Pi 4B 一台でベクトルタイルに変換したところ、かかった時間は次の通りでした。

real    149m18.849s
user    355m17.867s
sys     77m39.435s

上記の計測値を得るために実行したコマンドは time rake produce です。

今回の実装のために新しく加えた工夫は、データソースから地物を取り出してフィルターをかけて Tippecanoe に流し込めるようにするパートを、GNU parallel を使って、平行化したことです。要所は、次の通りです。

  cmd = "parallel --line-buffer 'ogr2ogr -lco RS=YES -f GeoJSONSeq /vsistdout/ {1} | FGD_LAYER={2} node filter.js' :::: w1.txt ::::+ w2.txt"

この平行化の結果、実時間149分に対して、ユーザー時間355分、システム時間78分を使っているという計測になりました。(355+78)/149=2.9ですから、変換処理だけで3コア程度フルに利用できたような感じになっています。割と効率よくCPUを使い切れていると私は思います。

なお、Raspberry Pi 4B は CPU 負荷が上がって機械の温度が上がると、自動的にクロック周波数を調整して温度が下がるのを待ってくれます。今回の信濃一国変換テストでも、ハングアップすることなく安定して動いてくれました。

また、Tippecanoe によると、信濃一国基盤地図情報ベクトルタイルの分量の諸元は、次の通りでした。

9922053 features, 798006848 bytes of geometry, 18220 bytes of separate metadata, 319908150 bytes of s
tring pool

もう少しで一千万地物、というデータ規模ですね。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?