BurnerOnFire is a multi-threaded program that can write the same content to multiple CD/DVD burners simultaneously. It is currently developed and tested only on Debian and only supports content in the form of ISO files. It uses D-Bus/HAL specification to interact with hardware. It spawns subprocesses that wrap around the command line program Wodim. BurnerOnFire has both CLI and GUI (GTK+) interfaces.
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.
Consh is a set of programs that can turn one or more UNIX hosts on a trusted LAN into a singular Bourne shell multi-computer on which shell scripts are run concurrently. The service abstracts hosts into what appears to be shell process with a fixed number of threads or workers, to which work may be assigned and results received concurrently. It includes utilities that assign commands to workers in parallel and a command that initiates distributed barriers between workers for synchronization purposes. Environment variables can be set on a per-host basis to implement locking mechanisms like semaphores or ticket algorithms. Daemons can delegate work to one another as needed.
The Crossplex package of make macros simplifies the creation of embedded systems, and is powerful enough for large organizations to use for developing elaborate product lines. It allows you to organize many different products under a logical structure, making systems of any complexity easy to specify. When you have many different target platforms, each with multiple different software configurations, Crossplex keeps those configurations from stepping on each other, without requiring redundancy in your source tree. Crossplex allows you to use a single dependency tree encompassing both in-house software and third-party packages, and it is particularly suited to build automation. Crossplex makes it easy to shield your build from the host environment, setting all shell variables explicitly, and giving you complete control over the path that is used at any point in the build. This is nice when you want to support building on a variety of development platforms. Crossplex scales to your needs. You can dabble in the unpacking and patching features as you need them, or you can base your entire system from the ground up on the Crossplex framework. Crossplex supports creation and use of glibc and uClibc toolchains.
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.
The ExaScale IO (ESIO) library provides simple, high throughput input and output of structured data sets using parallel HDF5. It is designed to support reading and writing of turbulence simulation restart files, but it may be useful in other contexts. The library is written in C99 and may be used by C89 or C++ applications. A Fortran API built atop the F2003 standard ISO_C_BINDING is also available.
GNU parallel is a shell tool for executing jobs in parallel locally or using remote computers. A job is typically a single command or a small script that has to be run for each of the lines in the input. The typical input is a list of files, a list of hosts, a list of users, a list of URLs, or a list of tables. If you use xargs today you will find GNU parallel very easy to use, as GNU parallel is written to have the same options as xargs. If you write loops in shell, you will find GNU parallel may be able to replace most of the loops and make them run faster by running several jobs in parallel. GNU parallel makes sure output from the commands is the same output as you would get had you run the commands sequentially. This makes it possible to use output from GNU parallel as input for other programs.
HOPSPACK solves derivative-free optimization problems in a C++ software framework. The framework enables parallel operation using MPI (for distributed machine architectures) and multithreading (for single machines with multiple processors or cores). Optimization problems can be very general: functions can be noisy, nonsmooth, and nonconvex, linear and nonlinear constraints are supported, and variables may be continuous or integer-valued.
Moscrack is a WPA cracker for use on clusters. It supports MOSIX, SSH, and RSH connectivity and works by reading a word list from STDIN or a file, breaking it into chunks, and passing those chunks off to separate processes that run in parallel. The parallel processes are then executed on different nodes in your cluster. All results are checked and recorded on your master node. Logging and error handling are taken care of. It is capable of running reliably for long periods of time, without the risk of losing data or having to restart. Moscrack uses aircrack-ng by default. Pyrit for WPA cracking and Dehasher for Unix password hashes are supported via plugins.
Multicrush is a wrapper around pngcrush that distributes the work of brute-force compressing a single image over several pngcrush processes. This gets you a slightly less than a linear speedup, caused by different compression methods having slightly different durations. For example, the author has measured a speedup of 1.92 on a 2-core Intel T5300, and 3.86 on a 4-core Intel Q6600. The only requirements are a copy of pngcrush and at least Python 2.4. If you have version 2.6 or higher, multicrush can automatically detect how many CPUs to use.
A tool for chatting and exchanging anonymous email and files securely.
A no-cost version of the Arkeia Virtual Appliance for use in VMWare environments.