100 likes | 262 Views
FFTW and Matlab*p. Richard Hu 6.338 Project. Outline. Background Work Done and Algorithm Results Q&A. Background. Integrating FFTW into Matlab*p requires translating from block-cyclic distribution to row distribution and back Want to minimize communication and delays. Work Done.
E N D
FFTW and Matlab*p Richard Hu 6.338 Project
Outline • Background • Work Done and Algorithm • Results • Q&A
Background • Integrating FFTW into Matlab*p requires translating from block-cyclic distribution to row distribution and back • Want to minimize communication and delays
Work Done • Program translates between virtually any block-cyclic distribution and any row distribution • Requires knowledge of positions of blocks and rows for other processors
Algorithm • Clump blocks in the same row together to achieve “temporary” row distribution • Shift rows between processors to achieve “desired” row distribution • Calculate Fourier Transform • Shift rows between processors back to “temporary” row distribution • Divide rows into blocks
Algorithm • Gather positions of blocks and rows for other processors and group into sorted arrays • Iterates through every position in the matrix and determines the sending and receiving processor
Variants • One processor acts as head node, directing sends and receives • Each node keeps track of the rows and columns it should send/receive and all communication is done at the end.