0
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?

LinuxのIntel x86のIntrinsic関数をRISC-VやARM用にポートする(9)

Last updated at Posted at 2024-10-01

Intel Intrinsic関数をポートする場合において、ランダムに生成したテストデータを含んだテスト記述ファイルをx86-64 PCまたはサーバによって作成し、それをRISC-VやIBM Power、ARMに移動させて、テストを実行したほうが良いという結論に達した。これはネットワークアプリケーションなどを作るよりも良い方法である。理由を以下に記述する。

  • 現在は、かなりの大容量のHDDストレージが使えるようになっている。なので、HDDを移動させてテストするという戦略が使用できる。テラバイト単位の情報をネットワークに流すのはちょっと心配になる。
  • 暗号化が必要ない。
  • テストのエビデンスが残しやすい。
  • リアルタイム性が必要ないため、ネットワークアプリとしてテストフレームワークを作る必要性はない
  • ネットワークアプリケーションを作ることは、ネットワークやセキュリティの知識なども必要である。

テスト記述ファイルには、IntelのIntrinsicに、ランダムに値を入力した入力値と、出力値がそれぞれ整理されて格納されている。x86-64 のLinux PCまたはサーバによって作成できる。
そのテスト記述ファイルを、RISC-Vなどのターゲットとなるコンピュータに何らかの形で移動させ、ポートコードを付加して、ポートコードにIntel Intrinsicに入れた値と同じ値を入れ、帰ってきた値が同じであることをチェックし、同じでなければ、エラーを出力する。
テストが正常に完了したら、レポートを吐く。

テスト用のファイルはIntel x86によって作成可能であるため、テストファイルをとりあえず作って、IBM PowerやRISC-Vにファイルを移動させ、ポートコードを人力でドキュメントを読みながら試行錯誤で作る、テストフレームワークを稼働させれば、コードのエラーやレイテンシが表示されるため、それを見て、ポートコードを修正するなどの戦略が使える。

0
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
0
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?