In: Computer Science
5. How are graphics processing units (GPUs) similar to, yet different from, SIMD array processors? What types of computational problems are well suited to run on GPU-accelerated systems?
`Hey,
Note: Brother if you have any queries related the answer please do comment. I would be very happy to resolve all your queries.
SIMD commonly means executing equal practise for all facts in parallel. if your device helps 32 threads and your records array is of 320 elements then you definately attain parallelism of 32 threads and final factors are processed in 10 batches. So essentially you are constrained by way of wide variety of threads that may run in parallel.
GPU alternatively works like SIMD in keeping with stream multiprocessor (SM). this is they are able to run 1024 threads in parallel like SIMD per SM for brand new Nvidia GPUs. (Digression: they do so in batch of 32 threads known as warps, but forget about it as of now).
Now right here is the distinction. GPU has more than one such SM every supporting block of 1024 threads which also can be synchronized. in step with SM they act like SIMD however when you install your code on GPU you can have many such blocks of 1024 threads which act like distinct tactics of 1024 SIMD threads every. Its like multi middle machine. So this type of processing with multiple SMs is called as SPMD (unmarried process more than one statistics)
Problems like deep training module are suited to be run on GPU
Kindly revert for any queries
Thanks.