Google Benchmark– tag –
-
【C++】cbrt(x) vs pow(x,1/3) 立方根(三乗根)演算速度を比較してみた
C++11以降において,立方根(三乗根)の計算の際に,一般的に数学関数(<cmath>ヘッダ)を使用します. 平方根関数std::sqrtはよく知られていますが,立方根std::cbrtは意外と知られていません 立方根の算出するべき乗関数std::pow(x,1/3)と立方根関... -
【C++】sqrt(x) vs pow(x,0.5) 平方根の演算速度を比較してみた
C++において,平方根計算の際に,一般的に数学関数(<cmath>ヘッダ)を使用します. 平方根の算出には,専用関数std::sqrt(x)とべき乗関数std::pow(x,0.5e0)を使用する方法が考えられます. この記事では,std::sqrtとstd::powによる平方根算出の速... -
【C++】std::random_deviceは遅い?乱数生成器の速度を比較してみた
C++において,乱数といえば<random>ヘッダを使用して乱数生成をするのが一般的です. 乱数は,「真の乱数」と「疑似乱数」に分類されます. 「真の乱数」は真のランダムな数のため,乱数としての信頼性は高く,再現性はありません. 一方で,「疑似... -
【C++】 文字列と数値の安全な相互変換と速度比較
私は普段からC++を愛用していますが,何気に文字列と数値変換に関してはよくググります.この記事では,個人的な備忘録の意味合いが大きいですが,「文字列と数値の変換」と「変換速度」についてまとめておきます. 文字列と数値の変換する場合,一見簡単... -
【C++】std::vectorにおける要素追加の速度比較(push_back, reserve, resize)
C++において,std::vectorは動的確保可能な配列として非常によく利用されます.配列を動的に確保できることで非常に使いやすい一方で,配列を確保する方法に次第では速度に大きく影響します. std::vectorはこれまでに数多く比較されていると思いますが,... -
C++でのベンチマークテストのためにGoogle Benchmarkライブラリを利用する
便利なベンチマークツールは使うべし! 単体テストは重要性は近年では広く周知されています.一方で,性能に関してはなかなか議論されることが多くありません. その一因としては,性能はプログラマの能力差が顕著に顕れるためでしょう. バグに関してはテ...
1