news 2026/6/10 10:37:56

34、能源感知参数传递:按需参数传递策略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
34、能源感知参数传递:按需参数传递策略

能源感知参数传递:按需参数传递策略

1. 引言

集成电路能耗问题日益严峻,解决该问题需多领域协同。电路、架构、操作系统、应用程序和编译器等方面虽有进展,但编程语言对低功耗的支持也至关重要。编程语言定义了应用程序与执行环境的接口,影响编译器优化和运行时系统对架构特性的利用。然而,目前从能耗角度评估不同语言特性的研究较少。

参数传递机制是参数在被调用子程序间传递的方式,每种编程语言支持的机制有限。在嵌入式系统编程常用的 C 语言中,参数在子程序执行前就会完成评估,这种早期参数评估虽便于实现,但如果子程序未使用该参数,会导致冗余计算。

为解决此问题,本文提出了一种能源感知的参数传递机制——按需参数传递。该机制仅在子程序实际使用形式参数时,才计算对应的实际参数值。其借助编译器将实际参数值的计算推迟到形式参数实际使用的位置,不仅消除实际参数值的计算,还消除所有与之相关的无用计算。

2. 参数传递机制回顾

子程序是实现控制和数据抽象的重要编程结构,其与其他代码的接口通过子程序名和参数体现。子程序头列出的参数为形式参数,调用语句中的参数为实际参数。典型实现中,子程序调用时,实际参数会被计算并通过参数访问路径传递给形式参数,执行结束后,形式参数的值可能通过参数返回路径复制回实际参数。

C 语言有两种参数传递机制:
-按值传递(CBV):默认机制,传递参数时,计算实际参数的值并复制给形式参数,增加了存储开销,且子程序执行过程中不会修改实际参数的值,可用于单向通信场景。
-按引用传递(CBR):实际参数和形式参数共享同一位置,调用时传

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 11:11:02

JPEGsnoop 终极使用指南:快速掌握图像解码技巧

JPEGsnoop 终极使用指南:快速掌握图像解码技巧 【免费下载链接】JPEGsnoop JPEGsnoop: JPEG decoder and detailed analysis 项目地址: https://gitcode.com/gh_mirrors/jp/JPEGsnoop JPEGsnoop 是一款专业的 JPEG 图像解码和分析工具,能够深入解…

作者头像 李华
网站建设 2026/6/10 11:07:59

IDM激活终极指南:从新手到专家的完整解决方案

还在为IDM激活失败而烦恼吗?面对复杂的注册表操作和权限问题不知所措?别担心,这份2025年最新指南将带你轻松解决所有IDM激活难题,从基础诊断到高级修复,一步步教你掌握激活技巧! 【免费下载链接】IDM-Activ…

作者头像 李华
网站建设 2026/6/10 11:45:28

BongoCat虚拟桌面宠物:为你的数字生活注入温暖陪伴

在冰冷的屏幕与机械键盘声中,你是否也曾渴望一份生动的陪伴?当指尖在键盘上飞舞时,一只可爱的虚拟猫咪正悄悄来到你的桌面,用它的呆萌动作回应你的每一次操作。这不仅仅是技术的创新,更是对数字生活情感温度的重塑。 【…

作者头像 李华
网站建设 2026/6/10 11:10:55

5分钟精通uView-Plus:Vue 3跨平台开发终极指南

5分钟精通uView-Plus:Vue 3跨平台开发终极指南 【免费下载链接】uview-plus uview-plus,是[uni-app](https://uniapp.dcloud.io/) 全面兼容nvue的uni-app生态框架,全面的组件和便捷的工具会让您信手拈来,如鱼得水。 项目地址: h…

作者头像 李华
网站建设 2026/6/10 11:12:53

纽约共享单车数据分析:从2200万骑行记录解码城市交通密码

纽约共享单车数据分析:从2200万骑行记录解码城市交通密码 【免费下载链接】nyc-citibike-data NYC Citi Bike system data and analysis 项目地址: https://gitcode.com/gh_mirrors/ny/nyc-citibike-data 在纽约这座不夜城的喧嚣背后,共享单车系统…

作者头像 李华
网站建设 2026/5/21 1:46:49

Open-AutoGLM主要用户群体曝光:3类工程师正在靠它实现效率翻倍

第一章:Open-AutoGLM主要用户群体Open-AutoGLM 作为一个开源的自动化通用语言模型框架,吸引了多个技术背景和应用场景下的用户群体。其灵活性与可扩展性使其在学术界、工业界以及独立开发者中均获得广泛关注。研究人员与学术团队 该群体主要关注模型的可…

作者头像 李华