Vector Fabrics, B.V.

Last updated
Vector Fabrics, B.V.
Type Private
Industry Embedded software development tools
FounderMartijn Rutten
Paul Stravers
Jos van Eijndhoven
Headquarters Zaltbommel, the Netherlands
Products Vector Fabrics Pareon
Website vectorfabrics.com multicoreprogramming.com

Vector Fabrics, B.V. was a software-development tools vendor originated from Eindhoven based in Zaltbommel, the Netherlands. They developed tools for programming multicore platforms. Vector Fabrics says to help software developers and OEMs that struggle to write error-free and efficient code for multicore and (heterogeneous) manycore processors.

Contents

Products

Vector Fabrics' Pareon Profile is a predictive profiling tool based on dynamic analysis to explore opportunities and bottlenecks for parallel execution of C and C++ code. The product includes a model of the target platform (e.g. ARM Android) to predict the performance and power gains of a proposed code rewrite. It has been used a.o. to optimize Blink and Webkit, the engine underlying the Chrome browser, the Bullet Physics engine, [1] the IdTech4 game engine underlying Doom 3, [2] and a number of video codecs and image processing [3] applications.

Vector Fabrics' Pareon Verify uses dynamic analysis to find bugs in C or C++ application code. It has been used to find bugs in various open source software projects like PicoTCP, VTK, Navit and YARP.

vfTasks [4] is an open-source library for writing multi-threaded applications in C and C++. It includes APIs for various synchronization and parallel programming patterns.

History

February 2007, Vector Fabrics was founded by three experts in multicore programming from NXP Semiconductors and Philips Research.

November 2012, Vector Fabrics was included in the EE Times 'Silicon 60' list of emerging startups. [5]

June 2012, Vector Fabrics released Pareon Profile, a tool to help programmers optimize software for multicore platforms. [6]

April 2013, Gartner selected Vector Fabrics as 'Cool Vendor in Embedded Systems & Software' in 2012. [7]

May 2013, Vector Fabrics joined the Multicore Association (MCA). [8]

May 2015, Vector Fabric moved from the center of Eindhoven, the Netherlands (Province of Brabant) to Zaltbommel, the Netherlands (Province of Gelderland).

October 2015 sees the public release of Pareon Verify, a tool to find software bugs via dynamic analysis.

Vector Fabrics was declared bankrupt in May, 2016. [9]

Related Research Articles

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

In computer science, dynamic recompilation is a feature of some emulators and virtual machines, where the system may recompile some part of a program during execution. By compiling during execution, the system can tailor the generated code to reflect the program's run-time environment, and potentially produce more efficient code by exploiting information that is not available to a traditional static compiler.

A programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications. The term usually refers to relatively simple programs, that can be combined to accomplish a task, much as one might use multiple hands to fix a physical object. The most basic tools are a source code editor and a compiler or interpreter, which are used ubiquitously and continuously. Other tools are used more or less depending on the language, development methodology, and individual engineer, often used for a discrete task, like a debugger or profiler. Tools may be discrete programs, executed separately – often from the command line – or may be parts of a single large program, called an integrated development environment (IDE). In many cases, particularly for simpler use, simple ad hoc techniques are used instead of a tool, such as print debugging instead of using a debugger, manual timing instead of a profiler, or tracking bugs in a text file or spreadsheet instead of a bug tracking system.

Automatic parallelization, also auto parallelization, or autoparallelization refers to converting sequential code into multi-threaded and/or vectorized code in order to use multiple processors simultaneously in a shared-memory multiprocessor (SMP) machine. Fully automatic parallelization of sequential programs is a challenge because it requires complex program analysis and the best approach may depend upon parameter values that are not known at compilation time.

<span class="mw-page-title-main">Multi-core processor</span> Microprocessor with more than one processing unit

A multi-core processor is a microprocessor on a single integrated circuit with two or more separate processing units, called cores, each of which reads and executes program instructions. The instructions are ordinary CPU instructions but the single processor can run instructions on separate cores at the same time, increasing overall speed for programs that support multithreading or other parallel computing techniques. Manufacturers typically integrate the cores onto a single integrated circuit die or onto multiple dies in a single chip package. The microprocessors currently used in almost all personal computers are multi-core.

<span class="mw-page-title-main">Rogue Wave Software</span> American software company

Rogue Wave Software was an American software development company based in Louisville, Colorado. It provided cross-platform software development tools and embedded components for parallel, data-intensive, and other high-performance computing (HPC) applications.

A massively parallel processor array, also known as a multi purpose processor array (MPPA) is a type of integrated circuit which has a massively parallel array of hundreds or thousands of CPUs and RAM memories. These processors pass work to one another through a reconfigurable interconnect of channels. By harnessing a large number of processors working in parallel, an MPPA chip can accomplish more demanding tasks than conventional chips. MPPAs are based on a software parallel programming model for developing high-performance embedded system applications.

The Multicore Association was founded in 2005. Multicore Association is a member-funded, non-profit, industry consortium focused on the creation of open standard APIs, specifications, and guidelines that allow system developers and programmers to more readily adopt multicore technology into their applications.

<span class="mw-page-title-main">Splunk</span> American technology company

Splunk Inc. is an American software company based in San Francisco, California, that produces software for searching, monitoring, and analyzing machine-generated data via a Web-style interface.

Dynamic Infrastructure is an information technology concept related to the design of data centers, whereby the underlying hardware and software can respond dynamically and more efficiently to changing levels of demand. In other words, data center assets such as storage and processing power can be provisioned to meet surges in user's needs. The concept has also been referred to as Infrastructure 2.0 and Next Generation Data Center.

<span class="mw-page-title-main">Parasoft</span> Software testing framework

Parasoft is an independent software vendor specializing in automated software testing and application security with headquarters in Monrovia, California. It was founded in 1987 by four graduates of the California Institute of Technology who planned to commercialize the parallel computing software tools they had been working on for the Caltech Cosmic Cube, which was the first working hypercube computer built.

Manycore processors are special kinds of multi-core processors designed for a high degree of parallel processing, containing numerous simpler, independent processor cores. Manycore processors are used extensively in embedded computers and high-performance computing.

For several years parallel hardware was only available for distributed computing but recently it is becoming available for the low end computers as well. Hence it has become inevitable for software programmers to start writing parallel applications. It is quite natural for programmers to think sequentially and hence they are less acquainted with writing multi-threaded or parallel processing applications. Parallel programming requires handling various issues such as synchronization and deadlock avoidance. Programmers require added expertise for writing such applications apart from their expertise in the application domain. Hence programmers prefer to write sequential code and most of the popular programming languages support it. This allows them to concentrate more on the application. Therefore, there is a need to convert such sequential applications to parallel applications with the help of automated tools. The need is also non-trivial because large amount of legacy code written over the past few decades needs to be reused and parallelized.

Intel Advisor is a design assistance and analysis tool for SIMD vectorization, threading, memory use, and GPU offload optimization. The tool supports C, C++, Data Parallel C++ (DPC++), Fortran and Python languages. It is available on Windows and Linux operating systems in form of Standalone GUI tool, Microsoft Visual Studio plug-in or command line interface. It supports OpenMP. Intel Advisor user interface is also available on macOS.

<span class="mw-page-title-main">CriticalBlue</span> Software company in United Kingdom

CriticalBlue is a Scottish software company based in Edinburgh that is primarily active in two areas of technology: anti-botnet and automated threat prevention for mobile businesses, and software optimization tools and services for Android and Linux platforms.

<span class="mw-page-title-main">MulticoreWare</span>

MulticoreWare Inc is a software development company, offering products and services related to HEVC video compression, machine learning, compilers for heterogeneous computing, and software performance optimization services. MulticoreWare's customers include AMD, Microsoft, Google, Qualcomm and Telestream. MulticoreWare was founded in 2009. Today it has offices in 3 countries – USA, China and India.

<span class="mw-page-title-main">UiPath</span> Romanian-American developer of robotic process automation software

UiPath is a global software company that makes robotic process automation (RPA) software. It was founded in Bucharest, Romania, by Daniel Dines and Marius Tîrcă. Its headquarters are in New York City. The company's software monitors user activity to automate repetitive front and back office tasks, including those performed using other business software such as customer relationship management or enterprise resource planning (ERP) software.

References