-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Updated BFD support, fixed MINGW divergence, fixed MINGW build bugs.
This version of BFD support fixes several critical memory leaks and significantly improves symbol information lookup scalability. This version also removes the 3000 symbol limit on function information resolution; all relevant symbols are resolved without performance penalty. GNU compiler-based instrumentation overhead has been reduced by orders of magnitude in large applications. In an OpenFOAM test, memory consumption is down from ~18GB to ~112MB and ".TAU application" times are down from ~2808 seconds to ~6 seconds on Linux and Windows. These improvements necessitated small changes in the TauBfd interface, so a deprecated copy of the old interface has been maintained. Existing calls to the old interface have been updated to the new interface; code added in future should also use the new interface. See include/Profile/TauBfd.h. Former-commit-id: b5790e47a089c69c12eb1f476217599503ea140e
- Loading branch information
Showing
11 changed files
with
592 additions
and
2,165 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,23 +1,19 @@ | ||
== Info for Building TAU with the minGW cross-compilers for use on | ||
32-bit Windows == | ||
== Building TAU with the MinGW cross-compilers for 32- or 64-bit Windows == | ||
|
||
Requirements: | ||
|
||
* i586-mingw32msvc-gcc | ||
* i586-mingw32msvc-g++ | ||
* i586-mingw32msvc-ar | ||
|
||
in your path. | ||
MinGW compilers must be in your path. For example (64-bit): | ||
* x86_64-w64-mingw32-gcc | ||
* x86_64-w64-mingw32-g++ | ||
* x86_64-w64-mingw32-ar | ||
* x86_64-w64-mingw32-ld | ||
* x86_64-w64-mingw32-ranlib | ||
|
||
Limitations: | ||
|
||
* Only static libraries | ||
* No symbol demangling | ||
* No signal processing | ||
* No event-based sampling (EBS) | ||
|
||
Instructions: | ||
|
||
%> ./configure -DISABLESHARED | ||
%> patch include/Makefile minGW.patch | ||
|
||
Libraries will be placed in 'mingw32/lib'. | ||
See ./configure -help. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.