Повторное тестирование OpenGL драйверов AMD и NVIDIA

Лучше, но проблемы еще есть.

Автор недавнего тестирования соответствия драйверов AMD и NVIDIA спецификациям OpenGL после недельной плотной работы с обоими вендорами провёл второй забег. По итогам 31 теста, использующих OpenGl версий 3.3, 4.0 и 4.1, результат вышел следующим:

 NVIDIA 260.93AMD 10.10c
Тестов не запустилось, нет поддержки функций00
Тестов не выполнилось, критические ошибки реализации функций54
Тестов выполнилось, ошибки при выполнении62

На этот раз очевидным победителем вышли драйверы AMD. Профессионалы в OpenGL могут оценить в подробностях объём работы по адаптации тестов, который пришлось провести для получения подобных результатов. Помимо проблем и ошибок в самой спецификации OpenGL, дополнительные трудности создаёт различный подход AMD и NVIDIA к реализации OpenGL: AMD чётко следует букве спецификации, даже если результат неработоспособен, NVIDIA реализует работу самого функционала того либо иного расширения, игнорируя прописанные в его спецификации ограничения и правила.

OpenGL logo

Чем раньше Khronos Group (куратор OpenGL, OpenCL и ряда других открытых стандартов) выкрутит руки вендорам, прекратив порочную практику проталкивания сырых и даже защищённых патентами функций (что прямо противоречит декларируемой открытости) в стандарт, и введёт сертификацию соответствия драйверов, тем лучше будет для самого OpenGL и его родственников как стандартов, и их реализациям, если, конечно, их сторонники хотят коммерческого успеха. Напомним, что один из крупнейших разработчиков профессиональных приложений графики и САПР Autodesk перешёл на использование Direct3D, а Adobe выбрала CUDA для Mercury Engine в том числе после горького опыта поддержки OpenGL в Photoshop, когда выяснилось, что драйверы некоторых вендоров, в особенности Intel, анонсируют поддержку функций, которые фактически не работают.