2012-08-27 19 views
5

giriş vektörlerinden birinde saklamak mümkün mü? Accelerate Framework'ün vDSP işlevlerinde, tüm fonksiyonlar bir sonuç vektörü girmenizi gerektirir. Orijinal giriş vektöründe olan herhangi bir şeye artık ihtiyacım yoksa giriş vektörünü (veya giriş vektörlerinden birini) sonuç vektörü olarak geçmek doğru mu? Demek istediğim deSonucu vDSP çerçevesinde

Örnek:

vDSP_vsadd(input_vector,1,scalar_addition,input_vector,1,length); 

Bu input_vector alıp tüm öğelere bir scalar_addition eklersiniz. Sonuç, input_vector'da saklanır. (; Sen çıkış için &input_vector[length/2] kullanmak ve anlamlı sonuçlar elde etmek bekleyemezsiniz örneği için onlar yerinde kesinlikle olduğu sürece) VDSP içinde

cevap

4

basit vektör işlemleri hepsi doğru yerinde çalışmaktadır. Aslında, bunları yerinde kullanmak, önbellek basıncını azaltabileceğinden, genellikle daha iyi performans verir.

Daha karmaşık olan vDSP işlemlerinden bazıları, bir veya daha fazla argümanıyla yerinde çalışmayı desteklemez; Bu vDSP referans kılavuzunda çağrılmalıdır.

+0

'Yerinde' demek istediğim şeyi tam olarak ifade ediyor - giriş vektörü çıkış vektörü olarak değiştiriliyor mu? vDSP Başvuru Kılavuzu'nu hızlıca aradım ve belgede yer alan "yerinde" ifadesinin sıralama ve fft algoritmalarına atıfta bulunduğunu buldum, bu daha basit işlevlerin "yerinde" yi desteklemediği anlamına geliyor sonuç vektörleri, ya da daha basit işlevlerin açıkça belgelenmesi gerekmediği “yerinde” olmasını destekliyor mu? – user1357607

+2

Evet, "yerinde", tanımladığınız anlamına gelir; Basit işlevler için açık bir şekilde belgelenmelidir, ancak değil. –