标签: benchmarking

哪种语言最容易学?

这是一个主观问题,只是为了得到一般印象.由于Java是目前最流行的编程语言,因此它被用作基准.

让我们说我必须花费大量的时间/精力来学习/掌握Java.通过什么因素我应该乘以T来获得学习/掌握其他语言所需的时间/精力,比如C,C++,C#,python,perl,Lisp,Haskel,PHP?

我的猜测是:

0.5T PHP
0.9T python
1.1T C#
2.0T C++
3.0T C
Run Code Online (Sandbox Code Playgroud)

你怎么看?

java time benchmarking programming-languages

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

具有ActiveRecord对象的Ruby减运算符

你能解释一下,Ruby的减号运算符是如何工作的?不只是像5-2这样的小事.有点复杂 - 我们有2个带有ActiveRecord对象的数组:数组A = User.where(...),数组B = User.where(...),我想做A - B,它是如何工作的?它只是比较对象ID,或所有属性,还是其他?

ruby benchmarking activerecord ruby-on-rails

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

Hazelcast 在单节点地图上比 Ignite 慢得多

我在 Hazelcast 上运行了一个简单的基准测试(使用JMH),将它与Apache Ignite. 这适用于单节点部署。

缓存配置保持默认,

final Config config = new Config();
return Hazelcast.newHazelcastInstance(config);
Run Code Online (Sandbox Code Playgroud)

我用putget地图,

private IMap<Long, Customer> normalCache = hazelcast.getMap( CacheName.NORMAL.getCacheName());
public void saveToCache(Customer customer) {
    normalCache.put(customer.getId(), customer);
}
Run Code Online (Sandbox Code Playgroud)

从结果来看,Ignite 似乎比 Hazelcast 快 3-4 倍。
我原以为差异会小得多。
对于 Ignite 和 Hazelcast,我都没有使用任何其他优化(靠近缓存等),只是使用默认配置(结果以 ops/sec、吞吐量为单位)。

在此处输入图片说明

这是预期的性能差异还是结果错误?

benchmarking hazelcast ignite

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

在检查两个字符串是否不区分大小写相等时,变换视图而不是投影仪会降低 C 风格方法的性能

太长了;博士

\n

在检查两个字符串是否不区分大小写相等时,为什么这段代码

\n
bool rangeV3WithTransformViews(std::string_view str1, std::string_view str2) {\n    return equal(str1 | transform(tolowercase),\n                 str2 | transform(tolowercase));\n}\n
Run Code Online (Sandbox Code Playgroud)\n

比这个慢很多吗?

\n
bool rangeV3WithProj(std::string_view str1, std::string_view str2) {\n    return equal(str1, str2, std::equal_to{}, tolowercase, tolowercase);\n}\n
Run Code Online (Sandbox Code Playgroud)\n

从后面的代码中,GCC 13.2-O3设法生成与低级 C 风格解决方案相同的汇编代码:

\n
#define to_lower_ascii(c) (((c) >= \'A\' && (c) <= \'Z\') ? (c) + 32 : (c))\n\nint cstyle(const char* str1, const char* str2) {\n    while (*str1 != \'\\0\' && *str2 != \'\\0\' && to_lower_ascii(*str1) == to_lower_ascii(*str2)) {\n        str1++;\n        str2++;\n    }\n    return to_lower_ascii(*str1) …
Run Code Online (Sandbox Code Playgroud)

c++ performance benchmarking range-v3 c++20

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