Seite 1 von 2
DualCore 2 Kerne ProzessorUnterstützung für PB?
Verfasst: 06.05.2006 22:13
von Xaby
Mich würde mal interessieren, in wie weit PureBasic mit DualCore Systemen optimiert läuft. Ich habe noch kein MehrKern-System, überlege aber, ob ich mir eins zu lege und bald werden fast nur noch welche hergestellt.
Vielleicht gibt es dir Antwort auf meine Frage ja schon, aber ich hab's nicht in der Suche gefunden.
We würde ein MehrKern-Programm in Pure aussehen, dass die zwei Kerne optimal ausnutzt?
Verfasst: 06.05.2006 22:42
von MVXA
Garnicht. Es ist deine Aufgabe den Code für mehrere Kerne zu optimieren.
Verfasst: 06.05.2006 23:10
von ts-soft
Ich denke mal, die Kerne werden vom OS verwaltet und nur sehr
systemnahe Programme kommen da ran, also für PB keine unmittelbaren
Auswirkungen.
Verfasst: 06.05.2006 23:26
von 125
-> CreateThread
Mehr sag ich nicht
mfg
125
Verfasst: 06.05.2006 23:37
von MVXA
Solltest du aber. In der Regel werden die Threads nur auf dem Kern
gestartet, wo auch der Hauptprozess liegt.
//Edit:
http://msdn.microsoft.com/library/en-us ... frame=true
villt kann das helfen... APIs bekommen in letzter Zeit auch immer
bescheuerte Namen...
//edit die 2.
http://msdn.microsoft.com/library/defau ... tymask.asp
Das klingt auch noch recht interessant. Wieso findet man sowas nicht,
wenn man sowas für einen selbst sucht...
Verfasst: 09.05.2006 01:09
von stbi
MVXA hat geschrieben:Solltest du aber. In der Regel werden die Threads nur auf dem Kern gestartet, wo auch der Hauptprozess liegt.

Diese Regel gilt nur für SingleCore-CPUs ...
Die von Dir genannten API-Calls können Prozesse bzw. Threads tatsächlich auf bestimmte CPUs (Kerne) beschränken, aber
Bill Gates sagt explizit dazu: "In most cases, it is better to let the system select an available processor."
Multi-Threading heißt also das Zauberwort, aber das hat 125 ja bereits geschrieben.
Verfasst: 09.05.2006 13:19
von Zaphod
Multithreading ist allerdings trotzdem etwas, bei dem man sehr vorsichtig sein sollte. Da kann man ein Programm nämlich auch herrvorragend langsamer machen oder dafür sorgen, dass es falsche ergebnisse liefert wenn man nicht weiß was man tut.
Verfasst: 09.05.2006 14:39
von MVXA
Aufgrund eines fehlenden Multikern Prozessors konnte ich dieses
Verhalten leider nicht testen.
Verfasst: 09.05.2006 17:23
von benpicco
Etwas sicherer (wen vllt auch langsamer) als mit CreateThread zu arbeiten, sollte ein Client und ein Server sein, beides verschiedene Exen, der Server berechnet z.b. Die Umgebung, KI, wasweisich und der Client die Grafik, Nutzereingaben, Webfindung, ect. und übermittelt seine Ergebnisse an den Server. (So gelöst in Paraworld)
Glaubt aber nicht, das ich das mal getestet habe, ich hab ja nichtmal HT...
Verfasst: 09.05.2006 18:37
von Zaphod
nicht wirklich, das verlagert nur die probleme an andere stelle.