打印
[其它应用]

Keil编译器优化选项都是什么?

[复制链接]
2613|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
心跳回响|  楼主 | 2025-3-26 19:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Keil编译器优化选项都是什么?
Keil编译器的选项页里面有多种优化等级参数可选?对于初学者可能会有些不知所措!一张表格带你了解Keil的优化等级:

优化选项 优化级别 主要优化内容 适用场景
-O0无优化 调试阶段,代码结构不变
-O1轻度优化 删除未使用的变量,合并常量表达式 开发阶段,优化后保留部分可调试
-O2中等优化 函数内联,循环展开 发布版本,性能时间平衡
-O3激进优化 循环展开和向量化,更多函数内联 高性能需求,代码被重构,影响调试
-Os代码内存优化 优化分支和代码布局 资源受限场景


亲爱的网友们,你们学习会了吗?

使用特权

评论回复
沙发
yangxiaor520| | 2025-3-26 21:26 | 只看该作者
一般都是默认优化设置,容易出错。

使用特权

评论回复
板凳
灵犀幻影| | 2025-3-26 21:34 | 只看该作者
对于一些大型的嵌入式项目,是不是需要在开发初期不用考虑优化

使用特权

评论回复
地板
迷雾隐者| | 2025-3-26 23:21 | 只看该作者
Keil的优化选项是不是可以根据项目需求灵活选择

使用特权

评论回复
5
星辰大海不退缩| | 2025-3-27 12:42 | 只看该作者
都在什么情况下进行KEIL的优化?

使用特权

评论回复
6
魔法森林精灵| | 2025-3-27 20:22 | 只看该作者
如果项目对性能要求极高,比如实时处理大量数据,是不是-O3优化最合适

使用特权

评论回复
7
复古留声机| | 2025-3-27 21:12 | 只看该作者
那在实际项目中,是不是一般开发阶段用-O1

使用特权

评论回复
8
星空魔法师| | 2025-3-27 21:22 | 只看该作者
在使用-O3优化时,代码会被重构,那是不是意味着调试会变得很困难

使用特权

评论回复
9
心跳回响|  楼主 | 2025-4-25 17:45 | 只看该作者
星空魔法师 发表于 2025-3-27 21:22
在使用-O3优化时,代码会被重构,那是不是意味着调试会变得很困难

确实会出现。我在调试的时候开了O3时,单步调试都不好好走了

使用特权

评论回复
10
心跳回响|  楼主 | 2025-4-25 17:47 | 只看该作者
复古留声机 发表于 2025-3-27 21:12
那在实际项目中,是不是一般开发阶段用-O1

我们使用O0在调试阶段。但在release的时候会使用O1

使用特权

评论回复
11
hehhehee| | 2025-4-25 17:47 | 只看该作者
调试信息可能不准确,比如变量被优化掉、语句执行顺序被改变。

使用特权

评论回复
12
心跳回响|  楼主 | 2025-4-25 17:48 | 只看该作者
yangxiaor520 发表于 2025-3-26 21:26
一般都是默认优化设置,容易出错。

了解编译器,应用编译器。
工具嘛,要使用的顺手才可以

使用特权

评论回复
13
心跳回响|  楼主 | 2025-4-25 17:48 | 只看该作者
灵犀幻影 发表于 2025-3-26 21:34
对于一些大型的嵌入式项目,是不是需要在开发初期不用考虑优化

反正,我们并首先考虑优化。
只在项目的后段才会处理

使用特权

评论回复
14
心跳回响|  楼主 | 2025-4-25 17:49 | 只看该作者
星辰大海不退缩 发表于 2025-3-27 12:42
都在什么情况下进行KEIL的优化?

优化一直在的
只是深度不一样而已

使用特权

评论回复
15
心跳回响|  楼主 | 2025-4-25 17:50 | 只看该作者
hehhehee 发表于 2025-4-25 17:47
500-2500us的PWM高电平部分对应控制180度舵机的0-180度。

亲,窜台了吧~~

使用特权

评论回复
16
jobszheng| | 2025-4-27 19:49 | 只看该作者
我们是一直使用 O0优化状态

使用特权

评论回复
17
AdaMaYun| | 2025-4-29 16:13 | 只看该作者
keil优化还是需要注意的

使用特权

评论回复
18
OKAKAKO| | 2025-4-29 16:44 | 只看该作者
函数指针是一种非常强大的编程工具,它可以让我们以更加灵活的方式编写程序。

使用特权

评论回复
19
nowboy| | 2025-5-27 11:24 | 只看该作者
进行Keil优化通常在项目需要节省资源、提高性能或满足实时性要求时。

使用特权

评论回复
20
V853| | 2025-5-27 18:40 | 只看该作者
通常开发阶段用-o1优化,提高编译效率。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

20

帖子

0

粉丝