Paralel Hesaplama Döneminde Biyometrik Algoritmalar

10/05/2013
Compartir!

Geleneksel olarak, yarı iletken endüstrisi her yeni nesildeki transistör sayısını iki katına çıkarırken bilgisayar aygıtlarının saat hızını arttırma yeteneğine sahiptir. Maalesef güç kısıtlamaları nedeniyle, son frekanslarda saat frekansı büyümesi durdu ve büyük mikroişlemci üreticileri, ürün portföylerini çok çekirdekli mimarilere çevirdi. Modern GPU'lar daha da ileri gitmekte ve şu anda yüzlerce basit çekirdeği makul bir güç bütçesine entegre etmektedir. Bu nedenle, yazılım şirketleri, seri yürütme için tasarlanmış olan geleneksel sıralı algoritmaları bu yeni cihazlara uyarlamak ve haritalamak için uğraş veriyorlardı. Bu paralelleştirme görevi, düşünebilecek kadar kolay değildir. Genel olarak, insanlar doğal olarak eylemlerini sıralı bir biçimde düşünmeye eğilimlidirler. Yüzlerce eşzamanlı eylemi (bazıları birbirine bağımlı olsa bile) paralel olarak hızlı bir şekilde tasavvur edebiliyor musunuz? Dünyadaki en iyi akıl ve programcıların çoğu öyle değildir. Ve bu makuldur. Günlük yaşamlarımızda, aynı anda dokuz veya on önemli şeyi halletmek zorunda kalıyorsak, iş yerinde bunalmış olma eğilimindeyiz. Ancak basitçe söylemek gerekirse, beynimizin çoklu görevlerle başa çıkmak için tasarlanmadığı anlaşılıyor. Paralel olarak yapmak istediğimiz görevler ne kadar çok (örneğin, telefon görüşmesi yaparken bir e-postayı cevaplamak gibi), yetersiz dikkat sebebiyle hata yapmamız o kadar muhtemeldir. GPU gibi cihazları hedef alan optimize edilmiş ve ölçeklenebilir paralel kod yazmanın uzun ve sıkıcı bir süreç olması nedeninin nedeni budur. Bu mimariler için kod yazma genellikle hataya eğilimli ve hata ayıklama zorluğu çekiyor. Seri hale getirilmiş versiyonu kolaylıkla programlanabilir ve birkaç gün içinde test edilebilen belirli bir çekirdek işlemi için verimli paralel kod yazan ayları harcamak nadir değildir.

Paralel hesaplamanın bu yeni döneminde, eğer bir şirket piyasadaki en yeni paralel donanımın özelliklerini tamamen kullanan bir yazılım ürününü serbest bırakmak istiyorsa, geçmişte ihtiyaç duyulandan daha fazla para ve kaynak sağlamalıdır. Herta Security olarak ürünlerimizde en başından beri paralelleştirme uygulamaya başladık ve yakında biyometrik algoritmaların ince taneli paralelleştirme ve veri-paralel vektör hesaplamalardan büyük fayda sağladığını fark ettik. Özellik özütleme işlemi gibi geleneksel biyometrik boru hattının katları aşamalarında doğal olarak paralellik vardır. Bununla birlikte, bazı özelliklerin bellek erişim modellerinin karmaşıklığı, veri yeniden kullanımı, önbelleğe alma ve zorlama ön getirme gibi stratejileri yapar. GPU hesaplamanın ortaya çıkmasıyla birlikte, programcı, artık gecikmeyi mümkün olduğunca azaltmak için milyonlarca eşzamanlı iş parçacığı ile uğraşmak, bunları senkronize etmek ve bu aygıtların heterojen önbellek mimarisini verimli bir şekilde kullanmalıdır. Bu görevler araştırma ve geliştirme açısından çok zaman alıyor olsa da, rakipsiz bir kullanıcı deneyimi sağlayarak donanımdaki son gelişmelerle uyumlu, kaliteli ürünler sunmamızı sağlıyorlar.