NS3 跑模拟数据用优化模式!!!
debug 版本
./waf clean
./waf configure --build-profile=debug --enable-examples --enable-tests
./waf
optimized版本---推荐
./waf clean
./waf configure --build-profile=optimized --enable-examples --enable-tests
./waf
(模拟时间从90s降到10s 450s降到57s 接近10分之一)
2022年5月25日12:44:04
官方教程
CXXFLAGS="-O3" ./waf configure
来自 <https://www.nsnam.org/wiki/Installation#Installation>
那我可不可以:
CXXFLAGS="-O3" ./waf configure --build-profile=optimized --enable-examples --enable-tests
见下面optimize的编译器标志就是-O3。所以没必要在前面加CXXFLAGS="-O3"
我们已经了解了如何为 Waf 配置debug或optimized构建:
$ ./waf --build-profile=debug
还有一个中间构建配置文件,release. -d是的同义词--build-profile。
构建配置文件控制日志记录、断言和编译器优化的使用:
特征 |
构建配置文件 |
|
|
|
debug |
release |
optimized |
启用的功能 |
NS3_BUILD_PROFILE_DEBUG NS_LOG... NS_ASSERT... |
NS3_BUILD_PROFILE_RELEASE |
NS3_BUILD_PROFILE_OPTIMIZED |
代码包装宏 |
NS_BUILD_DEBUG(code) |
NS_BUILD_RELEASE(code) |
NS_BUILD_OPTIMIZED(code) |
编译器标志 |
-O0 -ggdb -g3 |
-O3 -g0 -fomit-frame-pointer |
-O3 -g -fstrict-overflow -march=native |
构建配置文件
如您所见,日志记录和断言仅在调试版本中默认配置,尽管可以在 Waf 配置期间使用--enable-logs和标志在其他构建配置文件中选择性地启用它们。--enable-asserts推荐的做法是在调试模式下开发您的场景,然后在优化的构建配置文件中进行重复运行(用于统计或更改参数)。
来自 <https://www.nsnam.org/docs/release/3.34/tutorial/html/getting-started.html#building-ns-3>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)