Introduction

The VFX Reference Platform is a set of tool and library versions to be used as a common target platform for building software for the VFX industry. Its purpose is to minimise incompatibilities between different software packages, ease the support burden for Linux-based pipelines and encourage further adoption of Linux by software vendors. The Reference Platform is updated annually by a group of software vendors in collaboration with the Visual Effects Society Technology Committee.

Current Status

The Calendar Year 2016 (CY2016) Reference Platform is the target for all major software releases in 2016.

20th June 2016 - CY2017 Draft published below for comment from the community. Please send feedback and expect changes in the lead in to SIGGRAPH at the end of July when the final CY2017 Platform will be published here. The theme for CY2017 is to minmize code changes in the year following the transition to Qt 5 but upgrading glibc to better support software vendors building for more recent Linux distro releases such as RHEL 7.

19th May 2016 - CY2016 Qt upped from 5.6.x to 5.6.1 to address critical bug fixes. The agreed source modifications to this Qt release will be posted here very soon [UPDATE - expected before end of June].

27th October 2015 - A late change has been proposed to CY2016 to move from Qt 5.5.x to Qt 5.6.x due to that verion now being targetted as a Long Term Support release. Please see here for further details.

Reference Platform

Each annual reference platform is designated by the calendar year in which major product releases should be targeting that particular reference.

All versions should be considered exact required versions, except for those components where indicates that:

  CY2017 (DRAFT) CY2016 CY2015 CY2014
gcc 4.8.2 with bugfix or 4.8.3 4.8.2 with bugfix or 4.8.3 4.8.2 4.1.2
glibc 2.12 2.12 2.12  
python
(built with ucs4)
2.7.5 - 2.7.latest 2.7.5 - 2.7.latest 2.7.x 2.7.3
Qt 5.6.1 (modified) 5.6.1 (modified) [updated May 2016] 4.8.x 4.8.5
PyQt 5.6.1 5.6.1 [updated May 2016]    
PySide 2.0 2.0 1.2.x 1.2
NumPy 1.9.2 1.9.2    
OpenEXR 2.2.x 2.2.x 2.2.x 2.0.1
Ptex 2.1.28 2.0.42    
OpenSubDiv 3.0.x 3.0.x 2.5.x 2.3.3
OpenVDB 3.x 3.x 3.0.x  
Alembic 1.5.8 1.5.8 1.5.x 1.5.x
FBX latest latest latest 2015
OpenColorIO TBC 1.0.9 1.0.9 1.0.7
ACES 1.0.x 1.0    
Boost 1.61 1.55 1.55 1.53
Intel TBB 4.4 4.3 4.2 4.1
Intel MKL 11.3 11.3    
C++ API/SDK C++11 C++11    
Note - gcc

The vanilla gcc 4.8.2 has a serious bug that is fixed in 4.8.3 and some Linux distribution vendors actually ship a patched version as 4.8.2. The reason the Platform still gives 4.8.2 as an option for CY2016 is that this gcc version is what ships with Redhat Developer Toolset 2.1 that some software vendors are committed to using through 2016.

The following are the known distributions that ship with a fixed 4.8.2:- Redhat DTS 2.1, RHEL/CentOS 6.

Note - Qt modifications

The major change for CY2016 was a move to Qt 5 which required a port of PySide and modifications to vanilla Qt. In November 2015 CY2016 version of Qt was upped from 5.5.x to 5.6.x with agreement frm the community that it was preferable to align with a Long Term Support release. In May 2016 it was updated again to 5.6.1 to incorporate some critical bug fixes.

These modifications are required to avoid the introduction of functional UI regressions impacting DCC tools and consist only of critical changes that have not yet been accepted into the mainline Qt distribution. The need for these modifications is not new, currently some software vendors ship their own differently modified Qt so CY2016 represents a significant step forward with the goal of all software vendors sharing an identically modified Qt. Our aim is to keep these modifications to a minimum and we are working with the Qt Company to eliminate the need for them entirely in future releases.

These Qt modifications are due to be published publicly on Github imminently. The modified Qt is available to anyone who wishes to target the CY2016 Platform, and for all major software vendors to build their CY2016 releases against the same modified Qt.

Note - Intel TBB [added May 2016]

Most vendors now actually targeting TBB 4.4 instead of 4.3 in order to be compatible with Microsoft Visual Studio 2015. It is not anticipated that this will create any version incompatibility issues, just noted here for clarity.

 

Any reference made in the VFX Reference Platform to any company or any other entity, or to their services or products, is not an endorsement or recommendation nor should it imply any such endorsement or recommendation of the quality or fitness of purpose of that company or entity, or its services or products. In no event shall the Visual Effects Society be responsible or liable, directly or indirectly, for any damage or loss caused or alleged to be caused by or in connection with the use of or reliance on any such content, goods, or services identified in the VFX Reference Platform or the Visual Effects Society website.