标签: benchmarking

如何准确测量c ++函数使用的时钟周期?

我知道我必须使用:rdtsc.测量的函数是确定性的,但结果远非可重复(我从运行到运行得到5%的振荡).可能的原因是:

  • 上下文切换
  • 缓存未命中

你知道其他原因吗?如何消除它们?

performance benchmarking

3
推荐指数
1
解决办法
5312
查看次数

如何对复杂功能进行良好的基准测试?

我即将在C中对一组复杂函数进行非常详细的基准测试.这是"科学水平"的细节.我想知道,进行严格基准测试的最佳方法是什么?我正在考虑运行它们,比如每次运行10次,平均时间结果并给出标准开发,例如,仅使用<time.h>.你们会做些什么来获得良好的基准?

c benchmarking

3
推荐指数
1
解决办法
318
查看次数

Codeigniter查询时间和自定义文件日志记录

我正在使用Codeigniter 1.7.3开发一个应用程序(是的,我知道有一个新版本,但我只是懒得更新).

我注意到Codeigniter内置分析器输出查询时间.我想访问这些时间并为每个查询和每个查询时间编写一个自定义日志文件.要访问查询,我可以使用$ this-> db-> last_query().

有没有办法在不破解核心的情况下访问这些查询时间?除了系统日志Codeigniter blundles之外,还有任何库可以写日志吗?

谢谢!

php mysql benchmarking codeigniter

3
推荐指数
1
解决办法
6389
查看次数

shell脚本本身**(真的)的优雅方式是什么?

我有一个bash脚本,称之为Exp,它执行计算实验,我希望得到结果

time Exp
Run Code Online (Sandbox Code Playgroud)

在脚本本身内:首先它需要始终完成(并且依赖于键入"time Exp"是不够的 - 对于您(或用户!!)需要它的关键情况,它将被遗忘),第二脚本Exp本身需要将其存储在文件中.

编写一个包装器脚本(调用"time Exp")似乎使得由于参数的破坏和time-command的输入/输出而无法使用Exp.

但实际上所需要的只是访问Exp本身的数据,该记录只能通过时间打印的通用记录(也可以通过ps访问)!这就是为什么我要求一个"优雅"的解决方案,而不仅仅是首先以某种方式存储Exp中的日期,最后,在退出之前,计算差异.但只是模拟时间命令在Exp中的作用.我认为这在许多其他情况下会有用.

bash benchmarking

3
推荐指数
1
解决办法
414
查看次数

评估iPhone应用程序电池使用情况的最佳方法?

对iPhone应用程序的电池使用情况进行基准测试的最佳方法是什么?

我正在开发一款使用位置服务并在后台运行的iPhone应用程序.它看起来像电池的消耗与它运行快显著,但是当我尝试做一些结构化的测试,结果是不确定的.

我正在采取的步骤是:

  1. 将电池充电至100%
  2. 删除SIM卡(我的另一部手机需要它)
  3. 关闭推送邮件/日历/联系人
  4. 重新安装该应用程序
  5. 重启手机
  6. 启动应用程序
  7. 返回SpringBoard(应用程序选择屏幕)

然后我等了大约15个小时,看看电池是什么.到目前为止的结果是:

  • 应用未运行 - 剩余69%
  • 应用程序运行 - 剩下65%
  • 应用程序运行 - 剩余83%

benchmarking power-management ios ios5

3
推荐指数
1
解决办法
7883
查看次数

与HAML相比,SLIM的速度有多快?

我试图说服我的团队成员使用SLIM而不是HAML,因为我更喜欢SLIM的语法.有人告诉我,如果它比HAML快得多,我会更改为SLIM,因为我在这里这里阅读,但我不知道最近这些基准是多少,所以我想知道是否有人有一些真实的生活经验这个话题?

我也不确定哪个基准测试(编译,倾斜编译,缓存,未缓存)确实意味着最多,因为我不知道当Rails应用程序处于生产模式时(其中速度是最需要的).

非常感谢您对此主题的更多信息!

performance benchmarking haml ruby-on-rails slim-lang

3
推荐指数
1
解决办法
1964
查看次数

使用F#的选项类型基准

我需要在繁重的数值模拟中使用Some/None选项.以下微基准测试给了我Fast = 485Slow = 5890.

我不喜欢null,即使我喜欢它们,我也不能使用null因为The type 'float' does not have 'null' as a proper value.

理想情况下,会有一个编译器选项将Some/None编译为value/null,因此不会有运行时惩罚.那可能吗?或者我如何使Some/None有效?

let s = System.Diagnostics.Stopwatch()

s.Start()
for h in 0 .. 1000 do
  Array.init 100000 (fun i -> (float i + 1.)) |> ignore
printfn "Fast = %d" s.ElapsedMilliseconds

s.Restart()
for h in 0 .. 1000 do
  Array.init 100000 (fun i -> Some (float i + 1.)) |> ignore
printfn "Slow = %d" s.ElapsedMilliseconds
Run Code Online (Sandbox Code Playgroud)

null benchmarking f# option

3
推荐指数
1
解决办法
191
查看次数

Ruby中的基准测试方法

我试图像这样对一组计算进行基准测试 -

def benchmark(func, index, array)
    start = Time.now
    func(index, array)
    start - Time.now #returns time taken to perform func
end

def func1(index, array)
    #perform computations based on index and array
end 

def func2(index, array)
    #more computations....
end

benchmark(func1, index1, array1)
benchmark(func1, index2, array2)
Run Code Online (Sandbox Code Playgroud)

现在我想知道如何实现这一目标.我试过这个例子,但是吐了出来

`func1': wrong number of arguments (0 for 2) (ArgumentError)
Run Code Online (Sandbox Code Playgroud)

如果我尝试 -

benchmark(func1(index1, array1), index1, array1)
Run Code Online (Sandbox Code Playgroud)

吐出来......

undefined method `func' for main:Object (NoMethodError)
Run Code Online (Sandbox Code Playgroud)

我看到了一个类似的问题,但它是为了python.使用参数将函数传递给Python中的另一个函数? 有人可以帮忙吗?谢谢.

ruby benchmarking

3
推荐指数
1
解决办法
3414
查看次数

如果最耗时的部分是posix.waitpid,如何提高代码性能?

我使用cprofile来分析python程序。最耗时的部分原来是posix.waitpid。我该怎么做才能提高代码性能?请参阅以下屏幕截图,了解我的cprofile结果的一行

在此处输入图片说明

python benchmarking cprofile

3
推荐指数
1
解决办法
1437
查看次数

GHC如何知道如何缓存一个函数而不是其他函数?

我读你学习哈斯克尔(到目前为止爱它),并教导如何实现elem来讲foldl,使用Lambda.lambda解决方案对我来说似乎有点难看所以我试着考虑其他实现(全部使用foldl):

import qualified Data.Set as Set
import qualified Data.List as List

-- LYAH implementation
elem1 :: (Eq a) => a -> [a] -> Bool
y `elem1` ys = 
    foldl (\acc x -> if x == y then True else acc) False ys

-- When I thought about stripping duplicates from a list
-- the first thing that came to my mind was the mathematical set
elem2 :: (Eq a) => a -> [a] -> …
Run Code Online (Sandbox Code Playgroud)

benchmarking haskell memoization

3
推荐指数
2
解决办法
93
查看次数