Difference between revisions of "Interesting libraries"

From dankwiki
Line 14: Line 14:
 
** [[cpuset]] management from userspace, courtesy of SGI (useful for [[NUMA]])
 
** [[cpuset]] management from userspace, courtesy of SGI (useful for [[NUMA]])
 
* [http://libhugetlbfs.ozlabs.org/ libhugetlbfs] (No Debian package) (Linux only) -- transparent [[Pages|hugetlbfs]]-backed allocation
 
* [http://libhugetlbfs.ozlabs.org/ libhugetlbfs] (No Debian package) (Linux only) -- transparent [[Pages|hugetlbfs]]-backed allocation
 +
* [http://www.scl.ameslab.gov/Projects/Rabbit/ libpmc] (No Debian package) -- [[performance counters|performance counter]] abstraction library
  
 
==See also==
 
==See also==
 
* [[Working with libraries]]
 
* [[Working with libraries]]
 
* The [[Network servers]] page lists event libraries
 
* The [[Network servers]] page lists event libraries

Revision as of 22:57, 11 September 2009

Libraries I ought check out, for possible use in my code (hopefully replacing bitrotting code I'm no longer interested in) or just to learn from (I've discovered most of these via aptitude's "New Packages" functionality):

  • ssdeep (Debian package: ssdeep)
    • Context-triggered hashing for fuzzy content matching. Could be used for ctxdiff.
  • liboil (Debian package: liboil-dev)
    • Simple functions optimized for various CPU's. Could replace libdank's magic.c.
  • cxxtools (Debian package: libcxxtools-dev)
    • Utility functionality for C++ beyond the standard libraries.
  • Pootle's python-Levenshtein (Debian package: python-levenshtein)
    • "The Levenshtein module computes Levenshtein distances, similarity ratios, generalized medians and set medians of Unicode or non-Unicode strings...The Levenshtein distance is the minimum number of single-character insertions, deletions, and substitutions to transform one string into another. It is useful for spell checking, or fuzzy matching of gettext messages."
  • libpfm (Debian package: libpfm3) (Linux only)
    • An analogue to libpmc for Linux? "The goal of the project is to design and implement, on all major architectures, a standard Linux kernel interface, to access the hardware performance counters of modern processors. The project also developed a user library,libpfm, and a tool, pfmon." Appears to require a kernel patch, even against 2.6.25.
  • libcpusets (Debian package: http://packages.debian.org/search?keywords=libcpuset)
    • cpuset management from userspace, courtesy of SGI (useful for NUMA)
  • libhugetlbfs (No Debian package) (Linux only) -- transparent hugetlbfs-backed allocation
  • libpmc (No Debian package) -- performance counter abstraction library

See also