您的位置:首页 > 其它

Intel Parallel Studio 工具简介

2013-07-30 17:16 309 查看
Intel® Composer XE 2013

Intel® Composer XE 2013 is able to automatically generate Cyclomatic Complexity metrics as part of static analysis.Cyclomatic Complexity metrics (CC) have two recommended uses in software development. First, controlling complexity
can make code more maintainable to reduce bugs. Code with CC measurements that exceeds a threshold value could be reviewed and refactored to reduce complexity when appropriate. Code whose measurements exceed a higher threshold could be required to be refactored
unless a formal review determines that the level of complexity is acceptable. Secondly, the CC value can be used to estimate the number of tests required to thoroughly exercise all application paths.

Intel® Inspector XE 2013 provides an ability to visualize Cyclomatic Complexity metrics. A new tab “Complexity metrics” is added to Static Analysis result view. The ’Open’ button shows the Cyclomatic Complexity HTML report
in the default browser. The report shows the top 20 most complex functions as well as the complexity of the full list of functions for the application.

Intel® Inspector XE 2013 

In memory error analysis types, you can use to search for these kinds of errors: GDI resource leak, incorrect memcpy call, invalid deallocation, kernel resource leak, invalid memory access, invalid partial memory access,
memory growth, memory leak, memory not deallocated, mismatched allocation/deallocation, missing allocation, uninitialized memory access, and uninitialized partial memory access.

For threading error analysis types, you can search for these kinds of errors: Data race, deadlock, lock hierarchy violation, and cross-thread stack access.

Intel® Inspector XE 2013 also provides an ability to visualize Cyclomatic Complexity metrics. A new tab “Complexity metrics” is added to Static Analysis result view. The ’Open’ button shows the Cyclomatic Complexity HTML
report in the default browser. The report shows the top 20 most complex functions as well as the complexity of the full list of functions for the application.

Static Analysis
Static analysis attempts to identify errors and security weaknesses through deep analysis of source code. Static analysis can also detect race conditions resulting from misuse of parallel
programming frameworks such as OpenMP and Intel Cilk Plus.

Intel® Advisor XE 2013

Intel Advisor XE is a tool that helps you add parallelism into an existing application. It lets you evaluate the performance implications and the refactoring cost of
parallelizing a code region before committing resources to that endeavor. Because you only mark where the parallelism could be, your application stays serial. Thus, any changes made to ease the transition to parallel code can be verified with your existing
test system.

The Intel Advisor XE’s correctness tool will help you identify data issues like data races in your parallel experiment. A data race is a bug that can occur from adding parallelism to parts of your
program. A data race occurs when multiple tasks read and write data at a shared memory location without coordinating those read and write operations.

Intel® Thread Building Blocks
Intel® TBB provides functions related to the  following aspects: Algorithms, Containers, Memory
Allocation, Synchronization, Timing and Task Scheduling.

Intel® Cilk™ Plus
Intel® Cilk™ Plus adds simple language extensions to express data and task parallelism to the C and C++ language implemented
by the Intel® C++ Compiler, which is part of Intel® Studio XE product suites and Intel® Composer XE product bundles. These language extensions are powerful, yet easy to apply and use in a wide range of applications. Intel Cilk Plus has several benefits including:



Intel Cilk Plus has an open specification so other compilers may also implement these exciting new C/C++ language features.

Use Intel Cilk Plus when you want the following:
 Simple expression of opportunities for parallelism, rather than control of execution to perform operations on arrays

 Higher performance obtainable with inherent data parallelism semantics – array notation

 To use native programming, as opposed to managed deployment: no managed runtime libraries – you express the intent to mix parallel and     serial operations on the same data

Intel Cilk Plus involves the compiler in optimizing and managing parallelism. The benefits include:

 Code is easier to write and comprehend because it is better integrated into the language through the use of keywords and intuitive syntax

 The compiler implements the language semantics, checks for consistent use and reports programming errors

 Integration with the compiler infrastructure allows many existing compiler optimizations to apply to the parallel code. The compiler understands these four parts of Intel Cilk Plus, and is therefore able to help with compile time diagnostics, optimizations
and runtime error checking.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: