Allocの部分はあれで良いとしよう。
次は実関数の中でどうするかを考えておかねばいけない。
まぁ、こんな感じかな?
関数(src, dst)
{
a = srcとdstがCMA領域にいるか判定(),
if(a){
DMA設定(),
H/Wアクセラレータ実行(),
ウェイト(),
}else{
従来のソフト処理;
}
return;
}
大雑把な仕様はこんなもんで良いでしょう。
あとは、H/Wアクセラレータになったらどれくらい速くなっているか、または、どれくらいCPU時間を開放できるかを測定しておきたい。
少なくともソフト処理より極端に遅くなるんだったらH/Wアクセラレータ化する意味ないしね。
まずは、ZYBOでOpenCV 3.0をgit cloneして試してみるか・・・