Factbites
 Where results make sense
About us   |   Why use us?   |   Reviews   |   PR   |   Contact us  

Topic: Dynamic recompilation


Related Topics

In the News (Wed 30 Dec 09)

  
  Dynamic recompilation - Wikipedia, the free encyclopedia
In computer science, dynamic recompilation is a feature of some emulators and virtual machines, where the system may recompile some part of a program during execution.
In other cases, a system may employ dynamic recompilation as part of an adaptive optimization strategy to execute a portable program representation such as Java, Corn or CLR bytecodes.
The emulator used in Mac OS to run 680x0 code on the PowerPC hardware was a dynamically recompiling emulator.
en.wikipedia.org /wiki/Dynamic_recompilation   (259 words)

  
 Binary translation
Alternatively, dynamic translation looks at a short sequence of code, typically on the order of a single basic block, translates it and caches the resulting sequence.
Dynamic binary translation differs from simple emulation by eliminating the emulator's main read-decode-execute loop (a major performance bottleneck), paying for this by large overhead during translation time.
More advanced dynamic translators employ dynamic recompilation: the translated code is instrumented to find out what portions are executed a large number of time, and these portions are optimized aggressively.
www.ebroadcast.com.au /lookup/encyclopedia/bi/Binary_translation.html   (258 words)

  
 Dynamic recompilation - Encyclopedia, History, Geography and Biography
In computer science, dynamic recompilation is a feature of some emulators and virtual machines, where thesystem may recompile some part of a program during execution.
By compiling during execution, the system can tailor the generated code to reflect the program's run-time environment, and perhaps produce more efficient code by exploiting information that is not available to a traditional static compiler.
In other cases, a system may employ dynamic recompilation as part of an adaptive optimization strategy to execute a portable program representation such as Java or CLR bytecodes.
www.arikah.com /encyclopedia/Dynamic_recompilation   (229 words)

  
 Dynamic recompilation: Definition and Links by Encyclopedian.com - All about Dynamic recompilation
In computer science, dynamic recompilation is a feature of some emulators and virtual machines, where a program is constantly evaluated at runtime, and may be compiled again during execution.
At run-time, a dynamic compiler has more information about the task required and what data to process, and can therefore produce more efficient and less redundant code.
The HP Dynamo project[?] is an example of a transparent dynamic optimizer[?].
www.encyclopedian.com /dy/Dynamic-recompilation.html   (134 words)

  
 Method and system for dynamic recompilation of statements of a first language embedded in a program having statements ...
In response to the recompilation conditions, selected statements of the first language are recompiled into new executable instructions during execution of the executable program, and the new executable instructions are respectively associated with the selected statements.
A recompiled access module is added to the set referenced by a cell in table 122 when the SQL statement associated with an access module is dynamically recompiled.
If any of the recompiled access modules in the set has an access module identifier that matches the identifier of the access module in process, then the SQL statement has already been recompiled, and the recompiled access module will be used for execution.
www.freepatentsonline.com /6496976.html   (4306 words)

  
 Programming language - Wikipedia, the free encyclopedia
It is possible to perform type inference on programs written in a dynamically typed language, but it is entirely possible to write programs in these languages that make type inference infeasible.
Dynamically typed languages treat all data locations interchangeably, so inappropriate operations (like adding names, or sorting numbers alphabetically) will not cause errors until run-time – although some implementations provide some form of static checking for obvious errors.
In MUMPS language this technique is called dynamic recompilation; emulators and other virtual machines exploit this technique for greater performance.
en.wikipedia.org /wiki/Programming_language   (1993 words)

  
 [No title]
Although a few recompilation systems are currently available, such as OM for the Alpha architecture from DEC?s Western Research Laboratory and EEL for SPARC from the University of Wisconsin, these tools have been primarily used to instrument binaries (e.g., for profiling) rather than to optimize them.
The first area studies the benefits of the recompilation of legacy binaries simply by applying modern compiler optimizations that were unavailable when the binary was first produced.
Profile-driven recompilation introduces a more complex optimization process, where a binary is first recompiled to add instrumentation, executed on test data to generate profile data, and finally recompiled again to incorporate profile-based optimizations.
www.eecs.umich.edu /~jringenb/binary_recomp.html   (985 words)

  
 Tutorials - Introduction To Dynamic Recompilation   (Site not responding. Last check: 2007-10-08)
Dynamic recompilation, while certainly not a new concept as evidenced by the number of emulators which successfully employ it, is relatively difficult for many beginners to grasp and then later successfully implemented.
Dynamic recompilation is the name for an emulation technique in which programs written for a completely different CPU architecture (from hereout called the "target architecture") are decoded and made to run on the current CPU architecture (from hereout called the "client architecture").
What this should mean to you is that if you cannot allocate the buffer but your emulator is running in dynamic recompilation mode then you should throw a fatal error and take the whole system down, because as with any critical component if it doesn't work then the system can't function.
www.zenogais.net /projects/tutorials/Dynamic%20Recompiler.html   (1227 words)

  
 Encyclopedia: Dynamic recompilation
dynarec Dynarec is an abbreviation for DYNAmic RECompilation.
Apple's new Rosetta for Mac OS X on x86 is yet another example, allowing PowerPC code to be run on the x86 architecture.
Rosetta is a lightweight dynamic translating emulator for Mac OS X developed by Apple to enable applications compiled specifically for the PowerPC family of processors to run on Apple systems based on Intel processors.
www.nationmaster.com /encyclopedia/Dynamic-recompilation   (1020 words)

  
 Dynamic Recompilation - An Introduction - Emuforums.com
Dynamic recompilation deviates from this procedure by working with whole blocks of code instead of single instructions, and that those blocks are translated into the machine language of the processor the emulator is running on.
Where dynamic recompilation really shines is 32-bit and 64-bit processors, because it makes sense to do operations on hardware registers when the original code does so.
Dynamic recompilation also known as dynamic binary translation is the process of translating binary code blocks during runtime into the binary code of the host machine.
www.ngemu.com /forums/archive/index.php/t-20491   (3411 words)

  
 Mobile Threads through First Order Continuations
Our techniques, in combination with a dynamic recompilation scheme ensuring that heavily used code moves up smoothly on a speed hierarchy, are shown to be an effective means for implementing mobile agents.
Dynamic recompilation is used on the client side to speed-up heavily used, relatively non-volatile predicates.
With dynamically recompiled consulted code, listing of sources and dynamic modification to any predicate is available, while average performance stays close to statically compiled code (usually within a factor of 2-3).
www.cs.sfu.ca /fas-info/cs/people/Faculty/Dahl/papers/papers97/tmob/html.html   (4996 words)

  
 Re: [stella] 2600 emu for GBA
There are two major schools of emulation, interpretation and recompilation (and two major divisions of recompilation, static and dynamic).
Recompilation involves rewriting the original code so that it can be run on the native processor, without the interpretive overhead (of course, there will be an interpretive element in how graphics are done and such).
Static recompilation means that it's done on startup, while dynamic recompilation means doing it on the fly, which is sort of a compromise between interpretation and static recompilation.
www.biglist.com /lists/stella/archives/200106/msg00107.html   (391 words)

  
 Method for emulating guest instructions on a host computer through dynamic recompilation of host instructions - Patent ...   (Site not responding. Last check: 2007-10-08)
The method constitutes dynamically recompiling (DR) host instructions including providing one memory which stores host instructions, providing in other memory having line entries for storing a fixed number of dynamically recompiled host instructions, and copying a host instruction from the one memory into a line entry of the other memory.
If the dynamically recompiled host instructions are not two host instructions, but are three host instructions (Block 52), then a determination is made if the last entry CLE in a given cache line CL is being accessed (Block 54).
If the entry is the last entry in the cache line (Block 54), or if the dynamically recompiled host instructions are not three in number (Block 52), then a standard instruction entry is generated (Block 58), and the flow continues to the next guest instruction (Block 46).
www.freepatentsonline.com /5790825.html   (5848 words)

  
 BYTE.com   (Site not responding. Last check: 2007-10-08)
Recompilation involves copying the PowerPC instructions out of the emulator's code library one at a time and performing postprocessing on the native representation of the hot block.
As 680x0 hot blocks are detected, recompiled, and the corresponding locations in the dispatch table and the application are revised, the interpretive emulator starts jumping to the recompiled code blocks (see the figure "The Two DR Implementations").
The recompiler stows the finished native instruction into the cache buffer, fetches another 680x0 instruction, and continues this process until the hot block's translation is complete.
www.byte.com /art/9508/sec13/art1.htm   (1827 words)

  
 Dynamic SQL is faster.
The dynamic SQL performs twice as fast as the temp table/variable method.
Point is using this CSV param dynamically in a SP is much faster than breaking CSV param down into a temp table/variable or using a table returning function.
Recompilation ain't an issue on a SP that takes 40secs to run..
www.codecomments.com /message443617.html   (1566 words)

  
 An Infrastructure for Profile-Driven Dynamic Recompilation   (Site not responding. Last check: 2007-10-08)
Dynamic optimization of computer programs can dramatically improve their performance on a variety of applications.
This paper presents an efficient infrastructure for dynamic recompilation that can support a wide range of dynamic optimizations including profile-driven optimizations.
Profiling instrumentation can be added and removed dynamically, and the data can be displayed graphically in terms of the original source to provide useful feedback to the programmer.
csdl.computer.org /comp/proceedings/iccl/1998/8454/00/84540240abs.htm   (164 words)

  
 [No title]   (Site not responding. Last check: 2007-10-08)
The second is a mixed interpreter and dynarec core (90% interpreted, 10% dynarec), using techniques of Dynamic Recompilation but using the same functions as the interpreter in order to execute the opcodes (some memory instructions are already completely dynarec).
Instructions for memory movement and jumps are emulated using dynamic recompilation.
We hope that when the dynamic recompilation code is finished, we get a little more speed (compared to pure interpretation, a doubling of speed).
www.zophar.net /things/dcemu.txt   (833 words)

  
 Dynamic Recompilation Resources
The short page about dynamically recompiling PDP-8 on SPARC features a good definition of basic blocks, which leads to larger blocks than most traditional ones and might result in better optimised code.
Some documents on a dynamically recompiling Megadrive emulator called Generator, written as a final year University Project by James Ponder (an old Acorn coder) which give a good overview of how to code a portable 68000 dynamic recompiler, as well as full C source code.
NEStra is a dynamic recompiling NES emulator for Linux, which is obviously available for different platforms, few documents are available, but full C source code is provided as well as the backend for an x86 platform.
acorn.cybervillage.co.uk /emulation/dynrcomp.htm   (882 words)

  
 GrADS - Runtime Support
Experience with the development of prototype grid-aware applications leads us to believe that robust application performance can only be achieved if all system components are allowed to advertise their performance requirements and expectations to other elements of the system, and then react if those requirements are not being met.
The system of performance contracts at the heart of this project will make it possible for real-time monitoring system to cooperate with runtime compilers, ensuring that performance goals are met by detecting performance anomalies during execution and initiating reorganization and optimization of computation to remove them.
To improve dynamic optimizer performance, the reconfigurable object program may include custom analyzer and transformer generated by the static compiler.
hipersoft.cs.rice.edu /grads/runtime_description.htm   (1187 words)

  
 Dynamic recompilation   (Site not responding. Last check: 2007-10-08)
In computer science, dynamic recompilation is afeature of some emulators and virtual machines, where a program isconstantly evaluated at runtime, and may be compiled again during execution This strategy is used because normal compilation mustaccount for all theoretical cases and as such is somewhat inefficient.
At run-time, a dynamic compiler has more information about the task required and what data to process, and can therefore produce moreefficient and less redundant code.
The emulator used in MacOS to run 680x0 code on the PowerPC hardware was a dynamically recompiling emulator.
www.therfcc.org /dynamic-recompilation-79279.html   (132 words)

  
 HOWTO: Writing a computer emulator
For example, you can not statically recompile the self-modifying code, as there is no way to tell what it will become without running it.
Dynamic recompilation is essentially the same thing as the static one, but it occurs during program execution.
You can read more on dynamic recompilation in the white paper by Ardi, creators of the recompiling Macintosh emulator.
emureview.ztnet.com /developerscorner/Programming/HOWTO.html   (1991 words)

  
 Evolution of a Java just-in-time compiler for IA-32 platforms
The upgrade recompilation from L1-compiled code to higher-level optimized code is triggered on the basis of the hotness level of the compiled method as detected by a timer-based sampling profiler [9].
After identifying a particular exception path that is executed frequently enough, EDO drives recompilation for the exception-catching method with a request to inline all of the methods along the call sequence corresponding to the exception path down to the exception-throwing method.
In the dynamic environment, dynamic class loading may cause the result of the compile-time analysis to be incorrect; thus, we need to provide guard code for all devirtualized call sites (unless it is provably monomorphic) and/or an invalidation mechanism to ensure safety in the occurrence of class loading.
www.research.ibm.com /journal/rd/485/suganuma.html   (14321 words)

Try your search on: Qwika (all wikis)

Factbites
  About us   |   Why use us?   |   Reviews   |   Press   |   Contact us  
Copyright © 2005-2007 www.factbites.com Usage implies agreement with terms.