Dutch software company Vector Fabrics has recently announced its vfThreaded-x86 cloud-based software tool designed to facilitate the optimization and parallelization of applications for multi-core x86 architectures.
Aimed at software developers writing "performance-centric" code such as scientific, industrial, high-performance computing (HPC), video or imaging applications, the new tool aims to reduce the time involved and the risks associated with optimizing code for the latest Intel multi-core x86 processors.
"Our parallelization technologies for the Intel architecture make it easy to speed up a program using multiple threads, something programmers often shy away from since they find it difficult to split up code and to avoid hard-to-find bugs. Our tools largely automate this otherwise error-prone and lengthy manual parallelization process," said Mike Beunder, CEO of Vector Fabrics.
By using dynamic and static code analysis techniques, vfThreaded-x86 analyzes code to guide the developer in making the "right choices" for partitioning and separating code dependencies to separate cores.
Vector Fabrics describes its new tool's ability to examine cache hit/miss effects, data bandwidth to memories and bandwidth between individual code sections. The tool also comes with a GUI to provide code visualizations that highlight code hotspots and dependencies that might require partitioning trade-offs.
The tool models and predicts code performance improvements prior to altering the code, (potentially) saving a developer's time trying code changes on an ad-hoc trial basis. Using the point-and-click performance analysis feature quickly identifies productive code changes. In addition, the dependency analysis function avoids data races and promotes a correct-by-construction approach to multi-core development.
vfThreaded-x86 is accessed through the Vector Fabrics website using a standard web browser — the software development tool runs in the Amazon EC2 cloud.