奶头挺立呻吟高潮av全片,成人试看120秒体验区,性欧美极品v,A片高潮抽搐揉捏奶头视频

C語言

如何優化C程序性能

時間:2024-12-29 06:40:42 C語言 我要投稿
  • 相關推薦

如何優化C程序性能

  一段c程序,功能開發完成,開始性能優化。下面是小編為大家搜索整理的如何優化C程序性能,希望大家能有所收獲,更多精彩內容請及時關注我們應屆畢業生考試網!

  當然是先用 -pg 編譯,再gprof看“熱點”在哪里,很快找到,是計算hash值的函數,于是換了個更快的hash函數——fnv (http://isthe.com /chongo/tech/comp/fnv/),速度提高了一些。接著把該hash函數內聯(inline),程序又快了一些。內聯函數不是解決性能問題的靈丹妙藥,因為inline之后gprof就看不到該函數的調用情況,也就不好找真正的性能瓶頸了。

  接著把幾個常用循環中的變量聲明為register,即優先使用寄存器,嗯,有點效果,但不是很明顯。管它的,快一點是一點。

  最后把代碼部分優化完,改編譯參數了:

  將 -O2 改為 -O3 ,跑了單元測試,沒問題,性能好一點

  加 -march=nocona ,性能又好一點(因為開發的程序只在服務器上跑,而公司的服務器都裝intel的CPU,而且都是新到貨,基本都是nocona平臺,所以加上沒問題)

  加 -minline-all-stringops , 據說這個選項適合含有memset、memcpy語句較多的程序,這個正合我意,加上之后性能有好了一點

  全部優化完了,查詢400萬的數據,從原先的4.9秒變為4.1秒,16%左右的性能提升,雖然不卓著,但性能就是錢啊,省錢是多么快樂的事啊....

  【相關閱讀】

  結構成員訪問方法有哪些

  [cpp] view plaincopy

  #include "stdio.h"

  #include "string.h"

  #include

  main ()

  {

  struct student{

  int num;

  char * name;

  int score;

  }stu;

  struct student *p=&stu;

  stu.num=1;

  (*p).name="tom";

  p->score=78;

  printf("%d\n",p->num);

  printf("%s\n",p->name);

  printf("%d\n",p->score);

  }

【如何優化C程序性能】相關文章:

PHP程序性能優化的方法04-12

如何優化C代碼03-28

嵌入式C語言性能優化方法05-06

如何運行C++程序04-30

C語言程序的內存如何布局04-23

如何優化C語言(單片機)06-01

PHP性能優化的技巧07-18

PHP性能優化技巧02-22

Java性能優化的技巧05-25

主站蜘蛛池模板: 丹东市| 页游| 南雄市| 保定市| 呼和浩特市| 洱源县| 沾益县| 屏东市| 和田县| 惠水县| 廉江市| 西城区| 云龙县| 东阿县| 普兰店市| 沁水县| 佛坪县| 民权县| 崇礼县| 越西县| 高安市| 文山县| 湾仔区| 禹城市| 西城区| 岳西县| 中卫市| 洛宁县| 皋兰县| 奉化市| 习水县| 板桥市| 柘荣县| 石泉县| 文安县| 肇州县| 邻水| 衡水市| 北安市| 霞浦县| 禹州市|