熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Scala 2.10和2.9.2的性能比較

2013-11-23 19:13:29  來源: Java核心技術 

  我已經閱讀了 Scala RC 的一些新特性該版本最值得關注的就是性能方面的提升我很好奇這個提升的幅度到底有多大於是我做了一個基准測試下面是我的兩個測試用的代碼

  Eratosthenes 篩選

  def eratosthenes(toNum: Int) = {  
     def sieveHelp(r: IndexedSeq[Int]): Stream[Int] = {  
       if(risEmpty)  
         Streamempty  
       else 
         rhead #:: sieveHelp(rtailfilterNot(_ % rhead == ))  
     }  
     sieveHelp( +: ( to toNum by ))  
   } 

  Sundaram 篩選

  def sundaram(toNum: Int) = {  
     val n = (toNum  )/ 
     val nonPrimes = for (i <  to n; j < i to (n  i) / ( * i + )) yield i+j+(*i*j)  
      +:(( to n) diff nonPrimes map (*_+))  
   } 

  其中 Sundaram 篩選方法運行 查找小於 萬的所有素數而 Eratosthenes 刷選方法運行 查找小於 的所有素數結果如下

   

  從上圖你可以看出Sundaram 篩選方面的性能提升是微不足道的而 Eratosthenes 篩選方法的性能提升達到了 倍之多因為我非常期待 Scala 正式版的發布



From:http://tw.wingwit.com/Article/program/Java/hx/201311/26470.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.