我在spike和火箭芯片之上运行Linux。为了评估一个程序,我试图获得在spike和火箭芯片中配置的核心数量。我已经尝试获取信息抛出proc / cpuinfo现在成功了。我还写了一个小程序:
#include <stdio.h>
#include <unistd.h>
int main()
{
int numofcores = sysconf(_SC_NPROCESSORS_ONLN);
printf("Core(s) : %d\n", numofcores);
return 0;
}
这个程序的问题是它返回1,这不是正确的值,因为我配置了2个核心。是否有另一种可能获得核心数量?
答案 0 :(得分:3)
你确定linux可以看到两个核心吗?您可以使用以下内容进行检查:cat /proc/cpuinfo
。要支持多核,在构建riscv-linux时需要打开SMP支持。