Data parallel performance optimizations using array aliasingImproving fine-grained irregular shared-memory benchmarks by data reorderingOpenMP for networks of SMPs