3 puan yazan GN⁺ 2024-06-26 | 1 yorum | WhatsApp'ta paylaş

$2 mikrokontrolcüde SIMD hızlandırmalı bilgisayarlı görü uygulaması

ESP32-S3'ün performansı

  • ESP32-S3, 240MHz çift çekirdekli CPU, WiFi, Bluetooth Low Energy radyo ve çeşitli çevre birimlerini içeren düşük maliyetli bir mikrokontrolcüdür.
  • Bu çip 128 bit SIMD komutlarını destekler ve bunlardan yararlanıldığında performans önemli ölçüde artırılabilir.

SIMD hızlandırmalı FAST köşe dedektörü uygulaması

  • FAST köşe dedektörü SIMD komutları kullanılarak hızlandırıldı ve böylece QVGA (320x240) kareler yaklaşık 6ms'de işlenebilir hale geldi.
  • Bu sayede referans uygulamaya kıyasla yaklaşık iki kat performans elde edildi.

Assembly dili ve register allocator

  • ESP32-S3 üzerinde assembly dili öğrenildi ve çipin kısıtlarını aşmak için temel bir register allocator (basm) yazıldı.
  • SIMD komutlarıyla aynı anda 16 pikseli işleyen bir fonksiyon uygulandı.

Piksel verisi işleme

  • Piksel verisini işlemek için merkez piksel ile çevresindeki pikseller arasındaki farkı karşılaştıran işlemler gerçekleştirildi.
  • ESP32-S3'ün kısıtlarını aşmak için piksel verisini uygun şekilde dönüştürmenin bir yolu geliştirildi.

Performans artışı

  • SIMD hızlandırmalı FAST köşe dedektörü sayesinde işlem hızı yaklaşık %220 artırıldı.
  • Böylece ESP32-S3, 30fps VGA akışını gerçek zamanlı olarak işleyebilir hale geldi.

GN⁺ görüşü

  • ESP32-S3'ün kullanım alanı: Fiyatına göre güçlü performans sunan ESP32-S3, çeşitli IoT ve gömülü sistem projeleri için kullanışlıdır.
  • SIMD komutlarının önemi: SIMD komutlarından yararlanarak düşük özellikli donanımlarda bile yüksek performans elde edilebilir.
  • Assembly dili öğrenimi: Assembly dili öğrenmek, donanımın ayrıntılı çalışma biçimini anlamayı ve optimizasyon yeteneği geliştirmeyi sağlar.
  • Kısıtları aşmak: Donanım kısıtlarını aşma süreci, yaratıcı problem çözme becerilerini geliştirebilir.
  • Gerçek zamanlı bilgisayarlı görü: Düşük maliyetli mikrokontrolcülerde bile gerçek zamanlı bilgisayarlı görü görevlerinin mümkün olduğunu gösterir.

1 yorum

 
GN⁺ 2024-06-26
Hacker News yorumları
  • Silikonun ortalama bir kahveden daha ucuz olması harika. Belki de çipler fazla ucuz değildir; kahve fazla pahalıdır.
  • ESP32-CAM kartı pratik bilgisayarlı görü projelerini destekliyor.
  • İlgileniyorsanız Edge Impulse ürününe göz atmanızı öneririm.
  • Edge Impulse, derin öğrenme, bilgisayarlı görü ve DSP işlerini optimize ediyor.
  • TensorFlow, PyTorch ve JAX modellerini yüklerseniz optimize edilmiş bir C++ kütüphanesi alabiliyorsunuz.
  • Edge Impulse, çeşitli gömülü donanımlara uygun model eğitim stüdyosu sunuyor.
  • ESP32-S3 üzerinde SIMD hakkında kısa bir yazıya da bakmaya değer.
  • Daha yüksek çözünürlük ve kare hızlarını işlemek için birden fazla ESP32'yi paralel kullanmanın mümkün olup olmayacağını merak ediyorum.
  • FAST özellik algılayıcısı SIMD ile hızlandırılarak performans %220 artırıldı.
  • ARMv7 ve ARMv8'de isteğe bağlı SIMD komut seti genişletmeleri bulunuyor.
  • Orrin Nano 40 TOPS sunuyor; bu da Copilot+ için yeterli.
  • Kızılötesi ışığı görünür ışığa dönüştürmenin bir yolu araştırıldı.
  • Raspberry Pi Pico'da VGA/TV ekranı gerçekleştiren PicoVGA kütüphanesi var.
  • Rust ile ESP32 denetleyicilerini kullanmanın mümkün olup olmadığını merak ediyorum.
  • ESP32'nin VLIW slotlarına sahip olup olmadığını ve daha sıkı komut paketlemesinin mümkün olup olmadığını merak ediyorum.
  • SIMD, bu tür işlemlerde SMT'den daha üstün.
  • Daha pahalı ve daha iyi olanı tercih ederim. Intel UpSquared var.