RabbitFire™

Questions & Answers

What is RabbitFire?

RabbitFire is a parallel processing software engine. In other words, it’s software that makes it easier to run multiple processes in parallel.

Using the RabbitFire SDK, developers can accelerate an application's single thread functions by bringing them into a full-fledged parallel processing pipeline...all in a matter of minutes!

RabbitFire is also available as a toolkit that enables developers and non developers alike to build a complete parallel system out of existing blocks and stand alone applications without programming.



What's special about RabbitFire?

To provide a practical and efficient parallel framework, RabbitFire has developed a unique paradigm for enabling applications to process in parallel.

We recognize that when most software processing needs to be accelerated using a parallel mechanism, it is either because the process is executed many times or because many concurrent tasks must occur at once.

As a result, we don’t follow the more common approach for enabling parallel processing for applications, which reforms single thread functions by splitting computation. Instead, RabbitFire manages the execution of entire functions in parallel, honoring all process requirements and handling data buffering and synchronizing.

In simple words, RabbitFire allows developers to organize and execute existing single thread oriented functions in parallel. Simply push the functions into a RabbitFire pipeline, set the function requirements and voila ! Parallel computing is made easy.



What can RabbitFire do for me?

The RabbitFire SDK is a C/C++ API that delivers a parallel processing framework that uses pipelines to manage stream data. It provides extremely high performance through the use of low-level coding, lockless synchronization that avoids OS latency, and a zero-copy/zero-allocation strategy. When developers describe parallel processing strategies and constraints, RabbitFire ensures safe access, synchronization, and data buffering while honoring every thread-specific constrain, such as those required by the UI, third-party libraries or CPU streaming and processing.

The RabbitFire toolkit allows you to build a complete parallel system out of existing blocks and standalone applications with no programming effort.

The RabbitFire video pack enables both the SDK and the toolkit to take advantage of a full suite of standard video functions. These functions capture and record video from a file or from a digital device, scale, filter, perform edge detection, and much more.

Process profiling and monitoring screens allow you to view processing loads, histograms and time lines dynamically. These capabilities permit you to optimize parallel application performance by analyzing processing behavior and visually locating bottlenecks.

(more about Getting started)

(more about Video & motion pack content)



How much does it cost

RabbitFire is free for any non-commercial use, including but not limited to educational ,academic, research, private or home usage, and pilot projects. As a rule of thumb, if you don’t make money from using RabbitFire, you are entitled to a free license. If you directly or indirectly earn money froman application or service that uses RabbitFire, you should seek a commercial license.

(more about License)



How can I help

RabbitFire currently powers several real-time, mission critical applications. However, RabbitFire was introduced relatively recently as a standalone tool. As such, we’re looking for early adopters. Please help us by providing feedback on how you’re using RabbitFire, what it provides for you, and whether you’ve encountered any shortcomings. For example, we’re very interested in knowing whether you are unable to use RabbitFire in a specific context for lack of a feature or for some other reason.

RabbitFire’s unusual approach to enabling parallel processing solves many parallel processing needs that we believe aren't well addressed by other tools. If you agree, please spread the word to your friends and co-workers!

(comments, feed-back, suggestion, feature request, contact us)