Home Products Contracting Purchase About Contact
Home Products Contracting Purchase About Blog Contact


Download your 30 day free trial and start optimising your application.

Previous versions...


-Fixed History View

-update code signing

-fixed crash reading .mempro files
-fixed MEMPRO_WRITE_DUMP line in help chm
-fixed int cast warnings in MEMPRO_ASSERT in MemPro.cpp

-fixed crash in MemPro.cpp creating dump file from alloc in global

-support for profiles with >2 billion live allocations
-updated msdia140.dll
-removed VS2010 and VS2012 pre-built libraries
-fixed crash deleting row in group filters data grid
-change font to consolas and increased size in callstack view

-Fixed installer failing for systems that don't have correct .net version installed

-Fixed crash loading dump files
-Fixed 64bit addresses showing incorrectly

-Registration fixes

-Fixes for registering with local server
-Fix to VMEM_ENABLE_STATS define

-Fix for bug instroduced in 1.6: historic snapshots showing incorrect allocated memory (also affects diff snapshots)

-fixed feedback form
-fixed right-click expand all first items in calltree view
-improved y-axis mouse dragging. Left click drag now scales, right click drag scrolls
-stopped changing update interval setting from affecting the current capture
-fixed "goto source file" for VS2019
-fixed committed and reserved not showing for dump files
-improved leak detection (obfuscated free packet address)

-added GraphUpdateInterval setting
-fixed installer (errored if more recent VS2017 redist already installed)
-backwards compatibility for loading v12 dump files

-Updated setup instructions

-Support for opening version 12 mempro dump files

-Fixed crash handling zero byte allocations

-Fixed inaccurate allocated memory stat in snapshot
-fixed missing allocations in snapshop-diff
-fixed historic snapshots showing zero bytes

-Fixed bug introduced in that could cause problems connecting
-added VS2017 pre-compiled MemProLib libs
-added back the MBCS pre-compiled MemProLib libs
-added back the x86 MemProDll

-support for PS4 executables with spaces
-better handling of corrupt packats

-Fix to PC stack tracing (missing memset)

-fixes to MemPro.cpp for iOS
-fix for potential buffer overrun in SendString
-fix for leaked allocations not being detected if they happen while waiting for a connection
-fix crash if CreateThread fails
-fixed warning passing in size to VirtualFree when releasing memory
-fixed compiler warning in SetThreadName
-fixed crash in EnumerateLoadedModulesCallback if no user context passed in
-fixed GetStackTrace not setting hash on PS4
-module enumeration for XboxOne
-fixed bug in unreferenced allocation checker where it would check past the end of the allocation
-unreferenced allocation checker now only checks the first 48 bytes for references
-fixes to memory view mouse navigation
-added current address tooltip in memory view
-default reserved memory to off by default in memory view
-fixed "memory contents unavailable" warning from memory view
-changes all http links to https
-fixed bug if auto-update fails
-fixed snapshot datagrid sometimes not refreshing
-removed MemProPlatform.h include from MemPro.h
-fixed disconnect crash in HandleError()
-Improvements to registration system
-Changed MemPro.cpp/h to use simpler ISC license

-refactored and improved MemProLib platform specific code
-fixes to PS4 symbol loading
-fixed bug where it bring up registration form even though it is already registered
-added support for objdump symbol files on Linux based platforms

-Fixes to registration system

-Fixes for PS4 symbol loading
-Browse to source file and source file lookup paths in settings
-Ensure first snapshot is dselected after disconnect
-Now resolves symbols for all PS4 modules
-stopped product needing to be re-registered after installing update
-symbol files now embedded into save files for Linux and PS4
-fixed soft-lock triggering snapshots from a recording
-update symbols after changing filters and symbol paths
-removed displacement offsets from symbol name
-fixed race condition initialising MemPro from multiple threads
-fixed MemPro x86 dll library linkage
-fixed crash in registration system if internet connection is blocked
-Fixed icon
-Registration fixes

-fixed diff snapshot dialog

-new registration system
-fixed bug in showing calltree for snapshot with no callstacks
-removed displacement offset in symbol name
-fixed auto-update
-fixes to opening file in visual studio
-optimisations to datagrid column sorting

-support for PS4
-support for Unreal 4.19
-support for symbol servers
-Xbox will now detect mismatched pdbs
-command line support for exporting function memory to csv (MemProCmd.exe)
-UI improvements
-renaming of snapshots
-support for triggering memory snapshots from MemProLib
-exporting of function memory to csv
-show memory value when hovering over graph
-added measure line to graph
-added axis value edit boxes to graph view
-fixed zooming with mouse wheel
-graph zoom to selection
-graph zoom to fit
-support for dragging and zooming y axis
-graph now uses the max value since the last sample
-fixed exception jumping to last line of file in source view
-fixed last sample not showing in graph
-updated subtracting snapshots in help doc
-show memory value when hovering over graph
-made Update more fault tolerant if it gets a bad version number
-moved to .NET 4.6

-Remove dependency on VS2015 runtime for x64 version

-Fixed hang in MEmPro.cpp when shutting down the application

-Removed dependency on VS2015 runtime. Now only uses VS2010 runtime which is already installed by the installer.

-Fixed installer exe crashing on startup on certain systems
-Added extra diagnostics to bootstrap installer

-General optimisations
-MemPro.cpp: support for building with Unreal Engine
-Improved registration process
-use EnumerateLoadedModules64 for 64bit apps
-improved "goto source file"
-improved symbol file lookup (now looks in module directory)

-Stopped registration box from continually being shown for new registration keys

-Fixed missing Window.h include that caused MemPro.cpp to not compile on some platforms
-Fixed USE_STACKWALK64 compile error

-Major improvement to the leak view so that it now returns much fewer false positives
-fixed right clicking on graph to take snpashot
-fixed assert in MemProLib critical section
-fixed stall taking snapshot while connected to XBoxOne
-fixed hang in MemProLib on shutdown

-renamed MemProLib src folder to lib_src
-renamed MemProLib src_combined folder to src
-updated setup instructions
-fixed compiled MemProLib x64 versions (they were the x86 versions)
-renamed MemProDll.dll to MemProDll_x86.dll and added MemProDll_x64.dll
-added x64 config to MemProDll_Test sample
-fixed sym_txt loading hang with lines longer than 4096
-graph drag select moved to shift-left mouse button

-Optimisations of MemPro performance
-Significant optimisations to MemProLib runtime performance
-Canceling of progress bars
-More cross platform support
-support for integrating into Unreal Engine
-fixed crash when entering group filters in calltree view
-fixed crash diff'ing snapshots if one of the snapshots fails
-fixed glitches dragging the graph around when zoomed out
-stopped feedback form from showing so often
-fixed purchase link
-History view now supports 64bit addresses
-fixed double click to open in visual studio
-renamed console platform defines in MemProLib
-optimisations of stack hash map in MemProLib
-fixed MemProLib compile errors on unix
-removed callstack tracking when tracking frees (MmeProLib optimisation)
-fixed module enumeration for xbox platform
-added RtlCaptureStackBackTrace as an option for capturing stack traces
-made callstack sending more robust by sending the callstack id along with the callstack
-support for enumerating modules on Unix
-improved the case where module lookup fails, now uses LookupFunction to try and work out the module base address
-fixed bug in socket receive function, it would occasionally miss data (in MemProLib)
-enabled Link Time Code Generation
-support for profiling projects with shared libraries on Unix
-fixed flickering in allocation sizes graph
-Alloc struct allocator now uses a fast pool
-reduced graph update interval
-increased receive ring buffer size to help deal with pulses
-fixed missing DIA registration helper page link
-fixed compile error in MemProLib when write dump is enabled on unix
-fixed hang when registering
-support for profiling 64bit unix programs
-removed log thread. All logs are now written out directly

-fixed leak in allocation sizes graph
-fixed symbol loading so that if it finds a symbol file that doesn't match it keeps searching for one that does.
-save module info in .mempro save files (used for finding matching symbol files)
-optimised alloc sizes graph update

-fixed crash opening Types View (occurred if unable to obtain line from symbol and the source file didn't end in a new line)
-fixed window size problem if mempro was closed while minimised or maximised
-fixed problem with MemPro process not always shutting down correctly
-fixed 'Open Source File' in call tree view, now opens Visual Studio correctly (can now also double click on symbol to go to the source file)
-optimisation to reduce hashmap collisions - general speedup
-fixed potential bug reading mempro_dump files

-Stopped page view from crashing on pages with errors. Now displays them in red.
-Output error message to output window when detecting pages with errors
-Fixed the registration form accepting an empty email address
-made connect retry for 10 seconds. Fixes problem with launch and connect trying to connect before app is ready
-Fixed Open Source File from calltree view. Double click now opens file in dev studio.

-fixed crash taking historic snapshots by right clicking on the graph
-Fixed allocs not being written to history file while taking historic snapshot while connected

-added return email to feedback form
-menu items now enabled and disabled appropriately
-renamed snapshot buttons to Allocation and Memory snapshots to make it clearer what they do
-renamed Rewind View to History View
-made History view work with with 64 bit pointers
-added progress bar to history view
-fixed bug with the allocation displayed while moving forwards and backwards through allocations.
-fixed bug where incorrect allocations would be displayed in the history list
-fixed potential hang gathering alocation history
-fixed MemProLib for systems with different struct padding. It would cause a hang when connecting on some platforms
-fixed bug for allocation pointers large enough to set the top bit. They are now displayed correctly
-fixed compile error in MemProLib for unix based platforms

-new async File system - speed up reading and writing of large files
-free demo now lasts 15 days

Full version history...
Insert these two lines into your code:

#include "MemPro.cpp"

You will then be able to connect to your app using MemPro.exe.

See the User Guide for more details.
MemPro only runs on Windows, but can connect to and profile apps on virtually any platform, including Unix/GCC

Supported platforms:
Windows 8 (32/64 bit)
Windows 7 (32/64 bit)
Windows Vista
Windows XP

Supported tools
Visual Studio 2015
Visual Studio 2013
Visual Studio 2012
Visual Studio 2010
Visual Studio 2008
Visual Studio 2005

Questions? Please read the MemPro FAQ