Protein-protein docking on hardware accelerators: comparison of GPU and MIC architectures