V10.2 Build 1012 - 17th/November/2022
- Fixed Directio driver failing to load on some systems (caused by 22H2 updates) which would prevent temperatures from being collected and could display Windows "Program Compatibility" driver cannot load errors
- Updated system information library to support retrieving CPU info for Intel Raptor Lake, Tremont and Sapphire Rapids chipsets
- Fixed retrieving cache info for Intel hybrid architectures
V10.2 Build 1011 - 28th/October/2022
- Increased number of CPU processes supported to 1024
- Advanced Memory Test, forced results message box for latency test to be modal to stop it being lost in the background
- Updated CPU cache information for Intel hybrid architectures so numbers of caches displayed should be more accurate
- Changed CPU cache display to allow decimal points
- Preliminary support for retrieving Intel Raptor Lake CPU info
- Added checks for invalid SMBIOS structure types to prevent crashes on some systems
- Increased max number of SMBus controllers to
- Fixed a crash when reading temperatures on a system with 8 CPUs
V10.2 Build 1010 - 21st/September/2022
- Removed dependency on VCRUNTIME140.DLL
V10.2 Build 1009 - 12th/September/2022
- Updated Directio64.sys with another newly Microsoft signed version to fix issues with Windows 11 22H2
V10.2 Build 1008 - 19th/July/2022
- Fixed key.dat not being created correctly when installing to USB
- Added a warning message at start-up if digital signature is invalid for PerformanceTest exectuable
V10.2 Build 1007 - 7th/July/2022
- Fixed opening of .ptscript files to handle ANSI and unicode (with BOM)
- Baseline upload, changed to HTTP post for uploading files instead of FTP (to prevent future issues with moving servers again)
- Advanced memory test, fixed the progress bar overflowing/resetting to the start while testing
- Fixed opening of key.dat files so that both ANSI and UTF8 key.dat files will work (previously only UTF8 file formats would work correctly)
V10.2 Build 1006 - 17th/May/2022
- Fixed baseline uploading that was broken due to passmark.com moving to a new webserver
- Added check for existence of selected disk before starting test and added error message when not found (eg test was run on a removable drive that is now missing)
- Rebuilt ARM CryptoPP with newest version of VS2019 (16.11.13) to avoid ARM SHA hashing errors from earlier versions
V10.2 Build 1005 - 1st/April/2022
- Fixed an issue on 12th gen Intel CPUs that could result in the calling thread being locked to a low performing E-Core (thread affinity was not being set back to the original correctly) which would result in lower than expected 2D test scores
- Fixed bug where PerformanceTest failed to generate a API key when running from USB/using a key.dat
- Fix a crash that could occur when using "Copy Results as Text"
- Advanced memory test, fixed a bug preventing the graph from being displayed correctly after running a threaded test
V10.2 Build 1004 - 9th/February/2022
- ARM, Reverted CryptoPP library back to previous version to avoid SHA issues that was causing many problems with internal hashes for the main user interface, the CPU test (encryption) will continue to use the latest CryptoPP version as it is a separate executable.
This is an ARM only change.
- OpenCL test, attempt to pick discrete (non-integrated) card when more than one card of the same manufacturer is available (seen on AMD systems with both integrated and discrete AMD cards)
V10.2 Build 1003 - 4th/February/2022
- ARM64, more SHA hashing related fixes that was stopping baselines from being submitted
- Fixed an unusual case where disk partition information would not be displayed if the disk's MBR contained empty partition information for the first entry, this could also stop the disk being displayed for testing
V10.2 Build 1002 - 3rd/February/2022
- ARM64, added workaround for broken SHA hashing in CryptoPP (using windows Bcrypt library instead) that was causing licencing errors and failure to show charts
- Made a change so ARM CPU info is loaded at start-up (to help with graphing display)
- Fixed bug in system information collection of Ice Lake-SP (3rd gen Xeon Scalable) CPU info
- Fixed an issue in system information collection when collecting disk partition info where function could return too early
V10.2 Build 1001 - 20th/December/2021
- Fixed incorrect P/E core reporting in user interface (values were switched)
V10.2 Build 1000 - 15th/December/2021
- Updated system information and user interface to distinguish between P (performance) and E (efficiency) cores, for Intel 12th Gen CPUs.
- Correct detection of available P and E cores also allowed the correct number of threads be run in the multi-threaded CPU tests.
- Updated system information with support to handle multiple CPU caches at each level
- Added '/au' flag that auto-runs PT and then uploads the result to the PassMark website
- Updated Crypto++ library version in use to 8.6, this should result in much faster encryption results on ARM systems due increased use of available CPU instructions and slightly faster results on x86 systems. Previous library didn't use hardware acceleration on ARM, (except for the Apple M1)
- Encryption Test, AES, made some changes to work with latest version of Crypto++. This was required because V8.6 of Crypto++ was much slower than previous releases unless memory buffer usage was also modified.
- Baseline Upload. Simplified the upload window and added use of a API key to upload baseline to associate it with a user. So users can (optionally) upload baselines to their account and track performance changes over time. Upon entering license key and registering, a API key is created/retrieved from server. An free API key can also be requested from Passmark web site once an account is created. Anonymous uploads are still supported.
- Removed 5% difference for uploading baselines check. This allows similar baseline files to be uploaded. Duplicates will still be ignored when creating the global averages however.
- Baseline management, fixed loading of some baselines that were missing system information sections
- Started displaying power source "AC" or "Battery" on system information - old baselines with no information will be N/A. Battery powered systems tend to have reduced performance due to their power plan setup.
- Fixed a crash that could occur in the ARM version when opening the baseline manager dialog
- Made a change on system information tab to display RAM SPD info if only partially collected for system (eg a mix of RAM modules that don't all return SPD details)
- Fixed bug where when running from USB drive, the config file loaded on program start was reading the settings on the desktop install and not the USB drive
- GPU Compute, fixed a crash when starting 3D NBodyGravity test if no DX11 adapters were found
- Added Windows 11 and Server 2019 to baseline manager search
- Added 'View Last Uploaded Baseline...' menu option
- CPU Integer test, made some minor changes to the order of operations in the test, this should stop them being optimised away on non-windows builds which used the CLang compiler instead of Visual Studio (and have no effect on windows builds).
V10.1 Build 1007 - 19th/October/2021
- PDF Test, removed min/max/close buttons from window
- 2D Mark, stopped mark being calculated if some of the older tests (eg simple vectors) hadn't been run
- Disk Test, attempt to stop a crash caused by failing/mis-performing hard disks taking too long to close a file handle after a test
- Updated system information library to correct some incorrect CPU cache values being returned
V10.1 Build 1006 - 7th/October/2021
- Fixed PerformanceTest not launching as Administrator by default which would result in not collecting temperature and system information correctly
V10.1 Build 1005 - 29th/September/2021
- Added naming support for Ryzen 5/7/9 5000 series integrated video cards
- Started remembering and restoring current PT window position when running 3D tests due to strange behaviour where the window could be moved around different monitors on some setups
- System information updates
V10.1 Build 1004 - 7th/September/2021
- Fixed a potential crash when checking for an updated version
- Updated system information library (support for Intel Elkhart Lake)
V10.1 Build 1003 - 20th/August/2021
- Fixed a timing issue that could cause the CPU test to stop immediately and return no results
- Fixed a timing issue that could cause the Disk test to stop immediately and return no results or crash
- Fixed a crash that could occur when using the German translation and mousing over the your hardware vs the same distribution graph
- Added DDR5 support when retrieving system information
V10.1 Build 1002 - 25th/May/2021
- CPU Tests - Made wait time slightly longer due to some timeouts waiting for tests to finish on on systems with large thread counts
- CPU, Compression test - Decreased the number of loops performed before checking if the test time was reached to prevent a timeout in system with large thread counts
- Fixed an issue reading AMD 4600/4800 CPU temps
- Fixed an issue preventing AMD GPU temperatures from being read if ADL_Graphics_Platform_Get failed to be loaded from the ADL library
V10.1 Build 1001 - 5th/May/2021
- Disk Tests and Advanced Disk Test, changed calculation of MB values to use international system of units (SI) value for MB (1,000,000 bytes) instead of MiB (1,048,576).
This brings it closer into line with how disk manufacturers are marketing disk drive speeds.
Old baseline values for disk tests and disk mark will be converted to new display value.
- Drive Performance and Advanced Disk Test, fixed a bug that was causing RAM disks using logical drive emulation to be excluded from the list of available drives to test
V10.1 Build 1000 - 23rd/February/2021
- Initial release for Windows ARM support. All CPU, 2D, Memory and Disk tests have been natively compiled to run on Windows ARM.
For 3D tests, due to limited support for some older DX9 and DX10 helper libraries these tests have not been converted and will not be run in the Windows ARM version of PerformanceTest.
The DX11 test will be run in x86 emulated mode, again due to limited support for some of the DirectX libraries used for them. The DX12 test has been compiled to run natively.
For the 3D GPU compute tests, the Nbody gravity, Mandelbrot and Qjulia4D have been compiled to run natively on Windows ARM. The OpenCL test cannot be run on Windows ARM.
- Score display, due to incredibly slow values for some 2D/3D results on Microsoft Surface ARM systems, now when a score is less than 10 the score will be displayed to 1 decimal place.
- Started filtering "with" out of some CPU names when dynamically creating a Radeon graphics card name (eg Radeon Graphics Ryzen 9 4900HS)
- Baseline custom colours, changed the default yellow to a darker shade for better readability of white text when it is drawn over the graph
- Fixed a crash that could occur in the disk test
V10.0 Build 1011 - 29th/January/2021
- Stopped user interface resizing when 3D tests were running, sometimes during the start of DX10 test a resize message would get sent to PT which would fail and display a "Could not reset the Direct3D device" error
- Fixed an issue where is a drive tested was bitlocker encrypted then PerformanceTest might not match the partitions to the physical disk and display "Unknown drive"
- Fixed a possible crash when viewing graphs
- Temperature collection, added support for Intel Tiger Lake chipsets
- Temperature collection, initial support for AMD Ryzen 5000 Series (Family 19h) CPU info and temperatures
- Temperature collection, support for CPU groups when retrieving per-core temperatures for Intel chipsets
- System information, Decreased timeout from 5 seconds to 1 when collection SMART information when waiting for scsi commands to timeout (decrease amount of time spent detecting temp sources and reading smart info when USB drives are attached)
V10.0 Build 1010 - 12th/October/2020
- Fixed an issue generating as 2D mark in windows 7 (due to not being able to run PDF and SVG tests)
- Fixed a possible crash when loading advanced test result graphs
- Fixed a crash that could occur when resizing the user interface when no baselines were selected
- Disabled old DirectWrite code path for fonts and text test as it could crash when it tries to fall back to it (eg when a default Microsoft VGA driver is installed)
V10.0 Build 1009 - 9th/September/2020
- Updated internal YAML library used for baselines and test results
- Baselines, fixed an issue where there were two instances of b48BitAddressSupported in the SMART info which would break YAML parsing
- Baselines, fixed an issue where there were two instances of iComputeUnits in the video card info which would break YAML parsing
- Baseline chart user interface, increased size of chart buttons
- Baseline chart user interface, move gauge/distribution chart buttons to bottom right of chart
- System Information, added support for NVMe drives behind USB-NVMe bridge (eg JMicron JMS583, Realtek RTL9210, ASMedia ASM2362)
- System Information, added naming support for AMD Ryzen 5/7/9 4000 series integrated graphics
- System Information, fixed a security issue with DirectIO device driver that runs as part of system information collection. Hypothetical exploit was possible that allowed user to bypass operating system restrictions & install arbitrary software.
But user would already need to be the elevated Admin user on the local machine to take advantage of exploit. So overall additional risk is low. No usage of this exploit has been seen in the field. New DirectIO version is V13.0
V10.0 Build 1008 - 6th/August/2020
- System Information, fixed a security issue with DirectIO device driver that runs as part of system information collection. new DirectIO version is V12.4
- Advanced Disk Test, added 16MB, 32MB, 16GB and 32GB options to test file sizes
- Increased main window default size slightly to show all elements correctly
V10.0 Build 1007 - 1st/July/2020
- Advanced memory test, Fixed graphing button not being disabled for latency test in some instances (no graphs available for latency test)
- Memory test, Database operations, limited max amount of test threads to 32 for this test due to timeouts
- 2D Test, Direct2D, fixed a possible situation where the test could return a 0 score when not running at the default resolution
- 2D Test, Direct2D, fixed a penalty calculation error that could result in a score of 0
- PDF Test, fixed a bug that was preventing the test running on windows 8.1
- PDF Test, fixed a bug where the PDF test was attempting to run in windows 8 while the minimum supported was 8.1
- Allowed 2D mark to be generated if missing 1 test (eg windows 8.1 but still failing to run the SVG test)
- Stopped 2D tests setting flag for no DX11 support, windows 8.1 systems with Dx11 support may still fail the SVG test
- Fixed crash that could occur in primes test when run on a single core single threaded CPU
- Fixed a BSOD on startup when running using QEMU
V10.0 Build 1006 - 23rd/April/2020
- Fixed a BSOD when running in an Amazon EC2 instance
- Changed cross platform mark to use the best result out of the normal primes test and a primes test limited to physical cores
V10.0 Build 1005 - 17th/April/2020
- Save as text, added an option to include system information when exporting to tab and semi-colon format text.
- 2D Tests - Fonts and text, fixed a possible crash when the test setup fails.
- Added encryption sub test results (AES, SHA256, ECDSA) to baseline file.
- Cross platform mark, made some changes so a second primes test is run that is restricted to only physical cores and this score is what is used for the cross platform mark.
- No longer generating a cross platform mark for old (V9/V8) baselines when they are loaded due to the above changes.
V10.0 Build 1004 - 16th/March/2020
- CPU Test - Compression test, made some changes to increase speed of compression test. The test compresses random data. But it was observed that the generation of random data was taking a large portion of the test execution time. Investigation showed recent Windows patches slowed down the performance of the standard Rand() function. Microsoft are also discouraging its use for other reasons. So we switched to using std::minstd_rand. The test now spends more time compressing data and less time creating random test data.
- CPU Test - Single thread test, due to changes in the compression test the single thread test will now be slightly higher as the compression test is part of the single threaded test. This also goes some way to addressing concerns that some AMD CPUs were performing below expectations in the single threaded test. (minstd_rand is slightly faster on some AMD chips than Rand)
- CPU Mark - due to compression and single threaded test changes the CPU mark has been rebalanced for these changes. The single thread test is now weighted slightly more than the other tests.
- Advanced Network test - Fixed a bug preventing the TCP server thread starting correctly so the TCP test would stop after a few seconds. This was due to a bug in the RIO support implmentation.
V10.0 Build 1003 - 13th/March/2020
- Histogram charts, fixed some issue loading V10 charts, fixed some missing charts for new tests.
- Baseline manager, fixed a crash that could occur when there were no CPU/GPU model names loaded from the chart data
- Started adding PT8 or PT9 flags to all old V8 and V9 baselines when an individual test result is displayed
- Install to USB, fixed a missing subfolder from the media folder that was not being copied to the USB correctly
V10.0 Build 1002 - 9th/March/2020
- CPU tests, Single Threaded, started scaling single threaded score down to be closer to PT9 for better comparability with older results.
- 2D Tests, 2D Image Rendering, changed score displayed to thousand images/sec instead of images/sec for better readability.
- Fixed drag and drop on main window of loading of baselines not working
- Fixed an issue for the test status window, when running a single CPU test it was not correctly displaying the test that was running
V10.0 Build 1001 - 5th/March/2020
NEW Advanced CPU Test
- Score rebalancing
- Due to the large amount of changes made to the 2D/3D/CPU/Disk tests all the calculated mark values have been rebalanced and scaled to be similar (but not exactly the same) to that of PerformanceTest 9.
- Individual test scores have not been scaled so a direct comparison cannot be made in many cases between version 9 and version 10.
- Windows Support
- No longer supporting Windows versions older than Vista.
- Compiler updates
- We have switched from using Visual Studio 2013 (for V9) to Visual Studio 2019 for V10. Newer compiler versions typically bring improved code optimisation and use of newer CPU instructions.
- CPU Tests
- Enabled compiler optimisations for the CPU tests that had previously been disabled. This has resulted in better performance on newer CPUs when compared to older ones.
- Compression Test, replace with a new version that uses the Cypto++ Gzip library. Previous versions of PerformanceTest were using a Adaptive encoding algorithm, which gave good compression rates on text, but was't in common use. Zip is the defacto standard for real world data compression.
- Encryption test, removed Salsa and TwoFish from the sub tests that are run and replaced them with an ECDSA (Elliptic Curve Digital Signature Algorithm) sub test. Previously PerformanceTest V9 had 4 sub-tests. These were, TwoFish, AES, Salsa20 & SHA256. Now we have three sub-tests. AES, ECDSA & SHA256. These are all algorithms that are heavily used in the real world.
- Extended Instructions (SSE), added an AVX512 test (when available). AVX512 are a new set of CPU instructions that are in newer CPUs.
- Extended Instructions (SSE), fixed a pointer math issue in the test that was referencing incorrect memory locations. Accessing the correct data helped with data alignment and improved test throughput.
- Extended Instructions (SSE), made some changes to the SSE/AVX/FMA tests for how the results are retrieved and stored for next calculation loop (using _mm_storeu_ps and mm256_storeu_ps).
- Extended Instructions (SSE), removed custom aligned vector/matrix class and switched to standard vector/matrix class. Changed how matrix data is loaded before test (using _mm256_broadcast_ps).
- Integer Math, made some changes to add better support for out of order execution. This makes the algorithm less linear and gives modern CPUs the change to get more calculations done in parallel.
- Added a Cross-platform mark to the CPU test, made up of the Integer, Floating point, sorting and prime test scores. This will be calculated when loading a V9 baseline in V10 if the required scores are available. This cross platform score is not used when generating the overall CPU mark as it based on previously run tests. We envisage that we'll use these results in the future for cross platform comparisons (x86 PCs vs ARM based mobile devices).
- Physics test, updated Bullet physics engine to version 2.88. Previously we were using 2.83.
- 2D Tests
- Added a new SVG (Scalable Vector Graphics) image rendering test that will open and display several SVG images.
- Added a new “PDF Render” test that will open a PDF and scroll through the available pages.
- Changed default test size to 1920 x 1080. This should place more load on the video card than was previously the case so frame rates are lower across the board compared to V9. Tests will scale down in size to 1024x768 and a penalty will be applied and will not run at lower resolutions than this.
- Direct 2D, increased amount of objects displayed during test.
- Windows Interface test, increased size of dialog and number of controls on dialog.
- Image Filters and Image Rendering, added DX11 versions of this test. Results are a combination of old and new tests.
- Due to these updates scores and the 2D mark value in older versions of Windows (eg Windows 7) will be far lower as it isn't possible to scale meaningfully when multiple tests can't be run.
- Complex vectors, removed this test as it has been replaced by the new SVG test and is no longer relevant
- Direct2D SVG Test, changed test for better consistency over different test lengths. Less image are part of the test but each one will be displayed at least once. Due to more complex images being displayed the test results will be lower than in the initial release.
- 3D Tests
- DX9, changed default resolution to 1920x1080, test will be scaled down and a penalty applied if it cannot be run at this resolution.
- DX9, increased default Anti Aliasing level to 8, changed skybox and number of objects in scene. This was done with the aim of making the test less CPU bound.
- DX10, increased default resolution to 1920x1080, test will be scaled down and a penalty applied if it cannot be run at this resolution. This adds load to the video card.
- DX10, increased number of islands and meteors during test.
- DX10, fixed a bug when enumerating display modes for the DX10 test where no compatible card would be found if there was a large amount (>500) of display modes.
- GPU Compute, replaced the Bittonic sort test with an NBody Gravity test. Nobody knew what a Bittonic sort was or how it applied to the real world. NBody simulations on the other hand are a fairly common scientific application and they make a good visual impact.
- GPU Compute, increased default size for sub tests to 1920x1080.
- GPU Compute, OpenCL test, made some changes to particle size and variables used for calculations so more is happening during the test.
- GPU Compute, Mandelbrot test, increased number of iterations 10x to slow down the test execution.
- Started allowing ”Microsoft RemoteFX Graphics Device” for 3D support on some VMs.
- Memory Tests
- Increased amount of memory that non-cached tests use to 512MB of RAM (up from 256MB).
- Database Operations, changed to use an in memory sqlite3 database based on SQLite 3.31.1. Will run for maximum available physical cores and use at least 128MB RAM per thread.
- Threaded, changed to run a range of threads up the maximum available (eg 2, 4, 8, 16 or 3, 6, 12 depending on available core count) and use highest score. Amount of RAM used will depend on number of threads, <= 16 threads 512 MB, <=64 threads 1 GB, > 64 threads 2 GB.
- Threaded and Database operations, added support for processor groups and thread affinity.
- Latency test, now will take measurements based on 16KB, 64KB and 8MB ranges (previously was just 64KB) and use the average value of the three tests for the score. This will give a broader range of samples and will result in higher latency figures than PT9.
- Disk tests
- Changed name of “Random Seek” test to “32KQD20” to better represent the test (using 32K block size with a queue depth of 20).
- Added a new “4KQD1” test (using 4k block size with a queue depth of 1).
- Increased test files size to 400MB for write test, 800MB for read test (traditional hard drive). If drive is an SSD then it is 1GB for write test and 2GB for read test.
- Removed the CD test
- Advanced Physics Test
- Added option to allow resolution to be selected.
- Updated Bullet physics engine to version 2.88. Previously was using 2.83.
- Added message check on exit to stop "not responding" when closing while using a large number of objects.
- Advanced Network Test
- Added threading, Windows RIO (Registered Input/Output API Extensions) sockets option. These changes were made to achieve higher throughput & lower latency, particularly on 10Gb+ networks. You should now be able to really push the limits of your networking gear with these changes.
- Advanced Disk Test
- Made some changes to try and stop crashes during the advanced disk IOPS test when the hard drive is failing/responding abnormally.
- Added temperature collection to test results. Can now choose to display the temperature or the latency heat map when displaying a graph. This has become important as some SSDs throttle down their speed under high temperatures.
- Advanced Memory Test
Added "Threaded" test option to advanced memory test, currently will run the threaded memory test starting with 1 thread up to (Cores * Threads per core) threads. Each test loop is repeated 3 times and the best result stored.
- Now opens graph automatically at end of testing.
- Updated latency test to use same settings as standard test, running random range latency test for 16KB, 64Kb and 8MB ranges and then averaging the results.
NEW Advanced Internet Speed test
- Added an advanced CPU test, this allows individual CPU tests to be run from 1 thread up to a specified number of threads and then the results graphed.
- Added an implementation of M-Labs (https://www.measurementlab.net) internet speed test that will connect to their servers, performance a 10 second upload test, a 10 second download test and then display the results from that test.
- Re-enabled choosing of colours for loaded baselines, this will only affect the bar graph colour of the baseline and the text colour will not change.
- Added a section in the installer to allow selection of a supported language, on install first launch PT will now choose that language by default.
- Added percentile options to exported text, formatted text and HTML reports.
- Added a way of tracking submitted baselines and displaying them in the advanced baseline management dialog under the “Uploaded” tab.
- Added SETRERUNRESULT to toggle re-run config setting. Choose between keeping BEST and NEW result when re running tests.
- Added HIDEBASELINES option to only add current computer results to exported results files.
- Added CPU_RUNTEST and ACPU_SETEXPORT commands for scripting the advanced CPU test.
- Changed "Result Date" to be local time instead of UTC for consistency (windows install time was already local time).
- HTML report output, fixed a bug where the Unicode BOM was not being correctly written to the start of the file if the file was opened in append mode and didn't already exist.
- Removed 2 extra line breaks being added at end of records for REPORTSUMMARYCSV command.
- Chart display, added percentage difference to baselines when a score the "this computer" is available. Also added option in the preferences to enable/disable.
- Fixed an incorrect error message in the advanced drive performance test when a selected disk did not have enough free space.
- Fixed a bug when saving results to an image, the scrollbar width was being applied and causing some result to be hidden.
- Added a gray rectangle to custom list view header so the boundary that can be used to resize the columns is highlighted
- System information, Changed ram details in baseline system info to display in GB.
- Now displaying "Baseline #X" instead of just "#X" on system information window for loaded baselines.
- Report exports, added BIOS version and hard drive size as a separate field to the exported report system information.
- User Interface, Made back/prev/next buttons in 3D component info view slightly lighter so they stand out more.
- No longer displaying PNP ID on Video card system info display.
- Fixed some preferences dialog alignments.
- CSV export, fixed an issue where multiple "unknown disk" entries could be output and change column ordering.
- Fixed baseline display link after submission still showing V9 and not new V10 link.
- Excluded the "Cross platform mark" from the status window display when running all CPU tests (as this is calculated after all test have been run rather than a separate test).