Rust dilinde büyük küçük harf duyarsız sıralama test edildi
Öne çıkanlar
- 10 bin elemanlı dizide sort_by_cached_key yöntemi 853 mikrosaniye sürerken yineleyici tabanlı yöntem 5,54 milisaniyeye çıktı.
- Unicode karakterleri üzerinde sürekli yineleme yapmak bellek tahsisinden tasarruf etmenin avantajını tamamen ortadan kaldırdı.
- Unicase kütüphanesi özellikle 5 ve 10 elemanlı küçük veri kümelerinde en hızlı sıralama performansını sergiledi.
Rust programlama dilinde metin sıralarken bellek ayırma maliyetini düşürmek amacıyla hazırlanan performans testleri yayımlandı. Geliştirici, standart kütüphanedeki to_lowercase yöntemiyle her metin için bellek ayırmak yerine yineleyici üzerinden karakter karakter karşılaştırma yapmanın hızını inceledi. Yapılan kıyaslama testinde standart anahtar önbellekleme yöntemi, yineleyici tabanlı yaklaşım ve unicase kütüphanesi farklı veri boyutlarında karşılaştırıldı.
Apple M2 Max işlemcili donanım üzerinde divan aracıyla yürütülen testler, 1 ile 10 bin eleman arasındaki veri dizileriyle gerçekleştirildi. Sonuçlara göre yineleyici üzerinden harf dönüştürerek karşılaştırma yapmak, bellek tahsisinden kaçınsa bile dizi boyutu büyüdükçe ciddi bir performans kaybına yol açtı. 10 bin elemanlı testte önbellek kullanan sort_by_cached_key yöntemi 853 mikrosaniyede tamamlanırken, yineleyici tabanlı yöntem 5,54 milisaniye sürdü.
Test verileri, Unicode karakterleri üzerinde yineleme yapmanın getirdiği hesaplama yükünün bellek ayırma maliyetinden çok daha yüksek olduğunu gösterdi. Harici unicase kütüphanesinin kullanımı ise küçük dizilerde en hızlı sonucu vererek dikkat çeken bir alternatif sundu. Sonuçlar, Rust tarafında tekil eleman haricindeki senaryolarda sort_by_cached_key yaklaşımının genel performans açısından en güvenilir seçenek olduğunu ortaya koydu.
Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.