| 1 | = GIET_VM / User Applications = |
| 2 | |
| 3 | [[PageOutline]] |
| 4 | |
| 5 | The following applications use the GIET_VM [wiki:stdio_library system calls] and [wiki:user_libraries user libraries]. The multi-threaded applications have been designed to analyse the TSAR manycore architecture scalability. |
| 6 | |
| 7 | == __ Display__ == |
| 8 | |
| 9 | This mono-processor application read a stream of images (128 lines * 128 pixels / 1 byte per pixel), from a file on a FAT32 disk controller, and display it interactively on the frame buffer. The ''images.raw'' file available in the application directory contains 20 images. This application can be used to test peripherals such as block devices, frame buffer, and dynamic allocation of TTY terminals. |
| 10 | |
| 11 | The source code can be found [source:soft/giet_vm/applications/display/main.c here]. |
| 12 | |
| 13 | == __Transpose__ == |
| 14 | |
| 15 | This multi-threaded application read a stream of images (128 lines * 128 pixels), transpose it (X <-> Y), and display it on the frame buffer. |
| 16 | It can run on a multi-processors, multi-clusters architecture, with one thread per processor. |
| 17 | The input and output buffers containing the image are distributed in all clusters. |
| 18 | |
| 19 | The number of clusters must be a power of 2 no larger than 32 |
| 20 | The number of processors per cluster must be a power of 2 no larger than 4 |
| 21 | |
| 22 | For each image the application makes a self test (checksum for each line). The actual display on the frame buffer depends on frame buffer availability. |
| 23 | |
| 24 | The source code can be found [source:soft/giet_vm/applications/transpose/main.c here]. |
| 25 | |
| 26 | == __Convol__ == |
| 27 | |
| 28 | == __Classif__ == |