问题列表 - 第25627页

是否有符合这些特定标准的PHP基准测试?

底部的实际问题......首先是一些背景信息:

我正在研究一种将PHP代码转换为Scala的工具.作为最后的尝试之一,我需要一个非常好(呃,有点偏见)的基准.

通过愚蠢的运气,我的第一次基准尝试是使用了一些广泛使用bcmath的代码,遗憾的是,它在Java中慢了1000倍,使得Scala代码总体上比原始PHP慢22倍.

所以我正在寻找一些具有以下特征的有意义的PHP基准测试:

  • PHP源需要在一个文件中.
  • 它应该解决现实世界或科学问题.没有愚蠢的循环空方法等.
  • 我需要它设置简单 - 没有数据库,难以找到输入文件等.
  • 它需要是单线程的(不幸的是,CLBG中的大多数基准测试现在都是多线程的)
  • 简单的文本输入和输出首选.
  • 它不应该使用Java中较慢的功能(BigInteger,三角函数等).
  • 它不应该使用开放的或动态的PHP函数(例如,没有"eval"或"variable vars").
  • 它不应该过度依赖内置库,例如MD5,crypt等 - 因为我想对PHP-to-Scala转换的质量进行基准测试,而不是库实现的质量.
  • 它不应该受I/O限制.需要CPU限制内存的算法.
  • 基本上,密集的OO操作,整数和字符串操作,递归等都会很棒.

我已经检查了两个流行的来源,但没有任何符合标准:

  • CLBG:http://shootout.alioth.debian.org/ - 一切都是多线程的 - 没有好处.
  • PHP Bench:http://www.phpbench.com/ - 微基准,没有真实世界 - 没有好处
  • PHP.NET RFC:更好的基准:http://wiki.php.net/rfc/better_benchmarks - 这里有一些很好的信息,但最终没有找到.

所以,不用多说,实际问题:

是否存在符合上述标准的现有开源代码体系作为性能基准?

谢谢

php performance scala

10
推荐指数
1
解决办法
309
查看次数

是否使用kill发送到父线程的信号保证在下一个语句之前处理?

好的,所以如果我在Linux上运行子线程(如果重要的话使用pthreads),我运行以下命令

kill(getpid(), someSignal);
Run Code Online (Sandbox Code Playgroud)

它会将给定的信号发送给当前线程的父节点.

我的问题:在kill()运行后面的语句之前,是否保证父母会立即获得CPU并处理信号(如果是SIGKILL则杀死应用程序,或者如果是其他信号则执行其他任何操作)?或者是否可能 - 甚至可能 - kill()在父线程处理信号之前,任何后续命令都会运行?

c c++ linux multithreading pthreads

0
推荐指数
1
解决办法
1539
查看次数

返回结构指针

假设我有以下结构和函数返回一个指针:

typedef struct {
  int num;
  void *nums;
  int size;
} Mystruct;

Mystruct *mystruct(int num, int size)
{ 
   //Is the following correct? Is there a more efficient way?
   Mystruct mystruct;
   mystruct.num = num;
   mystruct.size = size;
   mystruct.nums = malloc(num*sizeof(size));
   Mystruct *my;
   *my = mystruct;
   return my;
}
Run Code Online (Sandbox Code Playgroud)

我想使用上面的函数定义任何Mystruct指针.我应该声明一个Mystruct变量,定义Mystruct的属性,指定它的指针,并返回指针或通过指针立即定义mystruct属性的属性?

c struct pointers

22
推荐指数
3
解决办法
7万
查看次数

solr范围查询错误

http:// localhost:8983/solr/select?wt = json&q = lat:[35%20to%2038]导致

org.apache.lucene.queryParser.ParseException: Cannot parse 'lat:[35 to 38]': Encountered " <RANGEIN_GOOP> "38 "" at line 1, column 11.
Was expecting:
    "]" 
Run Code Online (Sandbox Code Playgroud)

这是一个非常基本的范围查询,这个错误将阻止我们将SOLR用于我们的项目

solr

6
推荐指数
1
解决办法
4459
查看次数

在Gregorian Calendar中查询java中的一小时

我正在使用公历来使用公历的set函数为应用程序设置特定的日期和时间.当我使用getTime()方法时,它给了我正确的输出,但是当我尝试访问Hour_Of_Day和Minute时,它给出了错误的数字.

    Calendar time = new GregorianCalendar();
    time.set(2010, Calendar.JANUARY, 1, 7, 20,0);       
    hour = time.HOUR_OF_DAY;
    minute = time.MINUTE; 
Run Code Online (Sandbox Code Playgroud)

小时的输出为11,分钟的值为12.
有关如何解决此问题的建议吗?谢谢

java datetime hour minute gregorian-calendar

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

需要将string/char转换为ascii值

我需要将char转换为十六进制值.请参阅Ascii表,但我有几个例子如下:

  • char 1 = 31 2 = 32 3 = 33 4 = 34 5 = 35 A = 41 a = 61等

因此string str ="12345"; 需要获得转换后的str ="3132333435"

c# asp.net visual-studio winforms

6
推荐指数
1
解决办法
4万
查看次数

每分钟Java循环

我想在Java中编写一个第一个启动的循环,如下所示:

while (!x){
    //wait one minute or two

    //execute code
}
Run Code Online (Sandbox Code Playgroud)

我想这样做,以便它不会耗尽系统资源.在代码中实际发生的是它进入一个网站并检查是否已完成某些事情,如果没有完成,它应该等待一分钟直到它再次检查,并且当它完成时它只是继续.无论如何他们在java中这样做?

java time loops

26
推荐指数
4
解决办法
12万
查看次数

如何修改/合并Jinja2词典?

我有一个Jinja2字典,我想要一个修改它的表达式 - 通过改变它的内容,或者与另一个字典合并.

>>> import jinja2
>>> e = jinja2.Environment()
Run Code Online (Sandbox Code Playgroud)

修改字典:失败.

>>> e.from_string("{{ x[4]=5 }}").render({'x':{1:2,2:3}})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "jinja2/environment.py", line 743, in from_string
    return cls.from_code(self, self.compile(source), globals, None)
  File "jinja2/environment.py", line 469, in compile
    self.handle_exception(exc_info, source_hint=source)
  File "<unknown>", line 1, in template
jinja2.exceptions.TemplateSyntaxError: expected token
                                            'end of print statement', got '='
Run Code Online (Sandbox Code Playgroud)

两阶段更新:打印多余的"无".

>>> e.from_string("{{ x.update({4:5}) }} {{ x }}").render({'x':{1:2,2:3}})
u'None {1: 2, 2: 3, 4: 5}'
>>> e.from_string("{{ dict(x.items()+ {3:4}.items()) }}").render({'x':{1:2,2:3}}) …
Run Code Online (Sandbox Code Playgroud)

merge dictionary jinja2

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

O(log n)算法用于找到具有排序i的元素与预排序列表的并集

给定两个排序列表,每个包含n个实数,是否有一个O(log n)时间算法来计算两个列表的并集中排名i的元素(其中i对应于递增顺序的索引),假设元素为这两个清单是截然不同的?

编辑:@BEN:这就是我一直在做的事情,但我仍然没有得到它.

我有一个例子;

列表A:1,3,5,7列表B:2,4,6,8

找到等级(i)= 4.

第一步:i/2 = 2; 列表A现在包含的是A:1,3列表B现在包含的是B:2,4

         compare A[i] to B[i] i.e 

                 A[i] is less;

                 So the lists now become :

                   A: 3 
                   B: 2,4
Run Code Online (Sandbox Code Playgroud)

第二步:i/2 = 1

         List A now contains A:3
         List B now contains B:2 

         NoW I HAVE LOST THE VALUE 4 which is actually the result ...
Run Code Online (Sandbox Code Playgroud)

我知道我错过了一些东西,但即使在接近一天的思考之后,我也无法想到这一点......

c++ algorithm

7
推荐指数
1
解决办法
2228
查看次数

为什么正则表达式的"非捕获"组不起作用

在下面的代码片段中,匹配结果中应忽略非捕获组"(?:aaa)",因此结果应该"_bbb"只是.

但是,我得到"aaa_bbb"了匹配的结果; 只有当我指定组(2)时才会显示"_bbb".

>>> import re
>>> s = "aaa_bbb"
>>> print(re.match(r"(?:aaa)(_bbb)", s).group())

aaa_bbb
Run Code Online (Sandbox Code Playgroud)

python regex

44
推荐指数
2
解决办法
4万
查看次数