Theories and Tools for Sustainable Programming
Theories and Tools for Sustainable Programming
批准号:
RGPIN-2017-06692
负责人:
Sekerinski, Emil
金额:
$1.89万
依托单位:
依托单位国家:
加拿大
项目类别:
Discovery Grants Program - Individual
财政年份:
2018
资助国家:
加拿大
项目状态:
已结题
起止时间:
2018-01-01 至 2019-12-31
中文摘要
根据国际能源署2013年的一项研究,电子设备的功耗每年攀升6%,是全球整体消费增长的两倍。加拿大自然资源部估计,10%的家庭电力用于电子设备。与此无关,代码重用的有效性导致了代码的大小和复杂性,这使得程序需要比理想情况更多的硬件和维护资源,并且难以保证可靠性。鉴于我们在通信、交通、健康等方面对计算设备的依赖越来越大,这些相互矛盾的趋势难以为继。我们打算通过精益编程来推进解决功耗、可靠性和代码重用的编程技术。*在计算的“低端”,传感器网络已经获得了牵引力,例如用于室内/室外引导、城市规划、结构完整性监测、楼宇自动化、环境监测、农业和资产管理。这种传感器的超低功率处理器可以通过收集能量(例如太阳能、热、运动、声音、湿气和RF场)来供电,并且预计可以在无需维护的情况下运行多年,例如嵌入混凝土中。我们打算提出一种方法,可靠的间歇计算与不可靠的能源。最近,我们开发了pState,用于嵌入式系统的设计,包括正确性分析,定量分析(如功耗,传输可靠性,消息延迟),代码生成,和最坏情况下的执行时间分析的工具。我们计划通过生成使用易失性和非易失性存储器组合的代码来实现间歇计算,并将pState的分析扩展到间歇计算的可靠性。在计算的“高端”,自2005年以来处理器核心数量的增加允许在保持功耗恒定的同时提高性能。虽然多核处理器在智能手机和数据中心中很常见,但流行的编程模型并不能很好地扩展内核数量。受保护的原子动作是有吸引力的,因为它们是“更高的水平”,更容易使用显式信令和消息传递作为commonlyfound. Our最近的工作已经表明,如何在并发对象中的受保护的原子动作可以实现高效和规模以及与核心的数量。我们计划开发一种基于受保护的原子操作的生产质量编程语言,并解决三个研究问题:(1)如何正确处理原子动作中的异常,(2)如何通过动态混入来支持代码重用,作为具有原子动作的灵活且安全的组合机制,以及(3)如何在这样的语言中引入所有权以允许更好的静态检查,简化正确性条件,提高代码效率。
英文摘要
According to a study by the International Energy Agency in 2013, the power consumption of electronic devices is climbing 6% per year, twice the increase in overall global consumption. Natural Resources Canada estimates that 10% of household electricity goes into electronic devices. Independent of that, the effectiveness of code reuse has lead to code size and complexity that makes programs need more hardware and maintenance resources than ideally and makes hard guarantees about reliability difficult. Given our increased reliance on computing devices in communication, transportation, health, etc., these contradictory trends are difficult to sustain. We intend to advance programming techniques that address power consumption, reliability, and code reuse through lean programming.***At the "low end" of computing, sensor networks have gained traction, e.g. for indoor/outdoor guidance, urban planning, structural integrity monitoring, building automation, environmental monitoring, farming, and asset management. Ultra-low-power processors of such sensors can be powered by harvesting energy, e.g. solar, thermal, motion, sound, moisture, and RF fields, and are expected to perform without maintenance for years, e.g. embedded in concrete. We intend to propose a method for reliable intermittent computation with unreliable energy sources. Recently, we developed pState, a tool for the design of embedded systems that includes correctness analysis, quantitative analysis (e.g. power consumption, transmission reliability, message delay), code generation, and worst-case execution time analysis. We plan to implement intermittent computations by generating code that uses a combination of volatile and non-volatile memory and extend pState's analysis to the reliability of intermittent computations.***At the "high end" of computing, the increase in the number of processor cores since 2005 allowed an increase in performance while keeping power consumption constant. Although multi-core processors are common in smartphones and data centers, popular programming models do not scale well with the number of cores. Guarded atomic actions are appealing as they are "higher level" and easier to use than explicit signaling and message passing as commonly found. Our recent work has shown how guarded atomic actions in concurrent objects can be implemented highly efficiently and scale well with the number of cores. We plan to develop a production-quality programming language based on guarded atomic actions and address three research questions: (1) how to handle properly exceptions in atomic actions, (2) how to support code reuse through dynamic mixins, as a flexible and safe composition mechanism, with atomic actions, and (3) how to introduce ownership in such a language to allow better static checking, simplify correctness conditions, and improve code efficiency.
期刊论文(0)
专著(0)
科研奖励(0)
会议论文
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$3.79万
-
财政年份:2021
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2020
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2019
-
负责人:Sekerinski, Emil
-
依托单位:
Theories and Tools for Sustainable Programming
-
批准号:RGPIN-2017-06692
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.89万
-
财政年份:2017
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2015
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2014
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2013
-
负责人:Sekerinski, Emil
-
依托单位:
Programming Methodology for Multi-Core Concurrency and Adaptation
-
批准号:203416-2012
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.02万
-
财政年份:2012
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2010
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2009
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2008
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2007
-
负责人:Sekerinski, Emil
-
依托单位:
Languages and tools for the construction of verifiable programs
-
批准号:203416-2006
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.74万
-
财政年份:2006
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2005
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2004
-
负责人:Sekerinski, Emil
-
依托单位:
Compiling object-oriented action-based concurrency
-
批准号:300280-2004
-
项目类别:Research Tools and Instruments - Category 1 (<$150,000)
-
资助金额:$1.27万
-
财政年份:2003
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2003
-
负责人:Sekerinski, Emil
-
依托单位:
Proof-carrying programs
-
批准号:203416-2002
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.6万
-
财政年份:2002
-
负责人:Sekerinski, Emil
-
依托单位:
Building object-oriented programs for embedded systems
-
批准号:203416-1998
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.26万
-
财政年份:2001
-
负责人:Sekerinski, Emil
-
依托单位:
Building object-oriented programs for embedded systems
-
批准号:203416-1998
-
项目类别:Discovery Grants Program - Individual
-
资助金额:$1.26万
-
财政年份:2000
-
负责人:Sekerinski, Emil
-
依托单位:
海外基金