How smartcomputerlab/risc-v-parallel-programming-for-signal-and-image-processing.book works
This repository is a set of educational Python and C examples accompanying a book on RISC-V performance and parallel programming, rather than one integrated application. The reader’s workflow is to run standalone examples and compare serial, vectorized, library-optimized, and multiprocessing approaches across numerical computing, signal/audio processing, and image processing. The five labs organize those topics, progressing from basic SIMD examples to multicore image filtering. The graph groups examples by their documented subject; standalone execution and outputs are evident in sampled files, but the README does not document inter-example calls or a shared runtime pipeline.
Main entry points: lab0 Array and Filters · lab1 Vector Addition · 1.2.average_vector_float64.py Serial and Vector Average · 1.3.dot_float64.c Dot Product
Components 22
Foundations
- Array and Filters
codes/lab0
SIMD Computing
- Vector Addition
codes/lab1 - Serial and Vector Average
codes/lab1/1.2.average_vector_float64.py - Dot Product
codes/lab1/1.3.dot_float64.c - Matrix Multiplication
codes/lab1/1.4.matmult_np.py - Pi Estimation
codes/lab1/1.5.pi_vector.c
Signal and Audio
- Signal Generation
codes/lab2/2.1.sin_wave_np.py - FIR Filtering
codes/lab2/2.2.fir_vector.c - Fourier Transform
codes/lab2/2.3.fft_pure.py - Audio Synthesis
codes/lab2/2.4.synt_audio.py - Audio Vectorization
codes/lab2/2.5.audio_vect_np.py - Audio Features
codes/lab2/2.6.audio_features_np.py
Image Processing
- Image Drawing
codes/lab3/3.2.line_vectorized_np.py - Image Transforms
codes/lab3/3.5.rgb_resize_gray.py - Color Conversion
codes/lab3/3.7.rgb_hsv_np.py
Multicore Processing
- Multiprocessing Basics
codes/lab4/4.1.pools.py - Parallel Computation
codes/lab4/4.4.matmult_mp_pure.py - Image Difference
codes/lab4/4.5.rgb_image_diff_mp_np.py - Mandelbrot Rendering
codes/lab5/5.1.mandelbrot_mp_np.py - Sobel Filtering
codes/lab5/5.2.sobel_mp_np.py - Gaussian Filtering
codes/lab5/5.3.gaussian_mp_np.py
Other components
- Reader
Connections 21
- Reader → Array and Filters: explores
- Reader → Vector Addition: explores
- Reader → Serial and Vector Average: compares
- Reader → Dot Product: explores
- Reader → Matrix Multiplication: explores
- Reader → Pi Estimation: explores
- Reader → Signal Generation: explores
- Reader → FIR Filtering: explores
- Reader → Fourier Transform: explores
- Reader → Audio Synthesis: explores
- Reader → Audio Vectorization: explores
- Reader → Audio Features: explores
- Reader → Image Drawing: explores
- Reader → Image Transforms: explores
- Reader → Color Conversion: explores
- Reader → Multiprocessing Basics: explores
- Reader → Parallel Computation: explores
- Reader → Image Difference: explores
- Reader → Mandelbrot Rendering: explores
- Reader → Sobel Filtering: explores
- Reader → Gaussian Filtering: explores