使用 Erlang 进行测试。
我可以在具有单核 erlang 程序的计算机上测试四核或更多核吗?
当不使用任何参数启动时,erlang smp 假定为 2:2,如下所示:
Erlang R14A (erts-5.8) [smp: 2:2] [rq: 2] [async-threads: 0]
我是使用 Pentium 4,这是否意味着我有两个核心?
Can I test on a computer with a single core erlang programs for four or more cores?
When starting without using any parameter erlang smp assumes 2:2 like this:
Erlang R14A (erts-5.8) [smp: 2:2] [rq: 2] [async-threads: 0]
I am using a Pentium 4, does that mean I have two cores?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
默认情况下,每个可用核心启动一个调度程序,并使用多个运行队列(每个调度程序一个;自 R13 起可用)。在您的 shell 中,
[smp 2:2]
表示您有两个调度程序在两个内核上运行;[rq: 2]
表示您正在使用两个运行队列。如果要更改调度程序的数量,请从
erl +S 4
开始(例如四个调度程序)。确保如果您在单核系统上编译 erlang,请在配置脚本中使用
--enable-smp-support
启用 smp。否则您可能无法使用多个调度程序。By default one scheduler is started per available core, and multi run-queues are used (one for each scheduler; available since R13). In your shell
[smp 2:2]
means that you have two schedulers running on two cores;[rq: 2]
means you are using two run queues.If you want to change the number of schedulers, start with
erl +S 4
for four schedulers for example.Make sure that if you compile erlang on a single-core system, you enable smp in the configure script using
--enable-smp-support
. Otherwise you might not be able to use multiple schedulers.