http://llvm.org/bugs/show_bug.cgi?id=3255
Summary: Investigate deterministic variations due to "unintended"
changes.
Product: clang
Version: unspecified
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: AST
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
clang's performance can vary greatly due to changes which should have had no
executable impact.
For example, in my experiments, revision 60704 slowed down clang by 3.5%. This
revision only modified the rewriter, and only change the strings that were
present in the binary.
The root cause for such variations is that changing any code causes the layout
of code in the binary to be modified. This has two primary effects:
(1) Changing code alignment can have significant consequences on modern
processors, and may also effect the generated code.
(2) Changing address can change the behavior of malloc. This can change the
cache behavior and also change the executable behavior of the program in cases
where the behavior depends on the actual malloc address (hash tables).
Fixing these variations is not inherently good, but it allows clang's
performance to be monitored more closely, as variations due to unintended
behavior make the results noisy and hard to interpret.
Fixing (1) is hard, but we should investigate (2) to see if there are any
simple wins.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs