NNAPI sürücüsü uygulamasına yönelik en iyi uygulamalar

Bu sayfada, NNAPI'nin uygulama geliştiriciler tarafından yaygın olarak benimsenmesine olanak tanımak için NNAPI sürücülerini uygulamayla ilgili en iyi uygulamalar açıklanmaktadır.

Başlatma sürelerini kısa tutun

Sürücü, bir modeli ilk kullanımda dönüştürüyorsa sürücünün derleme önbelleğe alma özelliğini desteklediğinden emin olun. Bu özellik, uygulama başlatıldığında derleme için kullanılan süreyi azaltır. Başlangıç süreleri çok uzunsa uygulamalar donanım hızlandırmasını kullanmayabileceğinden bu durum önemlidir. Örneğin, bazı uygulamalar 100 MB'tan fazla ağırlığa sahiptir ve bu ağırlıkları uygulama her başlatıldığında dönüştürmek israftır.

Minimum gecikmeyi azaltın

Modellerin donanım hızlandırmayı kullanmasını sağlamak için, hızın azaltılması Sürücülerde minimum gecikme. Birçok uygulama, birden çok kez çalıştırılan küçük modeller kullanır. Bir iş yükünü yürütmek için gereken minimum gecikme çok yüksekse (ör. birkaç milisaniye) modeller, donanım hızlandırmalarını kullanmak yerine iş yükünü CPU'da çalıştırabilir. Bu işlem yalnızca bir veya iki milisaniye sürer. Maliyetli mesaj dizileri senkronizasyonuna dikkat edin.

NN HAL SchedTune grubunu kullanma

Android 11 veya sonraki sürümlerde AOSP'de özel bir NN HAL Programlı işlemler arası NN HAL işlemlerinin büyük e-postalarda kullanılabilmesini sağlayan önceden tanımlanmış programdaki aynı süreçte uygulamaya benzer. top-app cgroup. Bu SchedTune grubunu kullanmak, özellikle küçük modeller için sürücü yükü azaltır.

SchedTune grubunu kullanmak için NN HAL sürecinin init.rc dosyasına aşağıdaki satırı ekleyin:

writepid /dev/stune/nnapi-hal/tasks