我正在研究长度为L的扩散方程,并想生成一个3D图,说明长度上的解如何随时间变化,因此我将每个时间步长的值数组存储为一个矩阵,称为matrix2-x和times是沿长度和所有时间步长的值的数组。
#torch.ones(4,4) - the size you used
CPU time = 0.00926661491394043
GPU time = 0.0431208610534668
#torch.ones(40,40) - CPU gets slower, but still faster than GPU
CPU time = 0.014729976654052734
GPU time = 0.04474186897277832
#torch.ones(400,400) - CPU now much slower than GPU
CPU time = 0.9702610969543457
GPU time = 0.04415607452392578
#torch.ones(4000,4000) - GPU much faster then CPU
CPU time = 38.088677167892456
GPU time = 0.044649362564086914
现在,如果我运行此代码,我将得到期望的3D图。如果我然后尝试再次运行代码,尽管是为了获得完全相同的值,或者是在运行漫射并更改了较长的时间和矩阵2之后,我没有得到输出,通常是MemoryError,并且计算机上的所有内容慢下来。我应该做些什么让我产生不止一种这样的情节吗?Image of error on running the code for a second time