当前位置: 首页 > wzjs >正文

乐清市网站建设哪家性价比高网站建设济南有做的吗

乐清市网站建设哪家性价比高,网站建设济南有做的吗,免费服务器主机,网页设计html代码大全下载1.C代码优化策略总结 编译器方面:用好的编译器并用好编译器(支持C11的编译器,IntelC(速度最快)GNU的C编译器GCC/G(非常符合标准),Visual C(性能折中)&#x…

1.C++代码优化策略总结

  • 编译器方面:用好的编译器并用好编译器(支持C++11的编译器,IntelC++(速度最快)
  • GNU的C++编译器GCC/G++(非常符合标准),Visual C++(性能折中),clang(最年轻Mac OS x)。
  • 算法方面:使用更好的算法。 
  • 数据结构优化:使用更好的数据结构(不同的数据结构在使用内存管理器的方式也有所不同)。
  • 使用更好的库(熟悉和掌握标准C++模板库对于进行性能优化的开发员是必须的技能,Boost Project 和 Google Code 公开了很多有用的库)。
  • 内存优化:减少内存分配和复制(减少对内存管理器的调用是一种非常有效的优化手段)。
  • 优化内存管理(内存管理器的调度,丰富的API)。
  • 移除计算(对于单条的C++语句进行优化)。
  • 多线程使用:提高并发性(多个处理核心执行指令)。
  • 优化锁的使用:减少锁的使用,减少锁的范围,使用细粒度的锁,采用无锁队列,原子锁或线程局部存储,锁数据而不是代码。

2.影响计算机优化的行为

  • 计算机的物理组成本身对计算机性能的限制。
  • 计算机的主内存是比较慢的(通往主内存的接口是限制执行速度的瓶颈(冯*诺伊曼瓶颈),(摩尔定理)每年处理器的核心的数量都会增加,但是计算机的性能未必会提高,因为这些核心只是等待访问内存的机会(内存墙memory wall))。 
  • 计算机内存的访问方式(并非以字节为单位),某些内存访问会比其他的更慢(分为一级高速缓存(cache memory)、二级高速缓存、三级高速缓存、主内存、磁盘上的虚拟内存页)。
  • 内存的容量是有限的,每个程序都会与其他程序竞争计算机资源,计算比做决定快。 
  • 在处理器中,访问内存的性能开销远比其他操作的性能开销大,非对齐访问所需要的时间是所有字节都在同一字节中的两倍。 
  • 访问频繁使用的内存地址的速度比访问非频繁使用的地址快,访问相邻地址的内存的速度比访问相互远隔的地址的内存块。 
  • 访问线程间共享的数据比访问非共享的数据资源慢很多。当并发线程共享数据时,同步代码降低了并发量。 
  • 有些语句隐藏了大量的计算,从语句的外表上看不出语句的性能开销会有多大。

3.性能测量

  • 90/10规则:一个程序会花费90%的运行时去执行10%的代码。
  • 只有正确且精确的测量才是准确的测量。 
  • 在Windows上,clock()函数提供了可靠的毫秒级的时钟计时功能。在Windows8和之后的版本中,GetSystemTimePreciseAsfileTime()提供了亚微秒的计时功能。
  • 计算一条C++语句对内存的读写次数,可以估算出一句C++ 语句的性能开销。

4.优化方法

(1)优化热点语句

  • 缓存循环结束条件值

  • 从循环中移除不变性代码

  • 从循环中移除无谓的函数调用

  • 从循环中移除隐含的函数调用

(2)减少函数调用开销

函数调用开销分析

尽管执行函数体的开销可能会非常大,但是调用函数的开销与调用大多数 C++ 语句的开销 一样,是非常小的。不过,当函数被多次调用时,累积的开销可能会变得巨大,因此减少 这种开销非常重要

函数调用流程

(1) 执行代码将一个栈帧推入到调用栈中来保存函数的参数和局部变量。

(2) 计算每个参数表达式并复制到栈帧中。

(3) 执行地址被复制到栈帧中并生成返回地址。

(4) 执行代码将执行地址更新为函数体的第一条语句(而不是函数调用后的下一条语句)。

(5) 执行函数体中的指令。

(6) 返回地址被从栈帧中复制到指令地址中,将控制权交给函数调用后的语句。

(7) 栈帧被从栈中弹出。

函数调用的基本开销

虚函数调用开销

(3)简短地声明内联函数

(4)在使用之前定义函数:当编译器编译对某个函数的调用时发现该函数已经被定义了,那么编译器能够自主选择内联这次函数调用

(5)移除未使用的多态性

(6)放弃不使用的接口

(7)用switch替代if-else if-else

(8)避免使用PIMPL惯用法,编译时间少,运行增加

(8)其他常用优化方法

4.多线程优化-未完待续


文章转载自:

http://07DYd205.srLtq.cn
http://not1Cuv0.srLtq.cn
http://BxDBukNW.srLtq.cn
http://9yMiHKSG.srLtq.cn
http://Fs1qlfzD.srLtq.cn
http://3CABheW1.srLtq.cn
http://CoxZVzoe.srLtq.cn
http://fBKi0E1l.srLtq.cn
http://lo1CEStD.srLtq.cn
http://heDc8NU8.srLtq.cn
http://jyIpgXQM.srLtq.cn
http://dDHMOHTY.srLtq.cn
http://sUyjd1lK.srLtq.cn
http://9S1l2lcc.srLtq.cn
http://rvlrooQm.srLtq.cn
http://6626hxfH.srLtq.cn
http://3PKSaPoU.srLtq.cn
http://ZCrKgAW4.srLtq.cn
http://3JfrRC2q.srLtq.cn
http://1BUdR2S2.srLtq.cn
http://IqCdjxvW.srLtq.cn
http://9AahLnLB.srLtq.cn
http://wYK6hAPD.srLtq.cn
http://8V6Z6NUe.srLtq.cn
http://t7Mr3VJ8.srLtq.cn
http://z9Dp909i.srLtq.cn
http://lEhDHF4n.srLtq.cn
http://ADHAqqO3.srLtq.cn
http://TumPW7at.srLtq.cn
http://f0gVKDz4.srLtq.cn
http://www.dtcms.com/wzjs/734463.html

相关文章:

  • 易奇秀网站黑马程序员线上课程多少钱
  • 自己建网站写小说wordpress获取专题名
  • 阿里云做网站送服务器WordPress没有必要缓存插件
  • 网络部署方案网站的建设外链优化
  • 我的wordpress网站吗做网站要学什么东西
  • 初二做网站的首页模板搜索推广采用哪种方式计费
  • 网站制作最新技术的wordpress 权限问题
  • 做网站要学哪些如何做网站的内链和外链
  • 深圳福田区区住房和建设局网站广西壮族自治区住房和建设厅网站
  • 十堰建设网站首页建设银行校招网站入口
  • 博物馆网站建设的根本意义网页设计与网站建设毕业设计
  • 怎么做挣钱的网站wordpress更改字体大小
  • 织梦网站需要优化做艺人资料卡的网站
  • 合肥专业做网站公司哪家好营销型网站建设的步骤
  • 大连企业免费建站禁止wordpress自动更新
  • 卖货小程序网站seo主要是做什么的
  • 北京 工业网站建设公司排名wordpress响应免费主题
  • 山东聊城网站设计昭通建设网站
  • app免费下载网站地址进入搜狗搜索引擎入口
  • 景区网站的作用搭建网站教学
  • 辽宁省住房和城乡建设部网站网页图片怎么保存为pdf文件
  • 英文网站制作 官网濮阳网站建设熊掌网络
  • 安阳网站建设优化渠道wordpress 出错
  • 贵州网站建站python搭建个人网站
  • dw怎么做网站相册黄页大全18勿看2000网站
  • 做网站还需要搜狗吗西安网站建设推广
  • 阜阳企业网站推广凡科做网站
  • 专门做婚纱儿童摄影网站网站建设毕业答辩ppt怎么写
  • 找兼职h5网站开发人员杭州seo外包服务
  • 免费ai设计logo网站wordpress zhai主题