Correcting the Dynamic Call Graph Using Control Flow ... - Google Sites
Recommend Documents
Oct 27, 2012 - of an executable, then mining the Call graph as API Call- gram to detect malicious ..... nally written for windows SDK. API-grams consider the se ...
Property-Driven Dynamic Call Graph Exploration ... directories, or packages may also be a useful concept in order ..... Layout Adjustment and the Mental Map.
Dec 5, 2011 - malwares, whereas, we use control flow graph and API calls to have more .... dataset with PE-Explorer becomes more simplified. After.
Dec 5, 2011 - mining methods use statistical tools and machine learning algorithms, and by applying ... related works in semantic based malware detection. Section 3 discusses the ..... download.htm (version 1.99 R6). [11] R. Picard and D.
Mar 22, 2016 - chi-square test for feature selection to detect malware families. This helps in to ... written in Python which accesses IDA Pro APIs to extract the.
Discrete Event Systems; traffic control; graph theory; Dynamic Programming, ... In this paper the design of a controller for a traffic crossing is presented by means ...
1 The given compiler is based on Polyglot extensible compiler framework. [14] and the Soot byte code analysis and transformation framework [15], which forms ...
ing tasks, simpler heuristics are preferred in practice, many of which can be found in surveys on ... sults when repartitioning dynamic graph sequences (Section 3.4). ..... operation requires the solution of k linear systems, one for each partition.
Keywords: CUDA; GPGPU; graph generation; dynamic memory allocation. 1. ...... [4] D. B. Johnson, âFinding all the elementary circuits of a directed graph,â.
Jun 25, 2014 - ABSTRACT. A data-graph computation â popularized by such programming ..... __cilkrts_get_worker_number() API call, which returns an in-.
approach the problem in a flow-insensitive way, i.e. they omit the use of the control-flow ... 1 algorithm intraprocedural pointer analysis(f). 2. List = MemAlloc(f). 3.
%esp,%ebx. 7: b8 0a mov. $0xa,%eax c: cd 80 int. $0x80. This code has the following effect: the first instruction puts the string âaâ on the stack, the second puts ...
We study call routing policies for call centers with multiple call types and ... We consider an inbound multi-skill call center, where arriving calls initiated by the ...
21 - 24 August 2006, Keystone, Colorado .... employed a variety of techniques including external and internal acoustic excitation [1], vibrating ribbons or flaps.
Words are often too little to reveal one's deep regards. This thesis was never an outcome of efforts of a single person.
School of Management and Information Systems .... decompiling unstructured control flow into higher level, ... data is a
51. FIGURE 2.8 â Peak correlation between the predicted signal with the different methods and ... circle of infinite radius joined to a curve of area tending to zero,.
doi: 10.1016/j.egypro.2017.03.952. Energy Procedia ..... 2011;158;A671-7. [3] Al-Fetlawi H, Shah AA, Walsh FC. ... 3;422-30. [10] Newman J, Thomas-Alyea KE.
Abstractâ this paper presents two new methods for power flow calculation of power systems in presence of Dynamic Flow. Controller (DFC), which is a new ...
Jan 29, 2013 - Melania Guerra1, Aaron Thode2, Jorge Urban3, and Sergio Gonzalez4. 1Marine Physical Laboratory, Scripps Institution of Oceanography, ...
such a system must correct sentence-level errors, such as syntactic errors .... Below we discuss two excerpts with pronominalization errors.3 ... In this excerpt, we have italicized three pronouns which have been used incorrectly according to the.
application lifecycle and different methods for monitoring Giraph jobs are ... utilization of the underlying resources,
Jul 22, 2013 ... Price List No. ACT- .... Controls. EBU Battery Backup for Electric Actuators . .....
REPLACEMENT PARTS PRICE LIST FOR SOLENOID VALVES.
Correcting the Dynamic Call Graph Using Control Flow ... - Google Sites
Jikes RVM 2.4.5 on 3.2G Pentium 4 Replay methodology [Blackburn et al. ‘06]
Deterministic run 1st iteration – compilation + application run 2nd iteration – application run
Measurement
Accuracy
Overhead
20
1st iteration includes call graph correction
Performance
Use overlap accuracy [Arnold & Grove ’05]
2nd iteration is application-only
SPECJVM98 and DaCapo benchmarks
Accuracy No correction
Static FDOM correction
Dynamic basic block profile correction
100 90
Accuracy(%)
80 70 60 50 40 30 20 10
21
Average
jbb
ipsixql
luindex
jython
hsqldb
fop
bloat
antlr
jack
mtrt
mpegaudio
javac
db
raytrace
jess
compress
0
22 Average
jbb
ipsixql
luindex
jython
hsqldb
fop
bloat
Static FDOM Correction
antlr
jack
mtrt
mpegaudio
javac
db
raytrace
jess
compress
Normalized execution time
Overhead Dynamic basic block profile correction
1.04
1.02
1
0.98
0.96
0.94
0.92
0.9
Inlining performance Static FDOM Correction
Dynamic basic block Profile correction
Perfect DCG
Normalized execution time
1.05
1
0.95
0.9
0.85
23
Average
jbb
ipsixql
luindex
jython
hsqldb
fop
bloat
antlr
jack
mtrt
mpegaudio
javac
db
raytrace
jess
compress
0.8
Baseline: profile-guided inlining with default call graph sampling
Summary
CFG constraint improves the DCG Inlining has been tuned for bad call graph Advantages Can be easily combined with other DCG profiling Minimal overhead only during the compilation
Future work
24
More inter-procedural optimizations with high accuracy DCG
Question and comment
25
Thank you!
26
27
28
29
Timing bias misleads optimizer
5,000 times
a
10,000 times
b c
Sampling with timing bias
1,000 samples
a
DCGPerfect
DCGSample
30
Inliner may inline b instead of c
c
DCGSample
Edge frequencies were reversed!
Inlining decision
500 samples
b
Call graph profiling in online optimization system Source program
Compile & instrument
Machine code
e.g. Java byte code Dynamic call graph Online optimization system
31
Profiling and program run at the same time Minimize profiling overhead Corollary: sacrifice profiling accuracy