Describir: Algorithms and architectures for parallel processing