Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

Derive size contribution of features

Active Publication Date: 2015-07-30
GOOGLE LLC
View PDF3 Cites 4 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

This patent describes a development tool that allows a computer to record the program blocks that are executed when a user runs a certain action. The tool then analyzes this data and creates two sets of program blocks. Finally, the tool allows the user to access and write code that can be used by other programs. The main technical effect of this tool is to make it easier for developers to analyze and modify the code of their programs.

Problems solved by technology

However, testing of the software across the large number of test cases can be time consuming.
Also, determining which code blocks to reorganize and how they affect program performance for a large program can be difficult to determine.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Derive size contribution of features
  • Derive size contribution of features
  • Derive size contribution of features

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0008]One or more embodiments described herein may allow a programmer to fully instrument a binary data file and profile it over feature uses to discover which code and data are exercised when using each feature.

[0009]One or more embodiments may provide a computer configured to group code and data of an application by features in close proximity with one another within the binary executable file. For example, the features may be in close proximity with respect to time of execution, location within the binary data file, exclusivity of invocation for a set of use cases, and frequency of execution (for example, things that are not otherwise related but are only executed rarely may be grouped together; likewise, library code that is not otherwise related but are commonly executed in many different contexts may be grouped together).

[0010]As shown in FIG. 1, a development tool 1 for optimizing a software program 90 is shown. Examples of software the development tool 1 may be used with may...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

A development tool for optimizing a software program is disclosed herein. The tool may be implemented as machine readable instructions, part of a specially configured computer, or part of a practical application of a specialized process. The tool may comprise: an automation rig for executing the program, a capture tool having a plurality of data recorders, an aggregator for generating cluster data based on code block execution patterns, and a code writer for generating optimized binary programs.

Description

BACKGROUND[0001]Software programs may be designed to be compatible with a wide variety of data and users. Web browsers, for example, process millions of different websites, using many different scripts and applets. In the competitive field of software development, an application's loading speed, execution speed, and memory consumption may be important to customers. Optimizing the binary layout of the software to suit the typical usage of the software can improve its loading time and execution speed, while reducing its memory consumption. However, testing of the software across the large number of test cases can be time consuming. Also, determining which code blocks to reorganize and how they affect program performance for a large program can be difficult to determine.SUMMARY[0002]According to one embodiment, a development tool stored on tangible computer readable storage media is provided. The development tool may be configured to cause a processor of a computer to execute instructi...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
IPC IPC(8): G06F9/45G06F11/34
CPCG06F11/3466G06F8/443G06F11/3409G06F2201/865G06F9/445G06F9/3836G06F9/3858
Inventor MCFARLANE, ROGER DELANO PAULHAMILTON, CHRISTOPHER HOWARDDINGLE, ERICSGEIRSSON, SIGUROUR EGGERT
Owner GOOGLE LLC
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products