taichi icon indicating copy to clipboard operation
taichi copied to clipboard

Performance regression on Metal starting at version 0.9.0 (still present)

Open bsavery opened this issue 1 year ago • 1 comments

Describe the bug The performance of my "Ray Tracing in one Weekend" implementation went from <30sec to a very long time starting with version 0.9.0 of Taichi

To Reproduce Unfortunately I do not have a smaller example to show this but a complete pathtracer https://github.com/bsavery/ray-tracing-one-weekend-taichi . Using this the compile + render time is around 30 sec for me on Metal < 0.9.0. Starting with 0.9.0 and continuing until now, the performance is horrible, ~ 10x worse.

I did bisect the binary packages and seems this appears in version 0.9.0 and not before. Did not bisect checkins.

https://github.com/bsavery/ray-tracing-one-weekend-taichi and run

$ python main.py

Workaround: I can use Vulkan device on macOS for better performance. Is this the preferred method, i.e. is Metal deprecated in favor of Vulkan/MoltenVK?

Also: It might be something I am doing in the code that causes this? Please let me know if so.

bsavery avatar Aug 24 '22 20:08 bsavery

Hey @bsavery thanks for reporting the perf regression! We should take a look and bisect the offending commit. cc: @turbo0628

ailzhang avatar Aug 25 '22 03:08 ailzhang