物理の駅 Physics station by 現役研究者

テクノロジーは共有されてこそ栄える

2024-02-01から1ヶ月間の記事一覧

Python+matplotlib: ログスケールでの目盛り、サブ目盛りを設定する

十分な広さのfigsizeにグラフを書くと、軸はそれなりに表示される import matplotlib.pyplot as plt fig, axes = plt.subplots(ncols=2, nrows=2) for ax in axes.flat: ax.plot([1,2], [0.00001,1]) ax.set_yscale("log") plt.tight_layout() plt.show() グ…

Python awkward: parquet形式で1億イベントのtreeのIO(入出力)速度を圧縮形式で比較する

Python の awkward パッケージに実装されている parquet ファイル形式を入出力するときの処理時間を、圧縮形式ごとに比較してみる。配列の型は awkward.highlevel.Array と呼ばれる形式である。 8バイト(int64_t)✕8メンバー✕1億エントリーなので、圧縮なしの…

ROOT: TFile形式で1億イベントのtreeのIO(入出力)速度を圧縮形式で比較する

CERN ROOT の TTreeを TFileで入出力するときの処理時間を圧縮形式ごとに比較してみる。Pythonで同様のことをやった記事も参照。 8バイト(int64_t)✕8メンバー✕1億エントリーなので、圧縮なしの場合は6.4GBのデータサイズとなる。 圧縮形式 ファイルサイズ 出…

1億イベントのtreeデータのグラフ化の速度をPythonとROOTで比較する

データはここのを使う。64バイト(double 8個)×1億イベント(エントリー)である。 phst.hateblo.jp 結果のまとめ 言語 ライブラリ ファイル形式 処理時間 スレッド数 Python awkward parquet 46 sec 1 C++ ROOT TTree ROOT 100 sec 1 C++ ROOT RDataFrame ROOT…

Windows ROOTとPython(numpy,awkward)でTreeファイルの生成と出力時間を比べる

エマルションの飛跡情報(x,y,ax,ay,ax0,ay0,ax1,ay1)とする。Visual StudioでコンパイルしたROOTと、Python+numpy,awkwardで作ったバージョンを比較する。イベント数は1億(108)本とする。 Visual Studio でコンパイルしたROOT版。248秒もかかった。 #include <TFile.h></tfile.h>…

Windows + Visual StudioでCERN ROOT6 64bit版 を動かす (2024年)

最終更新: 2024/02/24 CERNのROOT Release 6.26/04 - 2022-06-07 から Windows用のプリコンパイル済みバイナリが配布されはじめた。当初はバグがありまともに動かなかったと思われるが、執筆時点での最新 Release 6.30.04 - 2024-01-31 は1.5年も経過しそれ…

Javascript Vue.js を使って非同期でデータを表示する

Vue.js を使って非同期でデータを表示する。 Vue.jsのチュートリアルの10番目を参考にした。 v-if で 表示の条件分岐ができるようだ。 <html lang="ja"> <head> <meta charset="UTF-8"> <title>Vue.js test step-10</title> <script type="importmap"> { "imports": { "vue": "https://unpkg.com/vue@3/dist/vue.esm-browser.js" } } </script> </head> <body> …</body></html>