Skip to content

テスト

Ushitora Anqou edited this page Sep 2, 2021 · 1 revision

Rubyを入れた状態でtest.rbを動かす。とりあえず手短に平文実装とTFHEpp実装とcuFHE実装が正しく動くかを調べるときは次の通り。

$ ruby test.rb build/bin fast

build/binはIyokanをビルドしてできたbinディレクトリへのパスに適宜変える。fastは他にplaintfhecufheが指定できる。各々の意味は次の通り。

  • plain: 平文実装に関するテストを全部回す
  • tfhe: TFHEpp実装に関するテストを全部回す
  • cufhe: cuFHE実装に関するテストを全部回す
  • 他に、個々のテストの名前(cufhe-cahp-ruby-09のようなもの)を指定するとそのテストだけが回る。

どのテストが実行されるかは、test.rbを実行して出力される最初のログに次のように記載される。

[1 TESTS SELECTED ([:"cufhe-cahp-ruby-09"])] cufhe-cahp-ruby-09

複数枚GPUを使用する場合は次のように--iyokan-arg="--gpu_num=2"をつける。

$ ruby test.rb --iyokan-arg="--gpu_num=2" build/bin cufhe

複数回テストを実行する場合は--repeatオプションを使う

$ ruby test.rb --repeat=2 build/bin cufhe

このテストスクリプトはkvspのリリースに対しても簡易的に使える。その場合は次のようにkvspリリースのbinディレクトリを指定する。また--skip-prefaceを指定して、存在しないtest0のテストをスキップする。

$ ruby test.rb --skip-preface /path/to/kvsp_release/bin cufhe
Clone this wiki locally