160 likes | 282 Vues
This comprehensive outline delves into the world of algorithms designed for multiprocessor environments. It covers key concepts such as different multiprocessor architectures (e.g., SMP and clustering) and communication models like shared memory and message passing. Important algorithms related to digital signal processing (DSP), including Finite Impulse Response (FIR) filters and matrix operations, are discussed. Real-world applications in scientific computing and real-time processing illustrate the importance of these algorithms in tasks such as 3D rendering and brain tumor visualization.
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