Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Language agnostic 比较不同语言中不同任务的速度_Language Agnostic - Fatal编程技术网

Language agnostic 比较不同语言中不同任务的速度

Language agnostic 比较不同语言中不同任务的速度,language-agnostic,Language Agnostic,如果我想测试完成某些任务所需的速度,我用哪种语言进行测试有关系吗?我们可以认为这是程序员可能想要执行的任何工作。简单的工作,如排序,或涉及文件签名和验证的更复杂的工作 考虑到我们都知道某些语言会比其他语言运行得更快,这意味着任务将依赖于这些语言及其编译器/运行时的优化方式。但这些显然都是不同的 那么,最好依赖于一种不太依赖抽象的语言,比如C语言,还是可以用更高级的语言测试作业和任务,并且依赖于这样一个事实:它们的实现足够好,不必担心任何可能的低效?我希望我的问题很清楚。你在考试中使用哪种真实语言

如果我想测试完成某些任务所需的速度,我用哪种语言进行测试有关系吗?我们可以认为这是程序员可能想要执行的任何工作。简单的工作,如排序,或涉及文件签名和验证的更复杂的工作

考虑到我们都知道某些语言会比其他语言运行得更快,这意味着任务将依赖于这些语言及其编译器/运行时的优化方式。但这些显然都是不同的


那么,最好依赖于一种不太依赖抽象的语言,比如C语言,还是可以用更高级的语言测试作业和任务,并且依赖于这样一个事实:它们的实现足够好,不必担心任何可能的低效?我希望我的问题很清楚。

你在考试中使用哪种真实语言并不重要。。。如果测试设计正确。语言总是有开销的,但操作系统、线程调度程序、IO、ram或电的速度总是有开销的,这取决于当前的温度等


但是,要比较您不想测量执行一个赋值语句所需的纳秒数的任何内容。相反,您需要测量执行数十亿条赋值语句所需的时间。那么所有提到的开销都可以忽略不计

我认为可以肯定地说,语言级别越高,开销就越大,因此执行速度就越慢。所以,与VB相比,汇编几乎可以立即运行(例如)。请原谅,这不是我所说的问题。我的意思是,这是对任何语言中不同的工作方式(即排序方法1和排序方法2)的比较,可能会在所有语言中产生类似的结果,还是可能存在语言差异(我不包括其他类型的语言,如函数式语言)这取决于你想比较什么。如果要比较不同任务(算法)的速度,请对所有任务使用相同的语言。如果要比较不同语言(实现)的速度,请使用相同的任务。如果你试图用不同的语言来比较不同的任务,你有太多的变量,不能真正得出任何结论。好的。我会考虑诸如散列或签名之类的东西作为算法,因为它们是由类似于算法的步骤组成的吗?那么,我将依靠这样一个事实:无论是谁实现了上述算法,都是以尽可能最好的方式实现的?@user3465120:如果你想获得不同语言如何处理同一事物的基准,那么你可以运行一个可以跨一系列不同语言进行的测试。比如说,编写一个例程来计算前2000个素数。决定最有效的方法,并在Javascript、PHP、C#等中运行它。看看哪一个运行得最快。只是一个建议。