1. 程式人生 > >效能分析

效能分析

成功 reg 分享 stream png read vs2015 處理文本 idt

效能分析:

首先使用ptime連續運行三次,運行時間截圖如下:

技術分享

技術分享

技術分享

三次平均運行時間:17.535s

猜測程序的瓶頸為:

string filename = Console.ReadLine();
            string path = Path.GetFullPath(filename);
            StreamReader sr = new StreamReader(path);
            string document = sr.ReadToEnd();
            document = document.ToLower();
            
char[] s = { , ,, ., ?, !, :, ;, \‘, \" }; string[] S = document.Split(s);

進行性能分析時,起初在同學的建議下嘗試安裝VS2015,然而由於電腦太爛安裝失敗。

於是嘗試直接進行性能分析,使用VS2010自帶的分析工具,在主菜單的調試按鈕下有性能分析一項,然而分析了好久也沒出現報表,視為分析失敗:

選擇借用別人裝有VS2015的電腦進行效能分析,分析結果如下:

第一次分析:

技術分享

技術分享

第二次分析:

技術分享

技術分享

第三次分析:

技術分享

技術分享

感覺這個效能分析是錯誤的,原因未知。

再次嘗試使用VS2010進行效能分析,不知道為什麽特別慢,到現在也沒有分析成功:

技術分享

嘗試根據猜測優化,改變一下處理文本的方式,使用正則表達式:

sl = Regex.Replace(sl, @"[^a-zA-Z0-9\u4e00-\u9fa5\s]", " ");
sl = Regex.Replace(sl, "[[email protected]#$%^&*()`,./;‘:\"<>`?...]", " ");
sl = sl.ToLower();//全部變為小寫字母
string[] S = sl.Split(‘ ‘);

再次使用ptime,截圖如下:

技術分享

可以看到時間縮短了一些,速度有所提升。

其他的優化暫時沒有成功,仍需努力。

效能分析