blob: 50ff1dc066d52230f9d3a8a1e95f504b26e86fa8 [file] [log] [blame]
/* Copyright (c) 2016 Google Inc.
* Barret Rhoden <brho@cs.berkeley.edu>
* See LICENSE for details.
*
* Helper functions to query information about the system. */
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <assert.h>
#include <unistd.h>
#include <parlib/sysinfo.h>
#include <ros/arch/arch.h>
int get_num_pcores(void)
{
int fd;
int ret;
char buf[128];
fd = open("#vars/num_cores!dw", O_RDONLY);
if (fd < 0)
return MAX_NUM_CORES;
if (read(fd, buf, sizeof(buf)) < 0) {
/* major bug */
perror("#vars read");
exit(-1);
}
ret = strtol(buf, 0, 0);
close(fd);
return ret;
}