Văn bản này: Optimizing shared memory programs for distributed memory architectures