llvm - 如何为 LLVM 随机数生成器动态设置种子?
问题描述
根据 doc llvm random number generator,它说
种子应该通过传递 -rng-seed= 选项来设置。
所以这是一个静态参数?
我可以有类似 C 的东西srand(seed)
吗?那是使用运行时值来初始化 LLVM 中的随机数生成器?
解决方案
AFAIK,没有其他选择,-rng-seed
如果你想设置种子,你需要使用该选项。种子值在此编译单元中是全局静态的,因此它将始终被命令行选项覆盖。
也许您可以使用/dev/urandom
上面的命令行选项模拟随机种子生成(特别是如果您将传递调用包装在脚本中):
head -100 /dev/urandom | cksum | awk '{print $1}'
这将允许您保持为调试目的生成相同的伪随机序列的灵活性,而无需重新编译。
推荐阅读
- .net-core - ADFS 注销问题 ID4037:无法从以下安全密钥标识符解析验证签名所需的密钥
- flutter - 如何在不影响边框的情况下垂直居中对齐 TextFormField 中的 Text 和 labelText?
- php - 用正则表达式找到相反的
- python - 如何更改此条形图上条形的顺序?
- javascript - 当用户在浏览器中单击后退箭头或前进箭头时触发功能
- r - 如何以表格格式显示“pdfsearch”输出,其中包含可见的文本列、页码、行号?
- machine-learning - ValueError:“mean_squared_error”不是有效的评分值
- python-3.x - [Version 17.0.0.2] [Session 8085885] [Teradata SQL Driver] 接收 Start Response 消息头失败
- google-sheets - 基于列标题的 Google 电子表格查询计数
- android - 如何实现 API 调用以将数据从 Tizen Watch App 发送到 Companion App(iOS)