Choosing Compute Architectures