Check out my first novel, midnight's simulacra!
Interesting libraries: Difference between revisions
From dankwiki
No edit summary |
(add link to libprefetch) |
||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
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: | 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 [http://packages.debian.org/search?keywords=aptitude aptitude's] "New Packages" functionality): | ||
* [http://ssdeep.sourceforge.net/ ssdeep] ([[Debian]] package: ssdeep) | * [http://ssdeep.sourceforge.net/ ssdeep] ([[Debian]] package: ssdeep) | ||
Line 9: | Line 9: | ||
* [https://sourceforge.net/projects/translate/ Pootle's python-Levenshtein] ([[Debian]] package: python-levenshtein) | * [https://sourceforge.net/projects/translate/ 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." | ** "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." | ||
* [http://www.scl.ameslab.gov/Projects/Rabbit/ libpmc] (No Debian package) -- [[Performance Counters|performance counter]] abstraction library | |||
* [http://perfmon2.sourceforge.net/ libpfm] ([[Debian]] package: libpfm3) (Linux only) | * [http://perfmon2.sourceforge.net/ 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. | ** 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. | ||
* [http://oss.sgi.com/projects/cpusets/ libcpusets] ([[Debian]] package: http://packages.debian.org/search?keywords=libcpuset) | * [http://oss.sgi.com/projects/cpusets/ libcpusets] ([[Debian]] package: [http://packages.debian.org/search?keywords=libcpuset libcpuset]) | ||
** | ** [[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 | |||
* AMD's [http://developer.amd.com/cpu/libraries/acml/pages/default.aspx AMD Core Math Library] (ACML) provides FORTRAN AMD64-optimized math routines | |||
* AMD's [http://developer.amd.com/cpu/Libraries/AMDStringLibrary/Pages/default.aspx AMD String Library] provides AMD64-optimized versions of [[Glibc|libc]] string functions | |||
* [http://www.open-mpi.org/projects/hwloc/ Portable Hardware Locality] library ([[Debian]] package: [http://packages.debian.org/unstable/libhwloc-dev libhwloc]) | |||
** Maintained by the OpenMPI team | |||
* [http://www.ohloh.net/p/dict LIBMAA] ([[Debian]] package: libmaa2) provides memory-optimized data structures and algorithms useful to compiler authors | |||
* [http://libprefetch.cs.ucla.edu/ libprefetch] seeks to eliminate...seeks | |||
==See also== | ==See also== | ||
* [[Working with libraries]] | * [[Working with libraries]] | ||
* The [[Network servers]] page lists event libraries |
Latest revision as of 06:08, 28 January 2010
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."
- libpmc (No Debian package) -- performance counter abstraction library
- 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: libcpuset)
- libhugetlbfs (No Debian package) (Linux only) -- transparent hugetlbfs-backed allocation
- AMD's AMD Core Math Library (ACML) provides FORTRAN AMD64-optimized math routines
- AMD's AMD String Library provides AMD64-optimized versions of libc string functions
- Portable Hardware Locality library (Debian package: libhwloc)
- Maintained by the OpenMPI team
- LIBMAA (Debian package: libmaa2) provides memory-optimized data structures and algorithms useful to compiler authors
- libprefetch seeks to eliminate...seeks
See also
- Working with libraries
- The Network servers page lists event libraries