GPU + Click. Technical paper: http://www.cs.utah.edu/~wbsun/snap.pdf
C++ C Perl TeX Java Shell Other
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
apps CVSucks. Feb 16, 2012
bsdmodule Lexer: Make configuration parsing iterative rather than recursive. Apr 22, 2012
conf test-ping-userlevel: Take an INTERVAL command line argument. Feb 22, 2012
doc bug fix Nov 21, 2012
drivers Add polling patch for e1000-7.6.15.5 driver. Feb 28, 2010
elements Good performance, though not 10Gbps at small sizes. Jan 4, 2013
etc Add click_relax_fence(): fence that relaxes the processor. May 16, 2012
exopc Lexer: Make configuration parsing iterative rather than recursive. Apr 22, 2012
g4cnm @ edeb1f3 description Apr 2, 2013
include tmp Jan 4, 2013
lib MT safe batch kill Jan 3, 2013
libg4c @ 9ff58e1 description Apr 2, 2013
linuxmodule Tweak. Oct 9, 2012
m4 Configury: Detect C++11 features and -W -Wall compatibility better. Jul 20, 2012
ns Netmap zero-copy (and some other improvements). Feb 21, 2012
test classification.hh: fix bug when matching with an empty program Nov 9, 2012
tools Bitvector internals: Update documentation style. Aug 10, 2012
userlevel good Dec 28, 2012
.gitignore bug fix Dec 21, 2012
.gitmodules Submodules added Nov 21, 2012
AUTHORS Minor authors updates Sep 28, 2011
COPYING more COPYING/LICENSE bs Feb 25, 2005
DISTFILES Fix bugs and missings during building Nov 20, 2012
FAQ List all driver names explicitly. Dec 1, 2011
INSTALL Update ns-3 click integration urls in README and INSTALL files Aug 10, 2012
LICENSE Update license year. Sep 3, 2009
Makefile.in Improve 'make uninstall' target. Nov 9, 2011
NEWS Prepare to release 2.0.1. Sep 24, 2011
NODIST Add more files to the distribution. Jul 17, 2011
README Update README, notes for possible users. Jul 12, 2014
README.old Make sure curious people know what this is. Nov 21, 2012
aclocal.m4 update makefile boilerplate, including using the true aclocal May 12, 2006
click-buildtool.in Netmap zero-copy (and some other improvements). Feb 21, 2012
click-compile.in Netmap zero-copy (and some other improvements). Feb 21, 2012
click-mkelemmap Avoid uninitialized variable warning. Jul 12, 2011
click.spec We no longer need $infodir. Nov 9, 2011
config-bsdmodule.h.in Enabled assertions support for bsdmodule. Jul 12, 2011
config-linuxmodule.h.in packet.cc: Clear tx_flags for kernels with SKBTX_DEV_ZEROCOPY Sep 26, 2012
config-ns.h.in Timestamp closure. Aug 25, 2008
config-userlevel.h.in User-level Click: Support netmap. Feb 20, 2012
config.guess Yet newer config.sub and config.guess. Sep 21, 2011
config.h.in Add and support ./configure --enable-smaller-code. Jul 25, 2012
config.mk.in Build process: Support building packages with DESTDIR. Nov 9, 2011
config.sub Yet newer config.sub and config.guess. Sep 21, 2011
configure Merge pull request #64 from kph/kernel-compat Oct 9, 2012
configure.in Merge pull request #64 from kph/kernel-compat Oct 9, 2012
hvpconfigure bug fixes Dec 21, 2012
install-sh update makefile boilerplate, including using the true aclocal May 12, 2006
installch.in README updates; add install-only-if-changed support, even when instal… May 19, 2006
missing update makefile boilerplate, including using the true aclocal May 12, 2006
mkinstalldirs update makefile boilerplate, including using the true aclocal May 12, 2006
pathvars.h.in new package build system allows one to build a package on Linux 2.6 (… Mar 22, 2006

README

  Snap: When Click Meets GPU

  A heterogeneous parallel packet processing engine with GPU computing. Aiming
    at 10Gbps line rate complex packet processing. Now can reach ~30Gbps SDN
    forwarding, IDS router at 64B packets and 40Gbps starting from 128B on an
    overclocked Core i7 930 machine with GTX 480 or Tesla C2075.
  
  Snap is still under development, master branch doesn't contain the latest
    unstable change, checkout other topic branches such as "mrg" for new
    functionality and elements.
    
  Some notes:
    - All batched elements are in elements/local/
    - I/O related and Netmap Snap elements are in elements/userlevel/
    - PacketBatch is in lib/
    - No stable rule parser available. I used to modify classifier or lookup
      elements directly to get binary format rules/routing table.
    - userlevel/click.cc has been modified for RSS pin.
    - lib/packet.cc modified for per-thread pool.
  
  wbsun@cs.utah.edu