Open whorfin opened 2 years ago
@whorfin I tested your code on Ubuntu22.04.5 (LTS) with Taichi v1.1.3, Python3.8. It runs well and didn't show the error you posted above, though I only get a blank image. Could you please check if your pip is the most up-to-date, update taichi to v1.1.3 and try it again? (or maybe you should also update your system to the minor version 22.04.5)
Thank you for following up I'm on 22.04.1 (LTS) with Python3.10 I upgraded taichi to v1.1.3 [reported was 1.1.2] and it still fails I tried it on a second machine which has a brand new install of Ubuntu 22.04.1, brand new pip and taichi install of v1.1.3 and a different Intel "GPU" and it fails similarly
I think this must have something to do with Vulkan on Intel GPU's; it runs fine on my machines with Nvidia GPUs
The original report is from a machine with "Intel(R) HD Graphics 620 (KBL GT2)" Second reproduction on a machine with "Intel(R) HD Graphics 4400 (HSW GT2)" both self-report as "supports Vulkan version 1.3.204"
The release I'm using on these lower-powered laptops has not gone to .5 yet
Also in case it is relevant, I see "HUNG GPU" in dmesg It seems perhaps as if ti.sync() isn't quite working?
Oh yes, I used an Nvidia card, not Intel's GT2. I don't have a machine with both ubuntu22.04 and intel card to test it.
Hung GPU means the GPU crashed, probably a drivers issue. Vulkan on older Intel graphics devices is really spotty
It did used to work...
As mentioned with the reference to #3544, "GPU hung" also meant the GPU just didn't respond in time, and the "chunking" approach brought the load down to where things worked. Thus the importance of ti.sync()
So I guess I'm still holding out hope there's something up with ti.sync()
or kernel scheduling which will get addressed, potentially bad interactions with the more recent kernel or drivers.
Thank you for your assistance
I tested your code on another machine with ubuntu22.04.5 + Python3.10 + Intel GT2, still cannot reproduce the problem.
The code runs both with or without ti.sync()
.
The info says "Vulkan Device "Intel(R) Xe Graphics (TGL GT2)" supports Vulkan 0 version 1.3.204".
Thank you !
Running without ti.sync()
might be a clue that the generation (TGL
vs KBL
and HBL
) is modern enough to run OK without chunking. Turning up the fieldWidth
and height might tip it over to being necessary again.
This all encouraging, but maybe points to 22.04.1 vs 22.04.5 driver differences? 20.04.1 worked fine though on this same hardware.
KBL: Kaby Lake, Gen 9.5 graphics TGL: Tiger Lake, Gen 12.1 graphics (Intel Xe) This is a big difference! These two are very different GPUs.
In addition, the Haswell device (Gen 7) now has been split from the ANV driver into its own driver. Even before the split, it is also very different
Describe the bug This all started with the issue reported as #3544. The same code, which with the ti.sync() worked on Vulkan, fails on the same machine when upgraded to Ubuntu 22.04.1 from 20.04.1. So perhaps a Vulkan version or kernel issue. When upgraded from Taichi 1.0.0 to 1.1.2, taichi itself now Aborts. With more complicated code it seems as if the sync() call is always returning instantly
To Reproduce
Log/Screenshots
Additional comments