Summary:
It eventually tries to read from /sys/devices which is not portable.
Let's just fall back to sysconf/CacheLocality::uniform.
This fixes a runtime crash on OSX, but CYGWIN/BSD were probably also
affected.
Closes #80
@override-unit-failures
Test Plan: author tested, contbuild, flib
Reviewed By: joelm@fb.com
FB internal diff:
D1498567
/// Returns the best real CacheLocality information available
static CacheLocality getSystemLocalityInfo() {
+#ifdef __linux__
try {
return CacheLocality::readFromSysfs();
} catch (...) {
// keep trying
}
+#endif
long numCpus = sysconf(_SC_NPROCESSORS_CONF);
if (numCpus <= 0) {