Changes between Version 18 and Version 19 of user_applications
- Timestamp:
- Dec 9, 2015, 4:12:09 PM (9 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
user_applications
v18 v19 142 142 143 143 This multi-threaded application makes the decompression of a MJPEG bit-stream contained in a file, an display the stream of images on the Frame Buffer. 144 It illustrates the "multi pipe-line" parallelism . It uses the message passing programming model, on top of the POSIX threads API, and the MWMR communication middleware.144 It illustrates the "multi pipe-line" parallelism: each image is decompressed by a five stages pipe-line implemented as five POSIX threads. Several images can be decomposed in parallel, as each cluster implement a complete pipe-line. It uses the message passing programming model, on top of the POSIX threads API, and the MWMR communication middleware. 145 145 The application is described as a TCG (Task and Communication Graph), and all communications between threads uses MWMR channels. 146 Each pipeline decompress one complete image, and there is one pipe-line per cluster. 147 It uses the chained buffer DMA component to display the stream of decompressed images.ç!!l:=m 146 It uses the chained buffer DMA component to display the stream of decompressed images. 148 147 It contains 6 types of threads (plus the "main" thread, that makes initialisation), and 7 types of MWMR communication channels: 149 148 * the TG thread dispatch the bit-stream to the pipeline. It is only mapped in cluster[0,0]. 150 149 * the 5 threads implementing the pipeline (DEMUX, VLD, IQZZ, IDCT, LIBU) are replicated in all clusters. 151 150 * the 7 MWMR channels are replicated in all clusters. 152 The image throughput is actually bounded by the TG task that cannot be parallelized. 151 The image throughput is actually bounded by the TG thread that cannot be parallelized. 152 As the MWMR communication channels support communication between software threads and hardware accelerators, the IDCT software thread can be optionally replaced by an hardware DCT coprocessor, if this component is available in the target architecture. 153 153 154 154 The hardware constraints are the following