Ich führe ein Programm, das numerische ODE-Integration in Julia durchführt. Ich verwende Windows 10 (64bit) mit Intel Core i7-4710MQ @ 2.50Ghz (8 logische Prozessoren).Julia verwendet nur 20-30% meiner CPU. Was soll ich machen?
Ich bemerkte, dass, wenn mein Code auf Julia lief, nur maximal 30% der CPU verwendet wurden. Ich ging in die parallelization Dokumentation, begann Julia mit: C:\Users\*****\AppData\Local\Julia-0.4.5\bin\julia.exe -p 8
und erwartet, Verbesserungen zu sehen. Ich habe sie jedoch nicht gesehen.
Deshalb meine Frage ist die folgende: Gibt es eine besondere Art, die ich meinen Code schreiben muss, damit es CPU effizienter verwendet? Ist das vielleicht eine Einschränkung meines Betriebssystems (Windows 10)?
Ich übermittle meinen Code in der Julia-Konsole mit dem Befehl: include("C:\\Users\\****\\AppData\\Local\\Julia-0.4.5\\13. Fast Filesaving Format.jl")
. In diesem Code verwende ich einige zusätzliche Pakete mit: using ODE; using PyPlot; using JLD
.
Ich messen die CPU-Auslastung mit Windows "Task-Manager".
Sie müssen Ihren Code manuell für die Parallelverarbeitung anpassen. Hier ist die Referenz für die Parallelverarbeitung http://docs.julaulang.org/en/release-0.4/manual/parallel-computing/. Ich bin kein Experte, aber Sie können in der Regel berechnen geladene Schleifen parallel mit @ @ parallel Makro und es gibt "pmap" für Gleichgewichts für Karte in Parallellage. –
Ja, mein Beispiel war nur ein vergeblicher Versuch zu sehen, ob es eine "Abkürzung" für die Erhöhung der CPU-Nutzung gibt. Ich werde irgendwann in der Zukunft meinen Code parallelisieren müssen. Vielen Dank. –
Sie können auch diese zwei SO Beiträge [hier] (http://stackoverflow.com/questions/37287020/how-and-when-to-use-async-and-sync-in-julia/37287021#37287021) und [hier] (http://stackoverflow.com/questions/37846838/what-exactly-is-the-difference-between-parallel-and-pmap/37849587#37849587) für einige zusätzliche Anleitung zur Parallelität in Julia –