Nvidia прекращает поддержку CUDA на macOS
Производитель графических процессоров NVIDIA отказывается от поддержки CUDA для macOS. Платформа для параллельных вычислений, использующаяся для аппаратного ускорения рендеринга во многих продуктах, "в последний раз" представлена в выпуске CUDA Toolkit 10.2, как сказано в логе изменений.
Новость нельзя назвать большим сюрпризом: Apple не комплектует свои продукты видеокартами NVIDIA последние несколько лет. Для потребительской линейки компания использует интегрированные карты от Intel, а для профессиональных станций, например, Mac Pro, iMac Pro или 16-дюймового MacBook Pro, — карты от AMD.
Однако даже подключить NVIDIA как внешнюю видеокарту (eGPU) стало проблемой, начиная с выхода macOS Mojave (10.14) в прошлом году: для последних карт просто нет драйверов. NVIDIA опубликовали официальное обращение пользователям, где сказали, что ничего с этим не могут сделать:
"Apple полностью контролирует драйверы для Mac OS. К сожалению, на данный момент NVIDIA не может выпустить драйвер без официального разрешения Apple."
Разработчики Apple дали анонимный комментарий изданию Appleinsider, почему купертинская компания приняла такое решение:
"Речь не идет о том, что в Metal 2 нельзя добавить поддержку NVIDIA — у них отличные инженеры, и с производительностью проблем не будет. Просто кто-то наверху этого не хочет."
Где получить аппаратное ускорение без CUDA?
Большинство коммерческих движков, включая V-Ray GPU, OctaneRender и Redshift, сейчас работают на CUDA. Фреймворк OptiX от NVIDIA, поддержку которого разработчики сейчас активно добавляют в свои продукты (например, последние версии Blender или V-Ray Next), тоже требует CUDA Toolkit.
Другие рендеры, например, Blender Cycles, поддерживают карты AMD с помощью OpenCL, но Apple прекратили поддержку и этого API, заменив OpenCL на собственный Metal 2.
Получается, что на момент выхода этой новости практически единственный вариант для пользователей Mac, которые хотят продолжать пользоваться аппаратным ускорением, — это AMD с Radeon ProRender. В будущем поддержка Metal API может также появится и в Redshift и OctaneRender.