Invention Grant
- Patent Title: Code placement using a dynamic call graph
-
Application No.: US14489904Application Date: 2014-09-18
-
Publication No.: US09612807B2Publication Date: 2017-04-04
- Inventor: Guilherme de Lima Ottoni
- Applicant: Facebook, Inc.
- Applicant Address: US CA Menlo Park
- Assignee: Facebook, Inc.
- Current Assignee: Facebook, Inc.
- Current Assignee Address: US CA Menlo Park
- Agency: Perkins Coie LLP
- Main IPC: G06F9/45
- IPC: G06F9/45 ; G06F9/44

Abstract:
When a program function is called, if the instructions for that function are not in active memory, a page fault occurs. Resolving a page fault includes a costly process of loading a page of object code instructions, into active memory, including the instructions for the called function. Technology is disclosed to reduce page faults by placing interrelated functions near each other within executable code based on a log of previous function calls. A log of function calls may be from observing the execution of applications over time. Computing devices can compute where to place functions within executable code by: obtaining the function call log; building a call graph based on the function call log; defining multiple node clusters within the call graph; and generating an ordered list of functions by sorting the node clusters. The ordered list of functions can then be provided during linking to determine function placements.
Public/Granted literature
- US20160085527A1 CODE PLACEMENT USING A DYNAMIC CALL GRAPH Public/Granted day:2016-03-24
Information query