fftw architecture

23
S t e v e n G . J o h n s o n  M a t t e o F r i g o  T h i s w o r k i s p r o d u c e d b y T h e C o n n e x i o n s P r o j e c t a n d l i c e n s e d u n d e r t h e  C r e a t i v e C o m m o n s A t t r i b u t i o n L i c e n s e  A b s t r a c t  D i s c u s s i o n o f t h e c o n s i d e r a t i o n s i n v o l v e d i n h i g h - p e r f o r m a n c e F F T i m p l e m e n t a t i o n s , w h i c h c e n t e r  l a r g e l y o n m e m o r y a c c e s s a n d o t h e r n o n - a r i t h m e t i c c o n c e r n s , a s i l l u s t r a t e d b y a c a s e s t u d y o f t h e F F T W  l i b r a r y .  b y S t e v e n G . J o h n s o n ( D e p a r t m e n t o f M a t h e m a t i c s , M a s s a c h u s e t t s I n s t i t u t e o f T e c h n o l o g y ) a n d M a t t e o  F r i g o ( C i l k A r t s , I n c . )  1 I n t r o d u c t i o n  A l t h o u g h t h e r e a r e a w i d e r a n g e o f f a s t F o u r i e r t r a n s f o r m ( F F T ) a l g o r i t h m s , i n v o l v i n g a w e a l t h o f m a t h e -  m a t i c s f r o m n u m b e r t h e o r y t o p o l y n o m i a l a l g e b r a s , t h e v a s t m a j o r i t y o f F F T i m p l e m e n t a t i o n s i n p r a c t i c e  e m p l o y s o m e v a r i a t i o n o n t h e C o o l e y - T u k e y a l g o r i t h m [ 7 ] . T h e C o o l e y - T u k e y a l g o r i t h m c a n b e d e r i v e d i n t w o o r t h r e e l i n e s o f e l e m e n t a r y a l g e b r a . I t c a n b e i m p l e m e n t e d a l m o s t a s e a s i l y , e s p e c i a l l y i f o n l y p o w e r - o f -  t w o s i z e s a r e d e s i r e d ; n u m e r o u s p o p u l a r t e x t b o o k s l i s t s h o r t F F T s u b r o u t i n e s f o r p o w e r - o f - t w o s i z e s , w r i t t e n  i n t h e l a n g u a g e  d u j o u r  . T h e i m p l e m e n t a t i o n o f t h e C o o l e y - T u k e y a l g o r i t h m , a t l e a s t , w o u l d t h e r e f o r e s e e m  t o b e a l o n g - s o l v e d p r o b l e m . I n t h i s c h a p t e r , h o w e v e r , w e w i l l a r g u e t h a t m a t t e r s a r e n o t a s s t r a i g h t f o r w a r d  a s t h e y m i g h t a p p e a r  F o r m a n y y e a r s , t h e p r i m a r y r o u t e t o i m p r o v i n g u p o n t h e C o o l e y - T u k e y F F T s e e m e d t o b e r e d u c t i o n s  i n t h e c o u n t o f a r i t h m e t i c o p e r a t i o n s , w h i c h o f t e n d o m i n a t e d t h e e x e c u t i o n t i m e p r i o r t o t h e u b i q u i t y o f  f a s t o a t i n g - p o i n t h a r d w a r e ( a t l e a s t o n n o n - e m b e d d e d p r o c e s s o r s ) . T h e r e f o r e , g r e a t e o r t w a s e x p e n d e d  t o w a r d s n d i n g n e w a l g o r i t h m s w i t h r e d u c e d a r i t h m e t i c c o u n t s [ 1 2 ] , f r o m W i n o g r a d ' s m e t h o d t o a c h i e v e  Θ (n) m u l t i p l i c a t i o n s  ( a t t h e c o s t o f m a n y m o r e a d d i t i o n s ) [ 5 5 ] , [ 2 4 ] , [ 1 3 ] , [ 1 2 ] t o t h e s p l i t - r a d i x v a r i a n t o n  C o o l e y - T u k e y t h a t l o n g a c h i e v e d t h e l o w e s t k n o w n t o t a l c o u n t o f a d d i t i o n s a n d m u l t i p l i c a t i o n s f o r p o w e r - o f -  t w o s i z e s [ 5 7 ] , [ 1 1 ] , [ 5 4 ] , [ 3 3 ] , [ 1 2 ] ( b u t w a s r e c e n t l y i m p r o v e d u p o n [ 2 8 ] , [ 3 2 ] ) . T h e q u e s t i o n o f t h e m i n i m u m  p o s s i b l e a r i t h m e t i c c o u n t c o n t i n u e s t o b e o f f u n d a m e n t a l t h e o r e t i c a l i n t e r e s t i t i s n o t e v e n k n o w n w h e t h e r  b e t t e r t h a n  Θ (nlogn) c o m p l e x i t y i s p o s s i b l e , s i n c e  (nlogn) l o w e r b o u n d s o n t h e c o u n t o f a d d i t i o n s h a v e  o n l y b e e n p r o v e n s u b j e c t t o r e s t r i c t i v e a s s u m p t i o n s a b o u t t h e a l g o r i t h m s [ 3 4 ] , [ 3 7 ] , [ 3 8 ] . N e v e r t h e l e s s , t h e  d i e r e n c e i n t h e n u m b e r o f a r i t h m e t i c o p e r a t i o n s , f o r p o w e r - o f - t w o s i z e s  n , b e t w e e n t h e 1 9 6 5 r a d i x - 2 C o o l e y -  T u k e y a l g o r i t h m (  5nlog 2 n [ 7 ] ) a n d t h e c u r r e n t l y l o w e s t - k n o w n a r i t h m e t i c c o u n t (  34 9 nlog 2 n [ 2 8 ] , [ 3 2 ] )  r e m a i n s o n l y a b o u t 2 5 % .  V e r s i o n 1 . 1 4 : S e p 1 8 , 2 0 0 9 4 : 3 7 p m G M T - 5  h t t p : / / c r e a t i v e c o m m o n s . o r g / l i c e n s e s / b y / 2 . 0 /  W e e m p l o y t h e s t a n d a r d a s y m p t o t i c n o t a t i o n o f  O f o r a s y m p t o t i c u p p e r b o u n d s ,  Θ f o r a s y m p t o t i c t i g h t b o u n d s , a n d  f o r a s y m p t o t i c l o w e r b o u n d s [ 3 1 ] .  

Upload: ircwaves

Post on 09-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 1/23

Page 2: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 2/23

Page 3: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 3/23

Page 4: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 4/23

Page 5: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 5/23

Page 6: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 6/23

Page 7: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 7/23

Page 8: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 8/23

Page 9: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 9/23

Page 10: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 10/23

Page 11: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 11/23

Page 12: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 12/23

Page 13: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 13/23

Page 14: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 14/23

Page 15: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 15/23

Page 16: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 16/23

Page 17: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 17/23

Page 18: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 18/23

Page 19: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 19/23

Page 20: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 20/23

Page 21: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 21/23

Page 22: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 22/23

Page 23: FFTW Architecture

8/8/2019 FFTW Architecture

http://slidepdf.com/reader/full/fftw-architecture 23/23