A survey of techniques for recognizing parallel processable streams in computer programs | Synapse