Describir: Methodologies for validating parallel programs