首页 > 最新文献

Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments最新文献

英文 中文
An Analysis of x86-64 Inline Assembly in C Programs C程序中x86-64内联汇编的分析
Manuel Rigger, Stefan Marr, Stephen Kell, David Leopoldseder, H. Mössenböck
C codebases frequently embed nonportable and unstandardized elements such as inline assembly code. Such elements are not well understood, which poses a problem to tool developers who aspire to support C code. This paper investigates the use of x86-64 inline assembly in 1264 C projects from GitHub and combines qualitative and quantitative analyses to answer questions that tool authors may have. We found that 28.1% of the most popular projects contain inline assembly code, although the majority contain only a few fragments with just one or two instructions. The most popular instructions constitute a small subset concerned largely with multicore semantics, performance optimization, and hardware control. Our findings are intended to help developers of C-focused tools, those testing compilers, and language designers seeking to reduce the reliance on inline assembly. They may also aid the design of tools focused on inline assembly itself.
C代码库经常嵌入不可移植和未标准化的元素,如内联汇编代码。这些元素不能很好地理解,这给渴望支持C代码的工具开发人员带来了问题。本文调查了在GitHub的1264 C项目中使用x86-64内联汇编,并结合定性和定量分析来回答工具作者可能有的问题。我们发现28.1%的最受欢迎的项目包含内联汇编代码,尽管大多数项目只包含几个片段,只有一个或两个指令。最流行的指令构成了一个小子集,主要涉及多核语义、性能优化和硬件控制。我们的发现旨在帮助以c为中心的工具的开发人员、测试编译器的开发人员和语言设计人员减少对内联汇编的依赖。它们还可以帮助设计专注于内联汇编本身的工具。
{"title":"An Analysis of x86-64 Inline Assembly in C Programs","authors":"Manuel Rigger, Stefan Marr, Stephen Kell, David Leopoldseder, H. Mössenböck","doi":"10.1145/3186411.3186418","DOIUrl":"https://doi.org/10.1145/3186411.3186418","url":null,"abstract":"C codebases frequently embed nonportable and unstandardized elements such as inline assembly code. Such elements are not well understood, which poses a problem to tool developers who aspire to support C code. This paper investigates the use of x86-64 inline assembly in 1264 C projects from GitHub and combines qualitative and quantitative analyses to answer questions that tool authors may have. We found that 28.1% of the most popular projects contain inline assembly code, although the majority contain only a few fragments with just one or two instructions. The most popular instructions constitute a small subset concerned largely with multicore semantics, performance optimization, and hardware control. Our findings are intended to help developers of C-focused tools, those testing compilers, and language designers seeking to reduce the reliance on inline assembly. They may also aid the design of tools focused on inline assembly itself.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"66 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131667919","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 17
gMig: Efficient GPU Live Migration Optimized by Software Dirty Page for Full Virtualization gMig:高效的GPU实时迁移,由软件Dirty Page为完全虚拟化优化
Jiacheng Ma, Xiao Zheng, Yaozu Dong, Wentai Li, Zhengwei Qi, Bingsheng He, Haibing Guan
This paper introduces gMig, an open-source and practical GPU live migration solution for full virtualization. By taking advantage of the dirty pattern of GPU workloads, gMig presents the One-Shot Pre-Copy combined with the hashing based Software Dirty Page technique to achieve efficient GPU live migration. Particularly, we propose three approaches for gMig: 1) Dynamic Graphics Address Remapping, which parses and manipulates GPU commands to adjust the address mapping to adapt to a different environment after migration, 2) Software Dirty Page, which utilizes a hashing based approach to detect page modification, overcomes the commodity GPU's hardware limitation, and speeds up the migration by only sending the dirtied pages, 3) One-Shot Pre-Copy, which greatly reduces the rounds of pre-copy of graphics memory. Our evaluation shows that gMig achieves GPU live migration with an average downtime of 302 ms on Windows and 119 ms on Linux. With the help of Software Dirty Page, the number of GPU pages transferred during the downtime is effectively reduced by 80.0%.
本文介绍了gMig,一个开源和实用的GPU全虚拟化实时迁移解决方案。通过利用GPU工作负载的脏模式,gMig提出了一次性预拷贝与基于哈希的软件脏页技术相结合,实现高效的GPU实时迁移。具体来说,我们提出了三种gMig方法:1)动态图形地址重新映射(Dynamic Graphics Address Remapping),通过解析和操作GPU命令来调整地址映射,以适应迁移后的不同环境;2)软件脏页(Software Dirty Page),利用基于哈希的方法来检测页面修改,克服了商品GPU的硬件限制,只发送脏页,加快了迁移速度;3)一次性预拷贝(One-Shot Pre-Copy),大大减少了图形内存的预拷贝次数。我们的评估表明,gMig实现GPU实时迁移,在Windows上平均停机时间为302毫秒,在Linux上为119毫秒。借助软件脏页,在停机期间传输的GPU页面数量有效减少了80.0%。
{"title":"gMig: Efficient GPU Live Migration Optimized by Software Dirty Page for Full Virtualization","authors":"Jiacheng Ma, Xiao Zheng, Yaozu Dong, Wentai Li, Zhengwei Qi, Bingsheng He, Haibing Guan","doi":"10.1145/3186411.3186414","DOIUrl":"https://doi.org/10.1145/3186411.3186414","url":null,"abstract":"This paper introduces gMig, an open-source and practical GPU live migration solution for full virtualization. By taking advantage of the dirty pattern of GPU workloads, gMig presents the One-Shot Pre-Copy combined with the hashing based Software Dirty Page technique to achieve efficient GPU live migration. Particularly, we propose three approaches for gMig: 1) Dynamic Graphics Address Remapping, which parses and manipulates GPU commands to adjust the address mapping to adapt to a different environment after migration, 2) Software Dirty Page, which utilizes a hashing based approach to detect page modification, overcomes the commodity GPU's hardware limitation, and speeds up the migration by only sending the dirtied pages, 3) One-Shot Pre-Copy, which greatly reduces the rounds of pre-copy of graphics memory. Our evaluation shows that gMig achieves GPU live migration with an average downtime of 302 ms on Windows and 119 ms on Linux. With the help of Software Dirty Page, the number of GPU pages transferred during the downtime is effectively reduced by 80.0%.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"580 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123409741","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
Improving Dynamically-Generated Code Performance on Dynamic Binary Translators 改进动态二进制翻译器上动态生成代码的性能
Wenwen Wang, Jiacheng Wu, Xiaoli Gong, Tao Li, P. Yew
The recent transition in the software industry toward dynamically generated code poses a new challenge to existing dynamic binary translation (DBT) systems. A significant re-translation overhead could be introduced due to the maintenance of the consistency between the dynamically-generated guest code and the corresponding translated host code. To address this issue, this paper presents a novel approach to optimize DBT systems for guest applications with dynamically-generated code. The proposed approach can maximize the reuse of previously translated host code to mitigate the re-translation overhead. A prototype based on such an approach has been implemented on an existing DBT system HQEMU. Experimental results on a set of JavaScript applications show that it can achieve a 1.24X performance speedup on average compared to the original HQEMU.
最近软件行业向动态生成代码的转变对现有的动态二进制翻译(DBT)系统提出了新的挑战。由于维护动态生成的来宾代码和相应的已翻译的主机代码之间的一致性,可能会引入大量的重新翻译开销。为了解决这个问题,本文提出了一种新的方法,用动态生成的代码为客户应用程序优化DBT系统。所提出的方法可以最大限度地重用以前翻译的主机代码,以减少重新翻译的开销。基于这种方法的原型已经在现有DBT系统HQEMU上实现。在一组JavaScript应用程序上的实验结果表明,与原始HQEMU相比,它可以实现1.24倍的平均性能加速。
{"title":"Improving Dynamically-Generated Code Performance on Dynamic Binary Translators","authors":"Wenwen Wang, Jiacheng Wu, Xiaoli Gong, Tao Li, P. Yew","doi":"10.1145/3186411.3186413","DOIUrl":"https://doi.org/10.1145/3186411.3186413","url":null,"abstract":"The recent transition in the software industry toward dynamically generated code poses a new challenge to existing dynamic binary translation (DBT) systems. A significant re-translation overhead could be introduced due to the maintenance of the consistency between the dynamically-generated guest code and the corresponding translated host code. To address this issue, this paper presents a novel approach to optimize DBT systems for guest applications with dynamically-generated code. The proposed approach can maximize the reuse of previously translated host code to mitigate the re-translation overhead. A prototype based on such an approach has been implemented on an existing DBT system HQEMU. Experimental results on a set of JavaScript applications show that it can achieve a 1.24X performance speedup on average compared to the original HQEMU.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"211 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"113983075","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
VM Live Migration At Scale 大规模虚拟机热迁移
Adam Ruprecht, Danny M Jones, Dmitry Shiraev, G. Harmon, Maya Spivak, Michael Krebs, M. Baker-Harvey, Tyler Sanderson
Uninterrupted uptime is a critical aspect of Virtual Machines (VMs) offered by cloud hosting providers. Google's VMs run on top of rapidly changing infrastructure: we regularly update hardware and host software, and we must quickly respond to failing hardware. Frequent change is critical to both development velocity---deploying new versions of services and infrastructure---and the ability to respond rapidly to defects, including critical security fixes. Typically these updates would be disruptive, resulting in VM termination or restart. In this paper we present how we use VM live migration at scale to eliminate this disruption with minimal impact to the guest, performing over 1,000,0001migrations monthly in our production fleet, with 50ms median blackout, 300ms 99th percentile blackout.
不间断的正常运行时间是云托管提供商提供的虚拟机(vm)的一个关键方面。谷歌的虚拟机运行在快速变化的基础设施之上:我们定期更新硬件和主机软件,我们必须快速响应硬件故障。频繁的更改对于开发速度(部署新版本的服务和基础设施)和快速响应缺陷(包括关键的安全修复)的能力都是至关重要的。通常,这些更新会中断,导致VM终止或重新启动。在本文中,我们介绍了如何大规模使用虚拟机实时迁移来消除这种中断,同时对客户机的影响最小,在我们的生产舰队中每月执行超过1,000 1,000次迁移,中位数停电时间为50毫秒,99%停电时间为300毫秒。
{"title":"VM Live Migration At Scale","authors":"Adam Ruprecht, Danny M Jones, Dmitry Shiraev, G. Harmon, Maya Spivak, Michael Krebs, M. Baker-Harvey, Tyler Sanderson","doi":"10.1145/3186411.3186415","DOIUrl":"https://doi.org/10.1145/3186411.3186415","url":null,"abstract":"Uninterrupted uptime is a critical aspect of Virtual Machines (VMs) offered by cloud hosting providers. Google's VMs run on top of rapidly changing infrastructure: we regularly update hardware and host software, and we must quickly respond to failing hardware. Frequent change is critical to both development velocity---deploying new versions of services and infrastructure---and the ability to respond rapidly to defects, including critical security fixes. Typically these updates would be disruptive, resulting in VM termination or restart. In this paper we present how we use VM live migration at scale to eliminate this disruption with minimal impact to the guest, performing over 1,000,0001migrations monthly in our production fleet, with 50ms median blackout, 300ms 99th percentile blackout.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"7 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129613348","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 39
Demon: An Efficient Solution for on-Device MMU Virtualization in Mediated Pass-Through Demon:一种有效的解决方案,用于设备上的MMU虚拟化
Yu Xu, Jianguo Yao, Yaozu Dong, Kun Tian, Xiao Zheng, Haibing Guan
Memory Management Units (MMUs) for on-device address translation are widely used in modern devices. However, conventional solutions for on-device MMU virtualization, such as shadow page table implemented in mediated pass-through, still suffer from high complexity and low performance. We present Demon, an efficient solution for on-DEvice MMU virtualizatiON in mediated pass-through. The key insight is that Demon takes advantage of IOMMU to construct a two-dimensional address translation and dynamically switches the 2nd-dimensional page table to a proper candidate when the device owner switches. In order to support fine-grained parallelism for the device with multiple engines, we put forward a hardware proposal that separates the address space of each engine and enables simultaneous device address remapping for multiple virtual machines (VMs). We implement Demon with a prototype named gDemon which virtualizes Intel GPU MMU. Nonetheless, Demon is not limited to this particular case. Evaluations show that gDemon provides up to 19.73x better performance in the media transcoding workloads and achieves performance improvement of up to 17.09% and 13.73% in the 2D benchmarks and 3D benchmarks, respectively, compared with gVirt. The current release of gDemon scales up to 6 VMs with moderate performance in our experiments. In addition, gDemon simplifies the implementation of GPU MMU virtualization with 37% code reduction.
用于设备上地址转换的内存管理单元(mmu)在现代设备中被广泛使用。然而,设备上MMU虚拟化的传统解决方案,例如在中介传递中实现的影子页表,仍然存在高复杂性和低性能的问题。我们提出了Demon,一种有效的解决方案,用于设备上MMU虚拟化的中介传递。关键的见解是,Demon利用IOMMU构造二维地址转换,并在设备所有者切换时动态地将第二维页表切换到适当的候选页表。为了支持具有多个引擎的设备的细粒度并行性,我们提出了一种硬件方案,该方案将每个引擎的地址空间分开,并允许多个虚拟机(vm)同时进行设备地址重新映射。我们使用一个名为gDemon的原型来实现Demon,它虚拟化了英特尔GPU MMU。尽管如此,Demon并不局限于这种特殊情况。评估表明,gDemon在媒体转码工作负载上的性能比gVirt提高了19.73倍,在2D基准测试和3D基准测试中,性能分别提高了17.09%和13.73%。在我们的实验中,当前版本的gDemon可以扩展到6个虚拟机,性能适中。此外,gDemon简化了GPU MMU虚拟化的实现,减少了37%的代码。
{"title":"Demon: An Efficient Solution for on-Device MMU Virtualization in Mediated Pass-Through","authors":"Yu Xu, Jianguo Yao, Yaozu Dong, Kun Tian, Xiao Zheng, Haibing Guan","doi":"10.1145/3186411.3186416","DOIUrl":"https://doi.org/10.1145/3186411.3186416","url":null,"abstract":"Memory Management Units (MMUs) for on-device address translation are widely used in modern devices. However, conventional solutions for on-device MMU virtualization, such as shadow page table implemented in mediated pass-through, still suffer from high complexity and low performance. We present Demon, an efficient solution for on-DEvice MMU virtualizatiON in mediated pass-through. The key insight is that Demon takes advantage of IOMMU to construct a two-dimensional address translation and dynamically switches the 2nd-dimensional page table to a proper candidate when the device owner switches. In order to support fine-grained parallelism for the device with multiple engines, we put forward a hardware proposal that separates the address space of each engine and enables simultaneous device address remapping for multiple virtual machines (VMs). We implement Demon with a prototype named gDemon which virtualizes Intel GPU MMU. Nonetheless, Demon is not limited to this particular case. Evaluations show that gDemon provides up to 19.73x better performance in the media transcoding workloads and achieves performance improvement of up to 17.09% and 13.73% in the 2D benchmarks and 3D benchmarks, respectively, compared with gVirt. The current release of gDemon scales up to 6 VMs with moderate performance in our experiments. In addition, gDemon simplifies the implementation of GPU MMU virtualization with 37% code reduction.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121130103","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Fast PokeEMU: Scaling Generated Instruction Tests Using Aggregation and State Chaining 快速PokeEMU:使用聚合和状态链缩放生成的指令测试
Qiuchen Yan, Stephen McCamant
Software that emulates a CPU has many applications, but is difficult to implement correctly and requires extensive testing. Since a large number of test cases are required for full coverage, it is important that the tests execute efficiently. We explore techniques for combining many instruction tests into one program to amortize overheads such as booting an emulator. To ensure the results of each test are reflected in a final result, we use the outputs of one instruction test as an input to the next, and adopt the "Feistel network" construction from cryptography so that each step is invertible. We evaluate this approach by applying it to PokeEMU, a tool that generates emulator tests using symbolic execution. The combined tests run much faster, but still reveal most of the same behavior differences as when run individually.
模拟CPU的软件有很多应用,但很难正确实现,需要大量的测试。因为完全覆盖需要大量的测试用例,所以有效地执行测试是很重要的。我们将探索将许多指令测试组合到一个程序中的技术,以分摊启动模拟器等开销。为了保证每次测试的结果都反映在最终结果中,我们将一个指令测试的输出作为下一个指令测试的输入,并采用密码学中的“Feistel网络”结构,使每一步都是可逆的。我们通过将其应用于PokeEMU来评估这种方法,PokeEMU是一种使用符号执行生成模拟器测试的工具。组合测试运行得快得多,但仍然显示出与单独运行时相同的大多数行为差异。
{"title":"Fast PokeEMU: Scaling Generated Instruction Tests Using Aggregation and State Chaining","authors":"Qiuchen Yan, Stephen McCamant","doi":"10.1145/3186411.3186417","DOIUrl":"https://doi.org/10.1145/3186411.3186417","url":null,"abstract":"Software that emulates a CPU has many applications, but is difficult to implement correctly and requires extensive testing. Since a large number of test cases are required for full coverage, it is important that the tests execute efficiently. We explore techniques for combining many instruction tests into one program to amortize overheads such as booting an emulator. To ensure the results of each test are reflected in a final result, we use the outputs of one instruction test as an input to the next, and adopt the \"Feistel network\" construction from cryptography so that each step is invertible. We evaluate this approach by applying it to PokeEMU, a tool that generates emulator tests using symbolic execution. The combined tests run much faster, but still reveal most of the same behavior differences as when run individually.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128766217","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
Hop, Skip, & Jump: Practical On-Stack Replacement for a Cross-Platform Language-Neutral VM Hop, Skip, & Jump:跨平台语言中立虚拟机的实用栈上替换
Kunshan Wang, S. Blackburn, Antony Lloyd Hosking, Michael Norrish
On-stack replacement (OSR) is a performance-critical technology for many languages, especially dynamic languages. Conventional wisdom, apparent in JavaScript engines such as V8 and SpiderMonkey, is that OSR must be implemented in a low-level (i.e., in assembly) and language-specific way. This paper presents an OSR abstraction based on Swapstack, materialized as the API for a low-level virtual machine, and shows how the abstraction of resumption protocols facilitates an elegant implementation of this API on real hardware. Using an experimental JavaScript implementation, we demonstrate that this API enables the language implementation to perform OSR without the need to deal with machine-level details. We also show that the API itself is implementable on concrete hardware. This work helps crystallize OSR abstractions and, by providing a reusable implementation, brings OSR within reach for more language implementers.
堆栈上替换(OSR)是许多语言(尤其是动态语言)的性能关键技术。在V8和SpiderMonkey等JavaScript引擎中,传统观点认为OSR必须以低级(即汇编)和特定于语言的方式实现。本文提出了一种基于Swapstack的OSR抽象,将其具体化为底层虚拟机的API,并展示了恢复协议的抽象如何促进该API在实际硬件上的优雅实现。使用一个实验性的JavaScript实现,我们证明了这个API使语言实现能够执行OSR,而不需要处理机器级的细节。我们还展示了API本身可以在具体的硬件上实现。这项工作有助于使OSR抽象具体化,并且通过提供可重用的实现,使更多的语言实现者能够接触到OSR。
{"title":"Hop, Skip, & Jump: Practical On-Stack Replacement for a Cross-Platform Language-Neutral VM","authors":"Kunshan Wang, S. Blackburn, Antony Lloyd Hosking, Michael Norrish","doi":"10.1145/3186411.3186412","DOIUrl":"https://doi.org/10.1145/3186411.3186412","url":null,"abstract":"On-stack replacement (OSR) is a performance-critical technology for many languages, especially dynamic languages. Conventional wisdom, apparent in JavaScript engines such as V8 and SpiderMonkey, is that OSR must be implemented in a low-level (i.e., in assembly) and language-specific way. This paper presents an OSR abstraction based on Swapstack, materialized as the API for a low-level virtual machine, and shows how the abstraction of resumption protocols facilitates an elegant implementation of this API on real hardware. Using an experimental JavaScript implementation, we demonstrate that this API enables the language implementation to perform OSR without the need to deal with machine-level details. We also show that the API itself is implementable on concrete hardware. This work helps crystallize OSR abstractions and, by providing a reusable implementation, brings OSR within reach for more language implementers.","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"199 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122679296","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments 第14届ACM SIGPLAN/SIGOPS虚拟执行环境国际会议论文集
{"title":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","authors":"","doi":"10.1145/3186411","DOIUrl":"https://doi.org/10.1145/3186411","url":null,"abstract":"","PeriodicalId":176740,"journal":{"name":"Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123106932","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Proceedings of the 14th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1