Psychtoolbox-3 - System Requirements
Operating system:
- Linux: There is full support for the GNU/Linux operating system on Intel compatible PCs in combination with both 32 bit and 64 bit versions of Mathworks Matlab 7.x and the free and open-source GNU/Octave 3.2.x. Psychtoolbox should run well on any recent Linux distribution. However, due to our limited resources, we currently only actively test and optimize for recent versions of Ubuntu Linux and its variants and derivatives. Ubuntu 10.04 and later are known to work, 10.10 and 11.10 are actively tested. For that reason we can only provide support for those distributions should you run into problems or have questions. We recommend staying up to date with the latest Ubuntu versions for optimal performance. However, we do have user reports of successfull use on recent Debian, Fedora Core, and Slackware distributions. A top priority is to further improve Linux support in the future to make it the platform of choice for psychophysics with Psychtoolbox. The NeuroDebian project is an effort to provide especially easy access to neuroscience related software on the Debian and Ubuntu Linux distributions. A Psychtoolbox for use with GNU/Octave is included in the NeuroDebian project. Therefore, NeuroDebian provides the most simple way of installing and running Psychtoolbox on Linux. We recommend Linux as the operating system of choice for demanding experimental setups which require the highest timing precision, precision for color or luminance displays, general performance and flexibility.
- Apple Macintosh: Psychtoolbox is also developed and tested under Apple Mac OSX. Exhaustive compatibility tests have been run on 10.4.11, 10.5.8 and 10.6.2, but no testing by the developers has been performed on 10.7 yet. Frequent testing currently only happens on 10.4.11 and 10.5.8, but most OSX versions should work reasonably well for many tasks, according to user reports. The current toolbox releases are not supported under OSX 10.3 or earlier anymore. The last version that worked on 10.3 can be downloaded by specifying the special 'flavor' parameter 'Psychtoolbox-3.0.8-PreTiger' in our downloader script. As the PowerPC platform is no longer supported by Apple and many other software and hardware vendors, e.g., Mathworks, we will reduce our level of support as well. Basic functionality of Psychtoolbox will continue to work as long as we have access to PowerPC machines for testing and maintenance. Many new features which would require extensive extra work on our side for the PowerPC platform are not supported on PowerPC in current and future Psychtoolbox releases. In general, operating system versions 10.4 "Tiger" and 10.6 "Snow Leopard" seem to be relatively unproblematic for use, i.e., most of the operating system bugs we found have workarounds implemented in Psychtoolbox. 10.5 "Leopard" was a rather buggy operating system, especially for multi-display stimulus presentation and stereoscopic stimulus presentation. 10.7 "Lion" mostly has restrictions in the precision for visual stimulus timestamping due to various bugs in the operating system. Some of our workarounds are no longer fully effective or easy to apply on 10.7, so you may want to stick to 10.6 or earlier if you have the choice.
- Windows: Psychtoolbox-3 runs under Microsoft Windows 2000 and Windows XP as well as Windows Vista and Windows-7. We do aim to keep the toolbox working under these and future versions of Windows, but full support for all features is a lower priority for us than OSX or Linux. As of 1. December 2009, Windows Vista and Windows-7 have been tested for basic compatibility with PTB-3. Precision of sound presentation hasn't been tested at all due to lack of suitable testing equipment. Test of visual stimulus presentation on 3 test setups showed somewhat mixed results, especially dual display presentation and presentation timing were rather disappointing. We are aware that many people do run the toolbox under Vista or Windows-7 and we didn't receive many reports of trouble so far, but we can't recommend it at all for dual-display stereo stimulus presentation or for tasks with a need for high visual timing precision. For some caveats wrt. Vista and later see our FAQ entry about Vista and Windows-7. All in all you are off worse with Vista or Windows-7 instead of XP with Psychtoolbox, so there is no reason to switch to it. Vista et al. seem to provide less performance than XP while at the same time posing higher hardware requirements.
Runtime environment:
- Recommended: The latest 32 bit version of Matlab or the latest 32 bit version of the 3.2.x series of GNU/Octave. On Linux we also support 64 bit versions of Matlab or Octave. PTB-3 is developed and tested for compatibility with the latest 32-bit version of Matlab, as well as with our main development platform V7.4 (R2007a). We currently only fix bugs that affect running with version 7.4 or later. Even so, most functions still work in Matlab 6.5 and later under Mac OSX and Windows. Matlab versions prior to V6.5 are no longer supported by current PTB versions. Our installer will redirect you to an old and outdated version of PTB (from December 2010) whose basic functions may still work with older versions if you use a pre-V6.5 Matlab, but in case of any trouble or bugs, you will be on your own with such an ancient Matlab version.
- Mac OS: Matlab version R2010b and later will not work with the current 32-bit Psychtoolbox! R2010b and later are pure 64-bit applications which can't run any 32-bit toolboxes anymore. There is no known workaround, except sticking to older versions of Matlab. Parallel installation of multiple versions of Matlab along each other is easy, so this should be mostly an inconvenience for now, not a major showstopper. Another option is using Matlab for code editing and 32 Bit Octave for running the code.
- Mac OS: If you installed Matlab R2010a with support for both 32-bit (maci) and 64-bit (maci64) architectures, you can launch Matlab in 32-bit mode from the command line using: '% matlab -maci'. You can also select the Matlab application icon, use command-I to open the Get Info dialog box, and select "Open in 32-bit mode".
- Windows: If you use Matlab version 7.4 (Release 2007a) or later, you may need to install some Microsoft Visual C runtime libraries to make it work, specifically the vcredist_x86.exe but our installer should give you instructions on how to do that if neccessary. Some old and rather obscure / obsolete MEX files that used to be bundled for Matlab releases prior to 7.4 are no longer supported - they are not really needed anymore. Matlab versions 6.5 to 7.3 should also mostly work, although use of relatively old Matlabs will probably cause some of our M files to abort if they make use of features only present in Matlab 7.x. This is often fixable by a bit of hacking though. We will remove support for Matlab Version 7.3 and earlier in the near future, so we recommend you update to a more recent version as soon as possible.
- Linux: Currently Matlab 7.4 and later, as well as GNU/Octave 3.2.x are supported, but other Matlab versions of the 7.x series may work as well.
- 64-bit support: Running under Matlab or Octave in 64 bit mode is not yet supported on MS-Windows or OSX, but fully supported on Linux. If neccessary, a 64-bit Matlab installation with installed 32-bit compatibility support can be run in a 32-bit mode by starting it with a command line switch: matlab.exe -win32 will start 32 bit Matlab on Windows, matlab -glnx86 will start 32 bit Matlab on Linux. Installation of a 32 bit Matlab in parallel to a 64 bit Matlab is optional, so you may need to run your Matlab installation disk again if the 32 bit mode is not immediately functional on your 64 bit system. We hope to provide 64-bit Matlab / Octave support for Psychtoolbox by the end of 2012. This is a time-consuming effort and some operating system platforms may have (at least partially) working support earlier, but we can't make any guarantees about the progress of 64 bit support. Unfortunately the Apple OS is the most painful platform to port to 64-bit, so it will likely take the longest of all supported systems, potentially beyond 2012. This is due to some questionable, mostly "politically" motivated technical design decisions of Apple's management, thanks for that!
Additional software:
- Apple Quicktime: Psychtoolbox needs Quicktime 7 on OSX for movie playback, movie creation and video capture and recording. Quicktime is installed on any OSX system by default. We recommend staying up to date with the latest releases for best performance and for security reasons. On Windows you can either install Apple Quicktime 7 or the free software / open-source GStreamer Multimedia framework. On Linux you need GStreamer for these operations, but GStreamer is usually a default component of any modern Linux distribution. Type help GStreamer for GStreamer installation instructions for the different systems. We intend to switch completely to GStreamer in the future and abandon Quicktime, so Windows users are encouraged to give GStreamer a try while it is still optional. There have been so far two reports that the most recent Quicktime versions don't work well - or at all - with 64-bit versions of the Windows operating system. Quicktime version 7.1.6 is known to work without trouble on 64-bit Windows though. At least on 32-bit versions of Windows-7, Quicktime version 7.6.5 is known to work correctly.
- For video capture support on Windows you'll normally use the GStreamer video capture engine, after installing GStreamer (see above). This should provide reasonably well working video capture with most video devices on Windows. On Linux, GStreamer is used as well for excellent video capture support. On OSX, Apple's Quicktime is currently used, but we intend to replace it with GStreamer in the future.
- For video capture support on Windows with the alternative, Mac OS compatible Quicktime Sequencegrabber engine, you'd need to install a Quicktime video digitizer component. The free WinVDIG is known to work for USB webcams and standard consumer DV cameras with Firewire connectors and Psychtoolbox has been tested with some version of that plugin. Another (untested) option is the VDIG from AbstractPlane, which costs a small bit of money, but presumably comes with commercial support. Please note that Quicktime video capture capabilities on MS-Windows are very basic and limited, probably only useable for projects with low demands, so there isn't any real reason to prefer this over use of GStreamer. This option will likely get removed when we cancel Quicktime support for Windows.
Basic hardware requirements:
- Intel PCs: Any Intel-compatible PC that is capable of running the 32/64-bit versions of Microsoft Windows 2000/XP/Vista/Windows-7 or 32/64 bit GNU/Linux.
- Intel-Macs: Any Intel-based Macintosh computer. Matlab V7.4 (Release 2007a) and later fully support Intel Macs. The current PTB-3 works flawlessly with it, so we recommend this for productive use.
- Old Matlab 7.x versions for Power PC based Macintosh computers are known to run successfully in the Rosetta software emulation mode when started from a terminal window with the matlab -nojvm switch. They will run without any graphical user interface, however, and any Java based functions (e.g., GetChar) are disabled.
- Power-Macs: Any PowerPC based Macintosh computer capable of running Mac OSX 10.4 or later. However, Power-Macs are a dying platform which will go extinct eventually, so we won't add fancy and complex new features for Power-Macs anymore if doing so would require us to do extra work. Basic functionality will continue to work as long as we have access to Power-Mac computers for basic development and testing.
Graphics hardware requirements:
Basic Psychtoolbox functions should work on any OpenGL 1.2 capable graphics card with at least 16 MB of video ram (VRAM). Fast stimulus drawing and use of the more advanced features requires recent graphics hardware. In general you should not try to save money on the gfx-adapter, as performance of your stimulus script and the types of stimuli you can create with ease will depend much more on the horsepower and features of your gfx-adapter than on the horsepower of your cpu.
If you want to use all Psychtoolbox features at full performance and precision, make sure to get a recent Direct3D-10/11 capable (also known as OpenGL-3/4 capable, or ShaderModel 4/5 compliant) graphics card from NVidia or AMD/ATI. Almost all cards of the NVidia GeForce 8 series and later (e.g., 8600, 8800, 9600, 9800, GTX 280 etc.), as well as all cards of the ATI Radeon HD series and later (HD 2400, 2600, 3000 series, 4000 series etc.) and their corresponding counterparts from the NVidia Quadro series and ATI FireGL / FirePro line of cards are technically state of the art and Psychtoolbox can take full advantage of their features.
Follow this link to our graphics hardware requirements page for more detailed information and recommendations for graphics hardware.
Users of Intel-based Macs should be aware that some Macs (e.g., Intel MacBook) use a built-in Intel GMA graphics adaptor. The gfx-cards of the GMA-950 series are known to have very low graphics performance and a very restricted feature set. They are cheap and sub-standard by any definition. See e.g., this Wikipedia article for further information. While the Intel GMA X3100 series and later are also Direct3D-10 compliant in theory, in practice they suffer from a few limitations, and the quality and performance of their driver support is unclear and untested by us. They may or may not work well for your purpose, but chosing a NVidia or ATI part has historically proven to be a safer bet.
The same holds true for most products of Matrox and S3. As Matrox and S3 seem to have mostly retreated from the 3D graphics market, most of their products are not a good choice for OpenGL based applications like Psychtoolbox. Even the products that nominally claim to support hardware accelerated OpenGL, have a pretty limited feature set and performance, and the quality of their 3D drivers leaves something to be desired. If you're searching for a good graphics card for pure 2D imaging (non OpenGL , non PTB etc.), multi-display office work or medical imaging, they are a good choice though.
For dual display work (e.g, binocular stereo stimulation), we strongly recommend using dual-head or multi-head gfx-adapters (i.e. one card with two or more output connectors) instead of multiple separate adapters. We expect dual/multi-head single-card performance to be higher and the likelihood of gfx-driver bugs to be lower. While separate cards may work, we do not guarantee this and do not provide any support for troubleshooting. Note, too, that stereo work may benefit from the display synchrony provided by some of the dual-head cards. Synchrony is usually hard to achieve with separate cards. We also recommend mostly avoiding Mac OSX for dual display realtime stimulus presentation, as Apple seems to be mostly incapable of and uninterested in implementing decent support for high performance, tear-free dual display support. For rather static stimuli or use as a control monitor, OSX may be good enough.