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, uygulama başlatıldığında derleme için kullanılan süreyi azaltan derleme önbelleğe alma özelliğini desteklediğinden emin olun. 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 uygulama her başlatıldığında israf yaratan her seferde bunları dönüştürür.
Minimum gecikmeyi azaltma
Modellerin donanım hızlandırmayı kullanmasını sağlamak için sürücülerdeki minimum gecikmenin azaltılması önemlidir. Birçok uygulama, birden çok kez yürütülen küçük modeller kullanır ve bir iş yükünü yürütmek için minimum gecikme çok yüksek olursa (ör. birkaç milisaniye) modeller, iş yükünü CPU üzerinde çalıştırabilir. Bu işlem, donanım hızlandırma kullanmak yerine 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ümleri çalıştıran AOSP, önceden tanımlanmış top-app
cgroup içindeki aynı işlem uygulamasına benzer şekilde, ara işlemler arası NN HAL işlemlerinin büyük çekirdekleri kullanmasına olanak tanıyan özel bir NN HAL SchedTune grubu içerir. Bu SchedTune grubunu kullanmak, özellikle küçük modeller için sürücü yükü azaltır.
SchedTune grubunu kullanmak için NN HAL işleminin init.rc
dosyasına aşağıdaki satırı ekleyin:
writepid /dev/stune/nnapi-hal/tasks