Every Song I Own Sorted Numerically

Above: the first section of the resulting waveform, starting at the loudest parts of my music library
2011
Sound installation, custom software
22 days, 22 hours, 25 minutes, 28 seconds
[ audio samples coming shortly ]
PROJECT DESCRIPTION
The most atomistic unit of digital audio is a sample - a discreet value that in most cases range from -32,000 - 32,000 that are stored at 44,100 values per second. Custom software was written to sort my entire music library, nearly 23 days long, by sample values using the supercomputing facilities at the Holland Computing Center.
The result is a single A440 square wave that follows the volume of my library from the loudest to the quietest. Since this is a one-to-one process, the resulting waveform is a sample-accurate graph and a highly dense, austere sonic drone.
An excerpt of the complete recording:
View the entire waveform here (warning: will load 236 image files - should be ok for most connections)
TECHNICAL DETAILS
At approximately 75,000,000 values, sorting a list of this size required quite a bit of advance planning. The work was done on Merritt, a supercomputer designed for RAM-intensive jobs (64 nodes, 512GB RAM)
- A .wav file is essentially just a set header followed by sample data - the header was stripped from every file and the results were concatenated to each other into a giant binary file
- Since sorting presorted files is easier, this binary file was then split into more manageable sections and each section was sorted
- The presorted sections were sorted into each other over several steps
- When the entire set was sorted and recombined, it was split again into one-hour sections
- New headers were written as simple binary data
Programming was mostly done in C using the built-in qsort function and memory-mapping to handle the large files.
Created in collaboration with the Holland Computing Center - thanks to Adam Caprez and Ashu Guru for their assistance with this project.