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

Code Cache management method based on static partitioning

A management method and code technology, applied in the field of dynamic binary translation, can solve problems such as high code block missing rate, accelerated translation efficiency, and high management overhead, and achieve low management overhead, lower cache miss rate, and low management overhead.

Active Publication Date: 2013-06-12
ZHEJIANG UNIV
View PDF2 Cites 2 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

While using the code cache to speed up translation efficiency, it is necessary to effectively manage the translated code blocks, which not only saves local memory space, but also does not cause frequent replacement operations due to insufficient space in the code cache, resulting in performance degradation
[0003] Code Cache management strategies play an important role in improving translation efficiency in dynamic binary translation. It needs to comprehensively consider issues such as management overhead, code locality, and code fragmentation. However, existing code Cache management strategies still have various deficiencies, especially The management overhead is high. From the perspective of program execution locality, the missing rate of code blocks in the Cache is still high. Therefore, it is urgent to propose a more effective code Cache management strategy.

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
  • Code Cache management method based on static partitioning
  • Code Cache management method based on static partitioning
  • Code Cache management method based on static partitioning

Examples

Experimental program
Comparison scheme
Effect test

Embodiment 1

[0027] The dynamic binary translation system adopted in this embodiment is an open source QEMU system, but this method can also be extended to other binary translation systems. The QEMU system translates the executable file of the source target architecture (such as ARM, X86, MIPS) into intermediate code, and then translates it into the target architecture ISA (Instruction Set Architecture) (such as X86, PowerPC, ARM, Sparc, Alpha, MIPS ) on execution. The translation unit is a basic block, and the TB (Translation Block, TB for short) array stores the translation information of all basic blocks, and its element data structure is struct TranslationBlock, which represents the translation information of a basic block (or called TB information). QEMU uses TCG as the intermediate code. Each source architecture instruction will be translated into one or more TCG instructions at the front end, and these TCG instructions will be translated into target architecture code at the back end...

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

The invention relates to a dynamic binary system translation technology in the computer application field, and discloses a code Cache management method based on static partitioning. The method comprises the steps of adding execution_times representing the basic block executing times and generated_size representing the size of a target system code block into TB information, adding variables L1_base and L1_ptr, adding variables L2_head and L2_rear, and adding a TB backup array. The method has the advantages that the Cache management is flexible, the management spending is low, and the miss rate of the cached code block in the Cache is reduced through considering execution characteristics of a program.

Description

technical field [0001] The invention relates to a dynamic binary translation technology in the field of computer applications, in particular to a code Cache management method based on static division. Background technique [0002] Dynamic binary translation technology is an effective means to solve legacy code and improve software platform adaptability. It dynamically converts binary programs on the source architecture to run on other target architectures without the need for executable program source code. Dynamic binary translation basically works like this: translate the source architecture binary code in units of basic blocks, generate corresponding code blocks supported by the target architecture through translation, and cache them in the code cache, so that when the program runs to this basic block again When the block is executed, the corresponding target architecture code is directly obtained from the code cache and executed, thereby improving the execution speed of...

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/45
Inventor 李莹罗艳尹建伟吴健邓水光吴朝晖
Owner ZHEJIANG UNIV
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