#pragma unroll的用法
来源:互联网 发布:淘宝开通蚂蚁花呗条件 编辑:程序博客网 时间:2024/05/04 19:38
#pragma宏命令主要是改变编译器的编译行为,其他的参数网上资料比较多,我只想简单说下#pragma unroll的用法,因为网上的资料比较少,而且说的比较笼统,请看下面的一段代码
int main()
{
int a[100];
#pragma unroll 4
for(int i=0;i<100;i++)
{
a[i]=i;
}
return 0;
}
循环是一个程序运行时间的主要展现形式,通过使用#pragma unroll命令,编译器在进行编译时,遇到该命令就会对循环进行展开,比如对一些循环次数比较少的循环
for(int i=0;i<4;i++)
cout<<"hello world"<<endl;
可以展开为
cout<<"hello world"<<endl;
cout<<"hello world"<<endl;
cout<<"hello world"<<endl;
cout<<"hello world"<<endl;
这样程序的运行效率会更好,当然,现在大多数编译器都会自动这样优化,而通过使用#pragma unroll命令就可以控制编译器的对循环的展开程度。还是回到最开始那个程序,他的循环展开形式为:
for(int i=0;i<100;i+=4)
{
a[i]=i;
a[i+1]=i+1;
a[i+2]=i+2;
a[i+3]=i+3;
}
0 0
- #pragma unroll的用法
- #pragma unroll的用法
- #pragma unroll的用法
- #pragma unroll的用法
- pragma UNROLL的用法
- #pragma unroll的用法
- #pragma unroll
- #pragma UNROLL 4
- 【并行计算-CUDA开发】#pragma unroll伪编译指令的使用
- #pragma 的用法
- #pragma的一般用法
- #pragma warning 的用法
- #pragma的用法
- #pragma的用法
- #pragma的用法
- pragma comment的用法
- #pragma的用法
- #pragma的用法
- PYTHON-进阶-装饰器小结
- Java基础编程9-100以内偶数相加
- HDU 2067 小兔的棋盘 递推/dp
- 线程间出现不同步现象
- ubuntu 14.04安装 右键打开终端 open in terminal
- #pragma unroll的用法
- 用C++实现STL容器list
- nyoj 红黑树 202 (二叉树遍历)
- WildFly + Apache 环境整合
- Linux /dev目录详解
- 看了又看的算法之最大公约数
- Python多进程
- 【自考】门卫思维体现的知识网—软件开发工具
- iOS开发之高德地图