Як ви можете в командному рядку сказати, скільки ядер на машині, коли ви працюєте з Mac OS X? У Linux я використовую:
x=$(awk '/^processor/ {++n} END {print n+1}' /proc/cpuinfo)
Це не ідеально, але це близько. Це призначене для годування make
, тому це дає результат на 1 вищий від фактичного. І я знаю, що наведений вище код може бути записаний щільніше в Perl або може бути написаний за допомогою grep, wc та cut, але я вирішив, що вищезгадане є хорошим компромісом між стислістю та читальністю.
ДУЖЕ ПОСТАВЛЕНО редагування: Просто для уточнення: я запитую, скільки доступних логічних ядер, тому що це відповідає кількості одночасних завдань, які я хочу make
створити. Відповідь jkp, уточнена Крісом Ллойдом, була саме тим , що мені було потрібно. YMMV.
nproc
команду.
grep ^processor /proc/cpuinfo | wc -l