enhancer jit 高速化の実験 version 4

2019/10/18 15:30 by yamasyuh68
  :追加された部分   :削除された部分
(差分が大きい場合、文字単位では表示しません)
hogehoge enhancer jit 実験
191016
画像データをテーブルに基づいて変換(置き換え)するルーチンをjit化して時間を比べてみた
大き画像で間違いなく時間を食ってるのでここがキーであることはほぼ間違いないと思う
しかし改善効果はすごく小さい
や方が悪いのかな~
@[TOC](項目なり)

jit data
# enhancerの高速化

- 大きいファイルで実験

## 全色と赤のみチェックで速さを見る
ほとんど変わりませんでした┐('д')┌
ということはテーブルの参照自体はあまり時間を要しないってことかな

## 全色チェックのルーチンのみ外に出して @jit してみる
enhancerは単純に元データのRGBを変換テーブルに沿って置き換えているだけ
画像が大きくなると当然データも二乗で増えるから処理に時間がかかるtんだと思う
で、ここを抜き出してjitして時間を計測してみた

①通常画像 jitあり
  warnings.warn(errors.NumbaDeprecationWarning(msg, self.func_ir.loc))
makeenhance : 1.6610949039459229
makeenhance : 0.18001031875610352
makeenhance : 0.1760098934173584
makeenhance : 0.18201065063476562
makeenhance : 0.19201111793518066
makeenhance : 0.1870105266571045
makeenhance : 0.1870105266571045
makeenhance : 0.18801069259643555
makeenhance : 0.1910109519958496
makeenhance : 0.16900968551635742
makeenhance : 0.15900897979736328
makeenhance : 0.15500879287719727
makeenhance : 0.17701005935668945
makeenhance : 0.1760101318359375

②通常画像 jitなし
makeenhance : 0.24201369285583496
makeenhance : 0.2110118865966797
makeenhance : 0.21801257133483887
makeenhance : 0.23101305961608887
makeenhance : 0.2260129451751709
makeenhance : 0.21601223945617676
makeenhance : 0.22201251983642578
makeenhance : 0.22301268577575684
makeenhance : 0.19601106643676758
makeenhance : 0.19201111793518066
makeenhance : 0.19201064109802246
makeenhance : 0.19301104545593262
makeenhance : 0.21601247787475586
makeenhance : 0.21401214599609375
makeenhance : 0.2150123119354248
makeenhance : 0.2130122184753418

③大きめ画像 jit
  warnings.warn(errors.NumbaDeprecationWarning(msg, self.func_ir.loc))
makeenhance : 3.208183526992798
makeenhance : 0.9250528812408447
makeenhance : 0.9220526218414307

④大きめ画像 jitなし
makeenhance : 1.0920627117156982
makeenhance : 0.9560546875
makeenhance : 0.970055341720581
makeenhance : 1.0410597324371338

      

191016
項目なりenhancerの高速化全色と赤のみチェックで速さを見る全色チェックのルーチンのみ外に出して @jit してみる(項目なり)

enhancerの高速化

  • 大きいファイルで実験

全色と赤のみチェックで速さを見る

ほとんど変わりませんでした┐('д')┌
ということはテーブルの参照自体はあまり時間を要しないってことかな

全色チェックのルーチンのみ外に出して @jit してみる

enhancerは単純に元データのRGBを変換テーブルに沿って置き換えているだけ
画像が大きくなると当然データも二乗で増えるから処理に時間がかかるtんだと思う
で、ここを抜き出してjitして時間を計測してみた

①通常画像 jitあり
warnings.warn(errors.NumbaDeprecationWarning(msg, self.func_ir.loc))
makeenhance : 1.6610949039459229
makeenhance : 0.18001031875610352
makeenhance : 0.1760098934173584
makeenhance : 0.18201065063476562
makeenhance : 0.19201111793518066
makeenhance : 0.1870105266571045
makeenhance : 0.1870105266571045
makeenhance : 0.18801069259643555
makeenhance : 0.1910109519958496
makeenhance : 0.16900968551635742
makeenhance : 0.15900897979736328
makeenhance : 0.15500879287719727
makeenhance : 0.17701005935668945
makeenhance : 0.1760101318359375

②通常画像 jitなし
makeenhance : 0.24201369285583496
makeenhance : 0.2110118865966797
makeenhance : 0.21801257133483887
makeenhance : 0.23101305961608887
makeenhance : 0.2260129451751709
makeenhance : 0.21601223945617676
makeenhance : 0.22201251983642578
makeenhance : 0.22301268577575684
makeenhance : 0.19601106643676758
makeenhance : 0.19201111793518066
makeenhance : 0.19201064109802246
makeenhance : 0.19301104545593262
makeenhance : 0.21601247787475586
makeenhance : 0.21401214599609375
makeenhance : 0.2150123119354248
makeenhance : 0.2130122184753418

③大きめ画像 jit
warnings.warn(errors.NumbaDeprecationWarning(msg, self.func_ir.loc))
makeenhance : 3.208183526992798
makeenhance : 0.9250528812408447
makeenhance : 0.9220526218414307

④大きめ画像 jitなし
makeenhance : 1.0920627117156982
makeenhance : 0.9560546875
makeenhance : 0.970055341720581
makeenhance : 1.0410597324371338