具体的には、OpenCL/RenderscriptコードをAndroidエミュレータで実行したいのですが、実際にはCPUの代わりにコンピュータのGPUで実行されます。不運にも私はAMD CPUとGPUを使用しています。GPGPU Androidエミュレータ(Renderscript/OpenCL)
私は、AMDがOpenGL ESをサポートしていることを知っています(そして、すべてがOpenCLをかなりサポートしています)がSDKを介していますが、これまでのところ私が得た限りではありません - エミュレータに関するOpenCL /いずれも動作しないか、Intel CPUがあれば、OpenCLをエミュレータにインストールすることができますが、CPUを使用するだけです(そして、真面目な私のエミュレータは、 OpenCVは問題なく実行されますが、OpenCL-ZにはOpenCLのサポートはないと言われています)。
エミュレータからOSにコマンドを送信して自動的に実行する方法はありますか?私が思いついた唯一の方法は、私が2つのエミュレータインスタンスを実行しているので、高速(またはハードドライブには良い)ではないテキストファイルを保存して読み込むことです。
公式エミュレータではRenderScriptがサポートされているとのことが分かりましたが、エミュレータは私の使用目的ではなく、GPUを使用することを強く疑っています。
Bluestacks 3は2つのインスタンスを実行するときに2つのリソースを使用し、何らかの理由で2番目のインスタンスがadbコマンド/ rootでうまく動作しないため、現時点でMemuを使用しています。何でもする。より速いエミュレータが2つのインスタンスを実行する場合に役立つと確信していますが、奇妙なことにそれらを比較することは困難で時間がかかります(特に、それぞれが「いいえ、私は一番速いですバーグラフ!笑)、究極的に私の問題はOpenCVでGPUアクセラレーションを得られないと信じている(私の電話ではるかに速く走るので)エミュレータのベース速度ではない。
私は、AMDの仮想化機能を有効にして(Leomoonまたはw/eで確認済み)、Memuのマネージャで有効にしています。多分これは既に舞台裏で働いていますか?いずれにしても、OpenCVのプレイが始まると、エミュレーションコストはインスタンスごとに10%増加します(60から80%+になります)。