160 likes | 269 Views
Algorithms in a Multiprocessor Environment. Kevin Frandsen ENCM 515. Outline. Introduction Algorithms Communication Models Common DSP Uses Conclusion. Introduction. What are Multiprocessor Cores? Two CPUs – Same Silicon Equal Capability Shared Memory Tighter Access.
E N D
Algorithms in aMultiprocessor Environment Kevin Frandsen ENCM 515
Outline • Introduction • Algorithms • Communication Models • Common DSP Uses • Conclusion
Introduction • What are Multiprocessor Cores? • Two CPUs – Same Silicon • Equal Capability • Shared Memory • Tighter Access
Introduction cont. • Other Multiprocessing Options • SMP • Usually Two on same board, not silicon • Shared Memory • Limited access to each other • Clustering • Independent processors • Communication Medium • NUMA
Algorithms • Finite Impulse Response (FIR) Filter • Common DSP Algorithm • Specialized hardware exists
Algorithms cont. • More on FIR • Divide and Conquer • O(n)/p time • Shared memory/registers a plus • Reduced communication overhead
Algorithms cont. • Matrix Operations • Common algorithms on large sets [ A11 A12 … A1n [ B11 B12 … B1n [ C11 C12 … C1n A21 A22 … A2n B21 B22 … B2n C21 C22 … C2n … … X … … = … … Am1 Am2 … Amn ] Bm1 Bm2 … Bmn ] Cm1 Cm2 … Cmn ]
Algorithms cont. • Matrix Multiplication • Large data transfers necessary in non-shared environments • If not bandwidth limited, scales well with processors • Matrix Inversion • Larger data loads
Communication Models • Shared Memory • Fast • Few concurrency problems • Still some, race conditions, etc. • Need to be on same board • Custom designed • Need secondary synchronization – Mutexes, Semaphores
Communication Models cont. • Message Passing (PVM, MPI, etc) • Flexible implementations • Self-synchronizing • Communication overhead (large)
Common DSP Uses • Shared Core and SMP • Best for real-time response • Easiest for integrated systems • ADSP - 21062 • Clustering • Batch processing • Images, 3D rendering • SCI at University of Utah
Scientific Computing Institute • 3D Visualization of Brain Tumor
Conclusion • How multiprocessing affects tasks • Ways of implementing a multiprocessing system • Uses in the “real world”
References • University of Utah. (2004, February 28). Applications: Tumor Visualization – Scientific Computing and Imaging Institute. Retrieved April 10, 2004, from http://www.sci.utah.edu/about/rwa-tumor-vis.html • Dr. Smith’s Mar 8 Presentation on Highly Parallel FIRs • Dr. Leon’s Parallel Computing Course