Charm++ is a portable adaptive runtime system for parallel applications. Application developers create an object-based decomposition of the problem of interest, and the runtime system manages issues of communication, mapping, load balancing, fault tolerance, and more. Sequential code implementing the methods of these parallel objects is written in C++. Calls to libraries in C++, C, and Fortran are common and straightforward. Charm++ is portable across individual workstations, clusters, accelerators (Cell SPEs and GPUs), and supercomputers such as those sold by IBM (Blue Gene, POWER) and Cray (XT3/4/5/6). Applications based on Charm++ are used on at least 5 of the 20 most powerful computers in the world.
Elemental is a C++ framework for distributed-memory dense linear algebra that strives to be fast, portable, and programmable. It can be thought of as a generalization of PLAPACK to element-by-element distributions that also makes use of recent algorithmic advances from the FLAME project. Elemental usually outperforms both PLAPACK and ScaLAPACK, however, it heavily relies on MPI collectives so a good MPI implementation is crucial. Both pure MPI and hybrid OpenMP-MPI configurations are supported.
Cambridge is a template engine for generating HTML/XML markup in Java applications. It is highly extensible, high performance, and designed to be less cluttered. It prefers making use of the scopes of the existing HTML/XML tags in your template instead of wrapping your tags with some non-standard tags or scripting code. Cambridge templates are pure HTML/XML documents that you can edit on any tool or view directly on browsers without any issues. Cambridge can be used in standalone Java applications, with Servlets, and along with popular Web frameworks such as Spring Mvc, Struts, Play Framework, JAX-RS, and many others.
sec-wall is a feature-packed security proxy that supports SSL/TLS, WS-Security, HTTP Auth Basic/Digest, extensible authentication schemes based on custom HTTP headers and XPath expressions, powerful URL matching/rewriting, and an optional header enrichment. It's a security wall with which you can conveniently fence otherwise defenseless backend servers.
VoltDB is a blazingly fast relational database system. It is specifically designed to run on modern scale-out architectures: fast, inexpensive servers connected via high-speed data networks. It is aimed at a new generation of database applications - real-time feeds, sensor-driven data streams, micro-transactions, low-latency trading systems - requiring database throughput that can reach millions of operations per second. What’s more, the applications that use this data must scale on demand, provide flawless fault tolerance, and enable real-time visibility into the data that drives business value. It includes client application drivers for applications written in Java, C++, C#, PHP, and Python. VoltDB community members have also authored client libraries for Erlang, Ruby and Node.js. There are streaming export capabilities for leading analytic database environments, including Apache Hadoop.
AsyncFP is a Scala project with composable actors that interoperate both synchronously and asynchronously. The current focus is on providing a kit for creating high-performance custom NoSQL databases. The small datastore currently under development is a crash-proof in-memory database supporting multiple queries or single update. Updates write to a backing disk file.
Qt-based library with functionality to create highly efficient and fully graphical applications, oriented to computer vision, image processing, and scientific computation. The library features an homogeneous and well documented object-oriented API, with wrapping methods for high performance functionality from libraries such as OpenCV, GSL, CGAL, IPP, BLAS, LAPACK, or Octave library.
WiredTiger is an extensible platform for data management. Its storage engine is optimized for high-throughput, big data applications. It can be configured for write-optimized (row-store) or read-optimized (column-store) access, as well as a hybrid of both. It separates the on-disk and in-memory representations of data, leading to a simpler, more compact file format and a large block I/O tailored for modern storage systems.