NeuroSolutions Accelerator

Neural Network Parallel Computing for Multi-Core Processors and Graphic Cards

NeuroSolutions Accelerator works with NeuroSolutions, NeuroSolutions Infinity and NeuroSolutions for MATLAB1 neural network software to harness the massive processing power of multi-core processors and graphics cards (GPU's) from AMD, Intel and NVIDIA through parallel computing. NVIDIA CUDA™ and OpenCL™ enable training time improvements from hours to minutes when compared to traditional CPU's on neural networks using Levenberg-Marquardt - the most powerful form of back-propagation learning available.

  • Here is a quick comparison of a GPU versus CPU sample project in NeuroSolutions using one AMD Radeon (OpenCL) and three various NVIDIA (CUDA) graphics cards. The graph shows that the simulation run on a traditional processor took 4-hours and 15-minutes to complete while the fastest OpenCL-enabled version only took 7-minutes to complete!
    CUDA or OpenCL Boosted GPU   Traditional CPU
    Simulation Time in Minutes (Lower is Better)
    Download the Sample Project to try for yourself!
  • Here is a quick comparison of an OpenCL boosted CPU versus a traditional CPU sample project in NeuroSolutions using various CPU's. The graph shows training times reduced in OpenCL boosted CPU's between 25% and 80% compared to traditional non-multi-threaded CPU's. CPU's with Intel® Hyper-Threading Technology may see even larger performance gains.
    OpenCL Boosted CPU   Traditional CPU
    Simulation Time in Minutes (Lower is Better)
    Download the Sample Project to try for yourself!

Feature Summary

NeuroSolutions Accelerator features include:
  • Single & Double Precision Computation
  • Single or Multiple2 (CUDA Only) GPU Support
  • Multi-Threaded CPU Support (OpenCL Only)
  • Custom Solution Wizard DLL Deployment3
  • C++ Code Generation (for Windows) Deployment4

FAQ

Q. What is the difference between CUDA™ and OpenCL™?
A. CUDA™ is developed by NVIDIA and exclusive for their product line of graphics cards. OpenCL is the open standard in parallel computing and supports not only AMD and NVIDIA graphics cards, but also AMD and Intel processors.

Q. I already have a AMD or NVIDIA graphics card. Do I need to do anything else?
A. First, verify your card is supported. For NVIDIA CUDA you will need a card that supports at least the 2.0 library (view CUDA cards). As long as you have the full driver's package installed from AMD or NVIDIA's website then you should be ready to use it in NeuroSolutions. You can follow the instructions for How to Run in NeuroSolutions for guidance.

Q. I do not have an AMD or NVIDIA graphics card and do not plan on aquiring one. Will this product still benefit me?
A. If you have a modern computer from the past several years then you can still take advantage of boosting your AMD or Intel processor using OpenCL. For a comparison of boosted processors compared to non-boosted please refer to the chart above labeled "CPU (OpenCL) vs. CPU".

Q. I am interested in purchasing a new graphics card to take advantage of processing through a graphics card. What do you recommend?
A. We have tested our software on several older and newer graphics cards as indicated in the graph above, but we do have a page that is updated quarterly with a listing of recommended graphics cards broken down into price groups.

Q. There are a significant number of AMD graphics cards recommended versus NVIDIA on your "Best Graphics Cards for the Money" page. Why is that?
A. It all boils down to cost-to-performance. AMD graphics cards are faster than NVIDIA graphics cards due to NVIDIA throttling double precision performance on their GeForce™ and Quadro™ line of cards which is critical for the accuracy of neural network learning. And, AMD graphics cards are cheaper due to under-cutting NVIDIA due to their smaller market share in the gaming community which is the primary use of these components.

  1. NeuroSolutions for MATLAB currently only supports NVIDIA CUDA
  2. Multi-GPU supports up to 4 GPU's for NVIDIA graphics cards using the CUDA Library 2.0 or later.
  3. Requires Visual Studio 2008 or greater and the Pro level of the Custom Solution Wizard.
  4. Requires Visual Studio 2008 or greater and the Pro level of NeuroSolutions & C++ Code Generation for Windows; Windows only deployment.