Wednesday 24 September 2014

Why do multicore systems make it harder to find and diagnose bugs?


Since many projects will include Java and C or C++, teams will find it easier and more productive to work with tools in an integrated development environment. There are tool suites that can be used for both embedded and hosted platforms. Commercial versions offer automated work flow and powerful tools for program analysis, program inspection, program understanding, and architecture visualisation. Using an integrated development environment with targeted advanced static analysis tools (see fig 3) enables developers to discover the underlying design intentions of existing concurrent code, and recognise when new code deviates from this design. It provides early warning when new concurrency defects are first introduced and uses cutting edge technologies to help developers identify and understand them. 

Developing embedded applications for multicore platforms requires a new approach. Static analysis offers the only feasible means to explore all possible code paths for software errors in highly concurrent systems. When used in conjunction with other code quality practices such as code reviews and integration testing, advanced static analysis tools can significantly reduce the risk of field failures due to undiscovered concurrency bugs. 
- See more at: http://www.newelectronics.co.uk/electronics-technology/why-do-multicore-systems-make-it-harder-to-find-and-diagnose-bugs/64806/#sthash.KhIPnZAA.dpuf

No comments:

Post a Comment