Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Nur halbe CPU-Auslastung. Warum wird nicht alles genutzt?

Frage Entwicklung Java

Mitglied: baldrianforte

baldrianforte (Level 1) - Jetzt verbinden

06.02.2010, aktualisiert 19:36 Uhr, 11996 Aufrufe, 14 Kommentare

Hallo.

Ich bin Student und schreibe in Java meine Programme.
Es geht experimentell darum, in einem riesigen Array das größte Element zu suchen. Rekursiv.

Wie dem auch sei, ist ja auch egal.

Nach etwa 5 Sekunden macht sich der Lüfter bemerkbar. Gucke ich in den Leistungsmonitor von Vista,
wird mir angezeigt, dass die CPU nur zu 50% ausgelastet ist.

Ich habe ein DualCore 2 Duo T8300 2,4GHz pro Kern.

Wie kriege ich meinen Rechner dazu, dass der Prozessor zu 100% ausgelastet wird, wenn ich es so möchte?
Mitglied: affabanana
06.02.2010 um 19:55 Uhr
Hallo Du

Wenn Du student bist solltest Du das ja eigentlich Wissen

Dein Java Programm kann nur einen Kern auslasten.

2 =100%
1 = 50%

Gruass affabanana

PS: Studenten wissen woll immer weniger woher man Informationen holt


http://www.google.com
Bitte warten ..
Mitglied: LordGurke
06.02.2010 um 20:30 Uhr
Und um beide Kerne auszulasten, müsstest du diese Aufgabe zumindest auf zwei verschiedene Threads aufteilen. Das reicht meines Wissens dazu, um beide Kerne zu nutzen.
Bitte warten ..
Mitglied: baldrianforte
06.02.2010 um 20:33 Uhr
Mir fallen zwei Möglichkeiten ein:
1.) Vista reserviert sich die Kapazität.
2.) Es wird nur einer von zwei Kernen beansprucht.

oder es liegt an etwas anderem.

Auch unter Java muss möglich sein, die CPU voll zu beanspruchen.
Evtl. liegt es an einer Systemeinstellung unter Vista oder es fehlt was in meinem Programm.
Bitte warten ..
Mitglied: baldrianforte
06.02.2010 um 20:35 Uhr
Danke, maxi89. Das heißt, ich muss zwei Aufgaben parallel laufen lassen?
Hm, ich könnte das Array halbieren.
Aber wie lasse ich zwei Methoden gleichzeitig laufen??
Bitte warten ..
Mitglied: LordGurke
06.02.2010 um 20:38 Uhr
Sorry, bei Java bin ich lediglich bis zu dem Stand vorgedrungen, dass ich eine Datei auf- und wieder zumachen kann. Von Threading habe ich leider nichtmal den Hauch einer Ahnung, wie und ob das unter Java geht
Bitte warten ..
Mitglied: LordGurke
06.02.2010 um 20:41 Uhr
Punkt zwei stimmt.
Wenn du im Tassenmanager im Reiter "Leistung" nur einen Kurvenverlauf siehst, musst du möglicherweise erst noch unter Ansicht -> CPU-Verlauf die Option "Ein Diagramm pro CPU" aktivieren.
Dann siehst du ganz genau welcher Kern gerade wie viel zu tun hat.

Bei Punkt 1 muss ich widersprechen:
Vista reserviert sich keine Kapazität, es ist unter jedem Betriebssystem so, dass ein Prozess auf nur einem Prozessor ausgeführt werden kann. Und da ein Multicore-Prozessor im Grunde ja einzelne Prozessoren darstellt, wird das OS ein Programm nur auf einem Kern ausführen.
Ob jetzt mehrere Threads reichen, um sich auf alle Kerne zu verteilen, oder ob es wirklich eigenständige Prozesse sein müssen, weiß ich jetzt nicht aus dem Kopf - eigentlich müssten die Threads reichen.
Zumindest kann der Apache mit nur einem Prozess und 20 Threads alle 16 Kerne eines Servers beanspruchen
Bitte warten ..
Mitglied: StefanKittel
06.02.2010 um 20:57 Uhr
Hallo,

du kannst das ganz einfach ausprobieren und mit calc n! einer großen Zahl berechnen lassen.
Nutze mal einen calc und einmal 2xcalc.

Stefan
Bitte warten ..
Mitglied: baldrianforte
06.02.2010 um 21:14 Uhr
Hallo Stefan,

was ist calc? In der API ist das nicht zu finden.
Oder meinst Du, ich sollte mir eine Methode schreiben, die das macht?
Iterativ oder rekursiv?
Bitte warten ..
Mitglied: Pjordorf
06.02.2010 um 21:19 Uhr
Hallo baldrianforte,

Ich bin Student und schreibe in Java meine Programme.
Es geht experimentell darum, in einem riesigen Array das größte Element zu suchen. Rekursiv.

Wie dem auch sei, ist ja auch egal.

Nach etwa 5 Sekunden macht sich der Lüfter bemerkbar. Gucke ich in den Leistungsmonitor von Vista,
wird mir angezeigt, dass die CPU nur zu 50% ausgelastet ist.
1 Kern wird verwendet

Ich habe ein DualCore 2 Duo T8300 2,4GHz pro Kern.
2 kerne vorhanden

Wie kriege ich meinen Rechner dazu, dass der Prozessor zu 100% ausgelastet wird, wenn ich es so möchte? baldrianforte
Als java Entwickler (und dann noch als Student) solltest du vom Multithread Applikation schon mal was gehört haben. Schau doch mal hier Writing multithreaded Java applications oder hier http://java.sun.com/docs/books/tutorial/essential/concurrency/ wie so etwas geht. Dann kannst du auch ohne probleme deine 2 Kerne zu je 100% auslasten.

Peter
Bitte warten ..
Mitglied: LordGurke
06.02.2010 um 21:26 Uhr
Mit calc meint er vermutlich den Windows-Taschenrechner ;)
Bitte warten ..
Mitglied: StefanKittel
06.02.2010 um 22:49 Uhr
in der tat. nichts ist einfacher um cpu last zu erzeugen...
Bitte warten ..
Mitglied: baldrianforte
06.02.2010 um 23:02 Uhr
Der WindowsRechner ist wohl auch nicht auf Multiprozessorbetrieb ausgerichtet. Auch nur 50% Auslastung.
Bitte warten ..
Mitglied: baldrianforte
06.02.2010 um 23:03 Uhr
Danke, Peter. Werde mir das genauer angucken.
Bitte warten ..
Mitglied: StefanKittel
06.02.2010 um 23:24 Uhr
1 x calc laufen lassen = 1 Thread/Process = 50% Last
2 x calc laufen lassen = 2 Thread/Process = 100% Last

1000000000 und dann n! in der wissenschaftlichen Ansicht
Bitte warten ..
Ähnliche Inhalte
Switche und Hubs
SG300 Routing und CPU Auslastung (5)

Frage von mario89 zum Thema Switche und Hubs ...

Apache Server
gelöst Debian CPU Auslastung durch Apache2 sehr hoch (12)

Frage von zeroblue2005 zum Thema Apache Server ...

Windows Server
DCOM-Serverprozess Widows Server 2016 50 Prozent CPU Auslastung (3)

Frage von Kiste zum Thema Windows Server ...

Neue Wissensbeiträge
Multimedia

Raspberry Pi als Digital-Signage-Computer

(1)

Information von BassFishFox zum Thema Multimedia ...

Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(15)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Freigabe aus anderem Netz nicht erreichbar (31)

Frage von McLion zum Thema Router & Routing ...

Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail (24)

Frage von ahstax zum Thema Visual Studio ...

Batch & Shell
Batch Programm verhalten bei shoutdown -p (19)

Frage von Michael-ITler zum Thema Batch & Shell ...

Windows Netzwerk
Netzwerk Neustrukturierung (15)

Frage von IT-Dreamer zum Thema Windows Netzwerk ...