Language:
Login Register
Share
Product Details
vfThreaded-x86
(0) | 0 Reviews | 3514 Views
Product Version:
Last Updated: 07 Dec 2011

 
Key Features and Benefits:

 Benefits:

  • Utilize the performance of the latest multicore x86 processors
  • Develop scalable programs for dual-core, quad-core, and manycore processors
  • Parallelize your C program in hours instead of months
  • Draw rapid conclusions from an intuitive graphical user interface
  • Predict the speed of your parallelized program before implementing
  • Don't waste time on ineffective strategies
  • Avoid introducing subtle, hard-to find bugs

Features:

  • Performs throrough static and dynamic code analysis
  • Point and click user interface shows known-good parallelization strategies
  • Simple subscription reduces your up-front costs and risks
  • Parallelizes programs having millions of lines of code
  • Runs in the cloud using Amazon's EC2 services

 



Description
Specifications
Company
Reviews
Detailed Product Description

Overview

vfThreaded-x86 screenshot
 
Even low-end x86 processors have multiple cores today, but writing multi-threaded software that takes advantage of them is labor-intensive and error-prone. Threading your code can take months to complete, and even if you manage to get it working right, your implementation might not reach the required performance.
 
vfThreaded-x86 changes all that. It is the only tool that gives you the precise information you need to make sure that your parallelized software will work correctly and have the highest performance on your multicore x86 machine.
 
Profiling and coverage
 
vfThreaded-x86 screenshot of profile and coverage
 
vfThreaded-x86 performs an elaborate profiling step, keeping track of where the compute cycles go, counting cache hits/misses in each code section, memory bottlenecks and many program internals. Coverage analysis is performed to ensure your test set is complete. All this data collection provides the basis to explore and find your best parallelization strategy.
 
Program visualization
 
vfThreaded-x86 screenshot of the 2D profile
 
vfThreaded-x86 provides an easy-to-navigate hierarchical visualization of your code execution. Simply double-click on the code sections that take up the most execution cycles to zoom in and parallelize.
 
Data analysis
 
vfThreaded-x86 screenshot of bandwidth properties
 
vfThreaded-x86 keeps track of all data movements internal to your code. Since performance is often highly I/O dependent, you can zoom in and examine I/O behavior. Profile your cache hit/miss rates and see their effects on performance. Find memory bottlenecks and remove them. When isolating a section of code, it's important to know what data goes in, and what data goes out. vfThreaded-x86 gives you all the data you need in an easy-to-understand manner.
 
Data dependencies
 
vfThreaded-x86 screenshot of streaming data dependencies
 
Data dependencies make parallelization hard. When two code sections are reading and updating the same data structure, how can you ensure the program is still correct after these sections have been placed into separate threads? vfThreaded-x86 shows you such dependencies in a graphical way, cross-linking them to your code. Even streaming data communication patterns are automatically detected. The "Parallelize" function analyses these dependencies and parallelizes code for you, correctly handling the dependencies.