课题基金 / 基金详情

HAMLET: Hardware Enabled Meta-Tracing (ext.)

HAMLET: Hardware Enabled Meta-Tracing (ext.)
HAMLET:硬件启用元跟踪(扩展)
批准号:
EP/S020861/1
负责人:
Laurence Tratt
金额:
$117.61万
依托单位:
依托单位国家:
英国
项目类别:
Fellowship
财政年份:
2019
资助国家:
英国
项目状态:
已结题
起止时间:
2019 至 --

项目摘要

项目成果

Laurence Tratt的其他基金

相似基金

相关文献

中文摘要
翻译
点击翻译按钮获取中文摘要
英文摘要
As our software systems grow in size and complexity, increasingly diverse usershave different wants and needs from their languages: the right language for astatistician (e.g. R) is different from that of someone who formally verifiessafety properties (e.g. OCaml), which is different again from someone creatinguser-facing apps (e.g. Javascript). However, different languages inhabitdifferent silos and interactions between them are crude and slow. Languagecomposition has long been touted as the solution to this problem, allowinglanguages to be used together in a fine-grained way, but has traditionallystruggled to match this promise. In the Lecture Fellowship, my team and I showedthat large, messy, real-world languages can be composed together, even allowingdifferent languages to be intermingled within a single line of code. We wereable to make the performance of such multi-lingual programs close to theirmono-language constituents, showing that language composition's promise is real.However, in the course of this research, an unexpected problem became apparent:Virtual Machines (VMs), the systems used to make many languages run fast (andwhich are crucial to the good performance of language composition), do notperform as expected. In the largest VM experiment to date, we showedthat VMs perform incorrectly in around 60% of cases. Attempts to fix existingVMs have largely failed, because the problems are so deeply embedded that theycannot be teased out, even after careful examination. This is a significantproblem for language composition, for which VMs are a foundational pillar.This Fellowship Extension thus aims to show that VMs can have good, predictableperformance and that they are a suitable foundational pillar for languagecomposition. However, we cannot expect to create a traditional VM, which oftenconsume tens, hundreds, or thousands of person years of effort. Instead, my teamand I will create a new meta-tracing VM system, since history shows that thesecan be created in a small number of person years. Fortunately for us,meta-tracing has also been shown as the fastest way to run multi-lingualprograms, so it is a natural fit. We will rigorously benchmark the newmeta-tracing system we create from the beginning of, and throughout, itsdevelopment. This will enable us to observe performance regressions soon afterthey occur, allowing us to fix them quickly.We will also take the opportunity to address one of meta-tracing's biggestweaknesses: its slow warmup, that is the time between a program starting, andJIT compilation completing. Tracing currently involves a software interpreterinterpreting a software interpreter, with a 100-200x overhead when a loop istraced. We will use the Processor Trace (PT) feature found in recent x86 chipsto move the software part of meta-tracing into hardware, giving a roughly 100xspeed-up to this critical phase of the system. That will also allow us to bemore aggressive in optimising other parts of the tracer that currently causepoor warm-up.At the end of this Fellowship Extension, alongside traditional research papers,we will produce an open-source release of our new meta-tracing system. This willallow others to build on our work, be that for language composition, or simplyto make individual languages run fast.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Chrompartments: Hybrid Compartmentalisation for Web Browsers
  • 批准号:
    EP/X015963/1
  • 项目类别:
    Research Grant
  • 资助金额:
    $137.27万
  • 财政年份:
    2022
  • 负责人:
    Laurence Tratt
  • 依托单位:
CapableVMs
  • 批准号:
    EP/V000373/1
  • 项目类别:
    Research Grant
  • 资助金额:
    $106.67万
  • 财政年份:
    2020
  • 负责人:
    Laurence Tratt
  • 依托单位:
LECTURE: LanguagE ComposiTion UnifiEd
  • 批准号:
    EP/L02344X/1
  • 项目类别:
    Fellowship
  • 资助金额:
    $121.48万
  • 财政年份:
    2014
  • 负责人:
    Laurence Tratt
  • 依托单位:
COOLER: COmpOsing LanguagE Runtimes
  • 批准号:
    EP/K01790X/1
  • 项目类别:
    Research Grant
  • 资助金额:
    $78.86万
  • 财政年份:
    2013
  • 负责人:
    Laurence Tratt
  • 依托单位:
海外基金