Abstract

Software patterns codify the collective knowledge and experience of software experts. Over the years, the parallel programming community has accumulated a significant amount of experience in the form of software patterns. We show that parallel programming patterns can be used in medical imaging applications on multi-core platforms. We discuss two problem decomposition patterns – task and data decomposition, which can be used to expose concurrency in programming tasks; and three program structuring patterns – task parallelism, data parallelism, and pipelining, which can be exploited to structure a parallel program. We illustrate how to use those patterns to improve the startup time, runtime throughput, and algorithm reliability in medical image viewing, visualization, and analysis on multi-core platforms. Our experience suggests that the computing power provided by multi-core and many core platforms can be systematically exploited in medical imaging applications by following the best practices established by software patterns for parallel programming.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call