Vector Fabrics claims it can speed up multicore design
Vector Fabrics, the multicore processor design tool firm, has introduced a development tool which it claims can speed up the process of optimising applications for multicore systems.
“Optimising apps for multicore architectures is hard, error prone, and takes lots of time,” said Mike Beunder, CEO of Vector Fabrics.
“As a result, a lot of software isn’t optimised yet and dual-core or quad-core devices provide minimal speed-ups,” said Beunder.
According to Beunder, the tool called Pareon can speed up development of applications on dual-core by 1.7x and by 3.5x on quad-core processors.
How does it achieve this? According to Vector Fabrics, the tool can prevent the appearance of those hard-to-find and hard-to-reproduce threading bugs. Its ability to model the hardware means that the developer is less likely to write code that introduces performance bottlenecks or even causes slowdowns.
Largely based on both the firm’s previous vfEmbedded and vfThreaded-X86 tools, Pareon also includes bus and shared cache contention modelling, support for C/C++, ARM Neon, and recognising many more parallel code patterns.
Also unlike the previous tools which ran in the user’s web browser, Pareon runs locally on a workstation. As a result it is integrated with typical development workflows that include complex build mechanisms, and targets large applications that rely heavily on calling routines inside binary libraries.
Pareon follows a three-step process that turns a sequential program into a parallelised, faster implementation:
First the tool analyses and runs the program on a model of the multicore hardware, and then gives the developer visibility of the program’s execution, internal dependencies, and memory behaviour. So memory and compute bottlenecks can be identified.
Another feature is the tool will identify code construction that could prevent parallelism.
It will indicate the impact of the parallelisation on program performance, taking into account the multiple processors, memory and cache bottlenecks, synchronisation and communication and even thread scheduling overhead.
Finally, code refactoring steps that implement the parallel constructs are shown.
“This keeps the developer in control of the parallel code while eliminating the risk of introducing hard-to-detect and correct bugs,” said the company.
There are hardware models for key processors including ARM-based or x86 multicore systems.
The application is then run on this model giving visibility of the effects of cache hit/miss rates or memory bottlenecks on parallel application performance.
A fully functioning 15-day evaluation copy can be downloaded from the Vector Fabrics website after registration.
Pricing starts at $1,900 for a single-user licence.