|
libspe2 0.9a
|
#include "spebase.h"

Go to the source code of this file.
Defines | |
| #define | THREADS_PER_BE 2 |
Functions | |
| int | _base_spe_count_physical_cpus (int cpu_node) |
| int | _base_spe_count_physical_spes (int cpu_node) |
| int | _base_spe_count_usable_spes (int cpu_node) |
| #define THREADS_PER_BE 2 |
Definition at line 25 of file info.h.
Referenced by _base_spe_count_physical_cpus().
| int _base_spe_count_physical_cpus | ( | int | cpu_node | ) |
Definition at line 30 of file info.c.
References DEBUG_PRINTF, and THREADS_PER_BE.
Referenced by _base_spe_count_physical_spes(), and _base_spe_cpu_info_get().
{
const char *buff = "/sys/devices/system/cpu";
DIR *dirp;
int ret = -2;
struct dirent *dptr;
DEBUG_PRINTF ("spe_count_physical_cpus()\n");
// make sure, cpu_node is in the correct range
if (cpu_node != -1) {
errno = EINVAL;
return -1;
}
// Count number of CPUs in /sys/devices/system/cpu
if((dirp=opendir(buff))==NULL) {
fprintf(stderr,"Error opening %s ",buff);
perror("dirlist");
errno = EINVAL;
return -1;
}
while((dptr=readdir(dirp))) {
ret++;
}
closedir(dirp);
return ret/THREADS_PER_BE;
}
| int _base_spe_count_physical_spes | ( | int | cpu_node | ) |
Definition at line 71 of file info.c.
References _base_spe_count_physical_cpus(), and DEBUG_PRINTF.
Referenced by _base_spe_count_usable_spes(), and _base_spe_cpu_info_get().
{
const char *buff = "/sys/devices/system/spu";
DIR *dirp;
int ret = -2;
struct dirent *dptr;
int no_of_bes;
DEBUG_PRINTF ("spe_count_physical_spes()\n");
// make sure, cpu_node is in the correct range
no_of_bes = _base_spe_count_physical_cpus(-1);
if (cpu_node < -1 || cpu_node >= no_of_bes ) {
errno = EINVAL;
return -1;
}
// Count number of SPUs in /sys/devices/system/spu
if((dirp=opendir(buff))==NULL) {
fprintf(stderr,"Error opening %s ",buff);
perror("dirlist");
errno = EINVAL;
return -1;
}
while((dptr=readdir(dirp))) {
ret++;
}
closedir(dirp);
if(cpu_node != -1) ret /= no_of_bes; // FIXME
return ret;
}

| int _base_spe_count_usable_spes | ( | int | cpu_node | ) |
Definition at line 62 of file info.c.
References _base_spe_count_physical_spes().
Referenced by _base_spe_cpu_info_get().
{
return _base_spe_count_physical_spes(cpu_node); // FIXME
}

1.7.4