This article applies to:
E-Prime 3.0 Update 2 provides on-going enhancements to E-Prime 3.0, including improved system stability and timing accuracy, as well as bug fixes. We always encourage existing users to upgrade to the latest version of E-Prime in to take advantage of the latest advances. However, users who are in the midst of an on-going study and who anticipate collecting additional data with their existing paradigm are always advised to exercise caution prior to upgrading. Any change to your data collection environment, whether it be hardware- or software-related, is generally not recommended if it can be avoided. For example, timing tests performed using E-Prime 3.0 Update 2 show a larger impact of the operating system on E-Prime's performance, than the effects introduced by either changes to E-Prime or to hardware.
In practice, however, most users who are actively collecting data can upgrade from a prior version of E-Prime 3.0 to E-Prime 3.0 Update 2. The experiments most likely to be affected by the changes in the E-Prime 3.0 Update 2 are those utilizing display durations of less than 100 ms, particularly those with display durations 1 to 2 refreshes, and those relying on critical inter-stimulus intervals within trials, such as when a brief-duration display is masked. The remainder of this article explains the nature of the timing enhancements offered in E-Prime 3.0 Update 2 and how they might impact experiment execution.
Increases in the number of times E-Prime samples the clock
Due to a variety of changes that increased the efficiency in E-Run, we can now sample the clock much more quickly. See TIMING: E-Prime Timing Test Results  for an introduction into clock sampling. All E-Prime releases offer millisecond accuracy (TIMING: What is Millisecond Accuracy? , but code efficiencies have enabled an even faster clock sampling rate. This improved sampling rate further reduces the already-low probability that E-Prime will miss reading the clock each millisecond. The improved sampling rate should have minimal impact on display durations because changes to the display can only occur in multiples of the vertical blank (see TIMING: Stimulus Presentation Challenges ). For example, assume that E-Prime is presenting a Slide object for 50 ms. After 40 ms of display duration, E-Run checks the clock to determine if the display should be updated. If E-Prime misses a clock tick and therefore doesn't determine until 42 ms after the display onset that 50 ms has not yet elapsed, there is no negative impact on the display duration; the system will continue to check the clock each millisecond until 50 ms expires. The chances that an earlier version of E-Prime would check the clock at 42 ms instead of 40 ms is low, and the probability that E-Prime 3 Update 2 would not check the clock until 42 ms is even lower. This improvement is not likely to affect the accuracy of the display duration.
Updates to communication with Operating System display drivers
Similar to changes that were introduced in E-Prime 2.0 to maintain compatibility with Microsoft's updates (see TIMING: E-Prime requires specific DirectX 11 settings for accurate timing ), E-Prime 3.0 Update 2 has changed the default API (Application Programming Interface) used to communicate with the video system. The new default value is DX11K. With this change, E-Run can communicate more effectively with the video card, which may result in fewer instances where E-Prime misses the occurrence of a video refresh and therefore keeps a visual stimulus on the screen for an additional refresh. Note that this change in the default API also positions E-Prime to work more efficiently with the anticipated October 2018 update to Windows 10.
There is a low-probability that some missed refreshes in prior versions of E-Prime would not be missed with E-Prime 3.0 Update 2; therefore, there would be even fewer occurrences where the Onset-to-Onset delays are greater than what was anticipated in multi-display trials. Note that Onset-to-Onset times can be logged with E-Prime's Time Audit Tools (TIMING: Time Audit  for details). Users who wish to upgrade to E-Prime 3.0 Update 2 but who wish to more closely match the execution of a prior version of E-Prime 3.0 can change their display device's API property to the prior default value of "DX11". The display device's properties can be set either via the StartupInfo Editor (recommended) or in user script; see E-STUDIO: StartupInfo Editor Interface  for instructions on using the StartupInfo editor to modify the display device properties.
Enhanced Refresh Detection
E-Run monitors each expected and actual occurrence of a refresh, in part to assess whether it is missing a refresh. E-Prime 3.0 Update 2 offers enhanced monitoring of vertical blank detections. Therefore, it is possible that E-Prime 3.0 Update 2 would detect a bad refresh which was not detected on the same machine running the same paradigm in a prior version of E-Prime. For details on refresh detection, see ERROR: Detection of invalid Refresh Rate .