compiler-optimization 相关问题

编译器优化涉及调整编译器以减少运行时或对象大小或两者。这可以使用编译器参数(即CFLAGS,LDFLAGS),编译器插件(例如DEHYDRA)或对编译器的直接修改(例如修改源代码)来实现。

如何在不使用C ++高性能循环的函数或类的情况下重复代码段

我在C ++ 11中的程序正在执行序列化数据的在线处理,并且循环需要在数百万个内存位置上运行。计算效率是必须的,我关心的是......

回答 2 投票 2

为什么这个简单的函数不能去虚拟化?

请考虑以下代码:struct A {virtual A&operator + =(const A&other)noexcept = 0; }; void foo_inner(int * p)noexcept {* p + = * p; } void foo_virtual_inner(A * p)noexcept {* p + = ...

回答 1 投票 5

花了很长时间编译我的C ++代码

我有一个很长的初始化列表,就像这样。的std ::矢量 inventory_list = {库存(0,30.0),库存(1,30.0),库存(2,30.0),库存(3,30.0),...

回答 2 投票 1

遍历着色器中的边界体积层次结构

我正在使用vulkan计算着色器处理路径跟踪器。我实现了一个代表边界体积层次的树。 BVH的想法是最大限度地减少光线交叉点的物体数量......

回答 1 投票 4

范围与编译器优化相关的相关性

我有一个库,它在编译时进行大量的循环展开。我也在使用Bench-marking工具,它通过在范围内实例化一个struct来工作,在破坏时它测量时间......

回答 2 投票 -1

名单 .RemoveAll()效率/编译器优化

关于效率,有没有人知道编译器是否足够聪明,不能在以下代码中为循环的每次迭代创建包含1,3,5的数组? var foo =新列表 {...

回答 3 投票 24

gcc是否有一些标志可以避免与未使用的共享库链接?

echo“void main(){}”| gcc -xc -lm -lpthread -o test - && ldd test这是一个例子。我实际上并没有使用任何数学函数。但是gcc最终仍然与libm.so联系起来。有没有......

回答 2 投票 0

如何让clang来矢量化一个简单的循环?

我有以下循环:float * s; float * ap; float * bp; ... //初始化s,ap,bp为(size_t i = 0; i <64; ++ i){s [i] = ap [i] + bp [i];似乎是矢量化的一个很好的候选者。虽然......

回答 2 投票 1

C#/ XNA - 乘法比分区更快?

我最近看到一条推文让我感到困惑(这是由XNA编码器在编写XNA游戏的背景下发布的):当天的微优化提示:如果可能的话,使用乘法而不是......

回答 5 投票 9

为什么编译器没有合并多余的std :: atomic写入?

我想知道为什么没有编译器准备将相同值的连续写入合并到单个原子变量,例如:#include 的std ::原子 Y(0); void f(){auto ...

回答 9 投票 47

运行在Docker中使用G ++编译的程序时的不同行为

如果可执行文件在docker内部或主机上运行, 则其行为会有所不同。但这只有在我们改变G ++的优化级别时才会发生。编译器:g ++(Ubuntu 7.3.0-27ubuntu1~ ...

回答 1 投票 2

Apple LLVM中的优化错误,还是代码中的错误?

我有一些iOS C ++代码可以在我的本地计算机(LLVM 9.0)上正确编译,但在我的构建服务器(LLVM 10.0)上编译不正确。该项目是通过CMake生成的(两者都是相同的版本)所以......

回答 1 投票 1

为什么编译器将数据放在PE和ELF文件的.text(代码)部分中,以及CPU如何区分数据和代码?

所以我参考这篇论文:Binary Stirring:遗留x86二进制代码的自随机指令地址https://www.utdallas.edu/~hamlen/wartell12ccs.pdf与数据交错的代码:...

回答 2 投票 2

如何找到英特尔x86 CPU解码指令的微操作?

英特尔优化参考,根据第3.5.1节,建议:“赞成单微操作指令”。 “避免使用更复杂的指令(例如,进入,离开或循环)......

回答 4 投票 14

通过简单的附加分支刺激性能降低

在我的项目中,我有一个函数,出于性能原因,应该有条件地跳过代码路径。如果条件为真,我按预期增加了50%。但如果...

回答 1 投票 2

JavaScript是否优化了多个纯滤镜/贴图/等?

我有这个用函数风格编写的JavaScript代码:someArray .filter((element)=> element).map((element)=> element.property).map((property)=> doSomethingWithIt)现在,天真......

回答 2 投票 3

我可以依赖编译器查找和优化简单的布尔循环不变量吗?

我有一个类似下面的循环,它有一个不变量,这里是scaleEveryValueByTwo永不改变的值。我可以依靠编译器找到这个不变量而不是检查条件...

回答 2 投票 4

clang如何实现char8_t或标准的某个暗角禁止优化是否存在缺陷?

clang 8.0.0引入了对c ++ 20中char8_t类型的支持。但是,我希望以下函数具有相同的编译器输出#include bool compare4(char const * ...

回答 2 投票 12

为什么C ++编译器会复制函数退出基本块?

考虑以下代码片段:int * find_ptr(int * mem,int sz,int val){for(int i = 0; i <sz; i ++){if(mem [i] == val){return&mem [一世]; } ...

回答 1 投票 26

在cpu成本方面有什么好处?在运行时移位或在数组中存储所有可能的值?

我正在向Arduino平台的ESP8266 MCU写一个C ++代码,我试图让我的代码尽可能高效。要通过I2C操作其他MCU,我需要配置他的内部寄存器......

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.