Cargando…

Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software

This thesis investigates with a structured and precise analysis the behaviour of programs execution during trace-based just-in-time (JIT) compilation. The work was carried out in the context of the tracing just-in-time compiler LuaJIT embedded in the Next Generation of the Methodical Accelerator Des...

Descripción completa

Detalles Bibliográficos
Autor principal: D'Andrea, Dario
Lenguaje:eng
Publicado: 2019
Materias:
Acceso en línea:http://cds.cern.ch/record/2692915
_version_ 1780963982353367040
author D'Andrea, Dario
author_facet D'Andrea, Dario
author_sort D'Andrea, Dario
collection CERN
description This thesis investigates with a structured and precise analysis the behaviour of programs execution during trace-based just-in-time (JIT) compilation. The work was carried out in the context of the tracing just-in-time compiler LuaJIT embedded in the Next Generation of the Methodical Accelerator Design software (MAD-NG). MAD software series provides a scripting language, which is a de facto standard to describe particle accelerators, simulate beam dynamics, and optimise beam optics at CERN. It has to process a massive quantity of data and operations with user-defined expressions during simulation, hence it needs to be very efficient. A technology that fulfils these demands is LuaJIT, a trace-based just-in-time compiler for the Lua programming language. Trace-based just in time compilation is a technique used for dynamic interpreted languages. It consists of recording a linear path of frequently executed operations, so-called trace, compiling it to native machine code and executing it. To accomplish this work we proposed some extensions for the existing analysis tools provided by LuaJIT and we realised some post-processing analysis to inspect the traces generated by the JIT during the execution of a program. It is necessary to understand all the mechanisms performed by a tracing JIT compiler under the hood in order to better profit from trace-based just-in-time compilation. The consciousness of the internal mechanisms behind a tracing JIT compiler leads to take high-level software decision in JIT-friendly style.
id cern-2692915
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2019
record_format invenio
spelling cern-26929152019-11-22T13:44:10Zhttp://cds.cern.ch/record/2692915engD'Andrea, DarioBehavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design SoftwareComputing and ComputersThis thesis investigates with a structured and precise analysis the behaviour of programs execution during trace-based just-in-time (JIT) compilation. The work was carried out in the context of the tracing just-in-time compiler LuaJIT embedded in the Next Generation of the Methodical Accelerator Design software (MAD-NG). MAD software series provides a scripting language, which is a de facto standard to describe particle accelerators, simulate beam dynamics, and optimise beam optics at CERN. It has to process a massive quantity of data and operations with user-defined expressions during simulation, hence it needs to be very efficient. A technology that fulfils these demands is LuaJIT, a trace-based just-in-time compiler for the Lua programming language. Trace-based just in time compilation is a technique used for dynamic interpreted languages. It consists of recording a linear path of frequently executed operations, so-called trace, compiling it to native machine code and executing it. To accomplish this work we proposed some extensions for the existing analysis tools provided by LuaJIT and we realised some post-processing analysis to inspect the traces generated by the JIT during the execution of a program. It is necessary to understand all the mechanisms performed by a tracing JIT compiler under the hood in order to better profit from trace-based just-in-time compilation. The consciousness of the internal mechanisms behind a tracing JIT compiler leads to take high-level software decision in JIT-friendly style.CERN-THESIS-2019-152oai:cds.cern.ch:26929152019-10-09T14:18:02Z
spellingShingle Computing and Computers
D'Andrea, Dario
Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software
title Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software
title_full Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software
title_fullStr Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software
title_full_unstemmed Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software
title_short Behavioural Analysis of Tracing JIT Compiler Embedded in the Methodical Accelerator Design Software
title_sort behavioural analysis of tracing jit compiler embedded in the methodical accelerator design software
topic Computing and Computers
url http://cds.cern.ch/record/2692915
work_keys_str_mv AT dandreadario behaviouralanalysisoftracingjitcompilerembeddedinthemethodicalacceleratordesignsoftware