Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Fix device mismatch when there are multiple GPUs.
cuda() function will create the tensor on a default device that may differ from the device of tensor 'inverse_transform'.
  • Loading branch information
imxtx authored Oct 30, 2024
commit 886029845cb1a797ceeb2942c70a8ce3691063da
2 changes: 1 addition & 1 deletion PyTorch/SpeechSynthesis/FastPitch/common/stft.py
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ def inverse(self, magnitude, phase):
np.where(window_sum > tiny(window_sum))[0])
window_sum = torch.autograd.Variable(
torch.from_numpy(window_sum), requires_grad=False)
window_sum = window_sum.cuda() if magnitude.is_cuda else window_sum
window_sum = window_sum.cuda(inverse_transform.get_device()) if magnitude.is_cuda else window_sum
inverse_transform[:, :, approx_nonzero_indices] /= window_sum[approx_nonzero_indices]

# scale by hop ratio
Expand Down