Giter VIP home page Giter VIP logo

dpsvm's Introduction


#DPSVM#

###An OpenMPI and CUDA based, distributed, parallel SVM implementation###

We have implemented a distributed and parallel Support Vector Machine training algorithm for binary classification using the OpenMPI library and the CUDA parallel programming model. We parallelize the modified Sequential Minimal Optimization algorithm used by popular tools like LIBSVM, and distribute the parallelism over GPUs in a cluster.


Dependencies


Performance

DPSVM took 137 seconds in training on the MNIST even-odd dataset, on a single Nvidia GTX 780 GPU. This reduced to 46 seconds, when using 10 GPUs via OpenMPI on a cluster connected with an Ethernet backbone. The gaussian kernel paramters chosen were c = 10 and gamma = 0.25, with a tolerance of 0.001. Herrero-Lopez et. al. use a single Nvidia Tesla C1060 GPU, whereas the Spark implementation was the SVMWithSGD() call from MLLib on 10 AWS m3.2xlarge machines.

The same job using LibSVM takes 13,963 seconds, using an Intel Core i7 920.

The DPSVM training phase has the same number of Support Vectors as LibSVM.

alt tag

dpsvm's People

Contributors

thesiddharth avatar adityagabbita avatar

Watchers

Megan avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.