OS X - CPU-Kerne zuweisen

OS X - CPU-Kerne zuweisen

Ich bin ziemlich neu bei OS X, unter Windows konnte ich laufenden Programmen Kerne zuweisen.

Ich habe ein bisschen gesucht, kann aber scheinbar nichts darüber finden.

Wäre für alles dankbar, entweder Anweisungen hier oder Links zu Artikeln zu meinem Problem.

Antwort1

Auf Benutzerebene gibt es keine Prozessoraffinitätstools. Überprüfen Sie diese Frage.https://apple.stackexchange.com/questions/166870/processor-affinity-on-mac

Erlauben Sie mir einen kleinen Abschweif. Möglicherweise gibt es einen Workaround, mit dem Sie Ihre Leistungsanforderungen erfüllen können.

1) Das ist nur eine Vermutung. Angenommen, Sie möchten einer Videoverarbeitungs-App einen oder mehrere Kerne zuweisen, weil Sie eine ununterbrochene (minimale) Verarbeitung wünschen, während Sie Ihren Computer weiterhin für andere Aufgaben verwenden. Mit dem Bash-Dienstprogramm „nice“ können Sie eine Anwendung mit einer höheren Priorität als andere Anwendungen ausführen. Ohne dass ich mich durch die Suche nach den Multicore-Planungsalgorithmen wühlen muss, die das Betriebssystem verwendet, kann dies die Leistung Ihrer App verbessern oder Ihnen nicht die gewünschte Verarbeitungsbalance bieten. Es werden zwar immer noch alle n Kerne gemeinsam genutzt, aber es wird mehr Zeit als andere Prozesse erhalten.

2) Verwenden Sie die API, um eine „Shell“-App zu erstellen, die die Affinity-API verwendet. Sie müssen dazu lediglich einen Aufruf Ihrer App verzweigen, da gemäß dieser API-Dokumentation alle verzweigten untergeordneten Elemente der Shell-App ihren Affinity-Namespace gemeinsam nutzen. Wenn Sie also Prozessor 1 verwenden, wird jede von der Shell aufgerufene App auf Prozessor 1 ausgeführt.

1) nett -https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/nice.1.html

2) Affinity-API -https://developer.apple.com/library/mac/releasenotes/Performance/RN-AffinityAPI/index.html#//apple_ref/doc/uid/TP40006635

verwandte Informationen