Python multiprocessing.cpu_count () gibt bei Nvidia Jetson TK1 mit 4 Kernen '1' zurück

Kann mir jemand sagen, warum Pythonmultiprocessing.cpu_count() function würde @ zurückgeb1 wann auf einem Jetson TK1 mit vier ARMv7-Prozessoren aufgerufen?

>>> import multiprocessing
>>> multiprocessing.cpu_count()
1

Das Jetson TK1-Board ist praktisch sofort einsatzbereit, und niemand hat sich mit CPU-Sets herumgeschlagen. Aus derselben Python-Shell heraus kann ich den Inhalt von @ ausgebe/proc/self/status und es sagt mir, dass der Prozess Zugriff auf alle vier Kerne haben sollte:

>>> print open('/proc/self/status').read()
----- (snip) -----
Cpus_allowed:   f
Cpus_allowed_list:      0-3
----- (snip) -----

Was sonst könnte dieses Verhalten von @ verursachcpu_count()?

Bearbeiten

Um die Hypothese von Klaus zu testen, habe ich den folgenden Code verwendet, um ein sehr einfaches Experiment durchzuführen:

import multiprocessing

def f(x):
    n = 0
    for i in xrange(10000):
        n = max(n, multiprocessing.cpu_count())
    return n

p = multiprocessing.Pool(5)
for i in range(10):
    print p.map(f, [1,2,3,4,5])

Welche die folgende Ausgabe erzeugt:

[3, 3, 3, 3, 1]
[4, 3, 3, 3, 3]
[4, 3, 3, 3, 3]
[3, 3, 4, 3, 3]
[4, 3, 3, 3, 3]
[3, 3, 4, 3, 3]
[4, 3, 3, 3, 3]
[3, 3, 4, 3, 3]
[3, 3, 3, 4, 3]
[4, 3, 3, 3, 3]

Running nur eine einzige Iteration vonp.map(f, [1,2,3,4,5]) produziert normalerweise[1, 1, 1, 1, 1], obwohl gelegentlich ein2 wird als eines der Listenelemente angezeigt.