Javas Hotspot schneller als C?
-
Schau dir mal die Stellenausschreibungen an für wie viele Leute Java kein Witz ist. Grob geschätzt wird doppelt so viel in Java entwickelt wie in C++ und das aus gutem Grunde. Nicht jeder Entwickler ist ein Geek und programmiert mit Retro-Sprachen, manche Menschen gehen mir der Zukunft
-
Menschen machen Fehler und davon kann man in C++ jede Menge machen. Ist auch gut das selbst Microsoft von der Sprache so langsam abkommt.
-
Der Thread ist mal wieder ein gutes Beispiel, dass die meiste Trollerei in diesem Forum tatsächlich von registrierten Mitgliedern ausgeht und nicht von Gästen. Das Thema war bereits auf Seite 1 erledigt, aber einige Mitglieder hier halten es wohl tatsächlich für angebracht ihr "Computer-Bild Wissen" - wie weiter oben so schön gesagt - verbreiten zu müssen...
-
asfsafqetdg124 schrieb:
Der Thread ist mal wieder ein gutes Beispiel, dass die meiste Trollerei in diesem Forum tatsächlich von registrierten Mitgliedern ausgeht und nicht von Gästen. Das Thema war bereits auf Seite 1 erledigt, aber einige Mitglieder hier halten es wohl tatsächlich für angebracht ihr "Computer-Bild Wissen" - wie weiter oben so schön gesagt - verbreiten zu müssen...
Ich habe gerade mal nachgeguckt. 25 von 33 Beiträgen bis zu dieser Stelle in diesem Thread sind von Unregistrierten.
-
Rodolfi schrieb:
Fakt ist auch das ein Javaprogramm immer optimal auf das gerade verwendete System angepasst ist und vielleicht auch in Zukunft gleich die GPU mit einbeziehen kann.
Man kann in Java keine Programme für eine GPU schreiben. Derzeit gibt es für AMD Stream und OpenCL nur einen C Compiler, für CUDA gibt es C, C++(teilweise) und Fortran (PGI Compiler). Die Art und Weise wie die Programme auf der GPU laufen läßt auch für die nächsten Generationen ausschließen, daß das so etwas wie Java drauf läuft. Dazu fehlen den GPUs Eigenschaften, die für eine JVM notwendig wären.
Wenn man in Java GPU Code nutzt, so ist dieser in C geschrieben und via JNI eingebunden.
-
Du Honk es ging darum das der JIT zusätzlich zu der CPU auch vollautomatisch die GPUs mit nutzen könnte, was er natürlich nicht tut. Man muss ja in Java nicht explizit für mehrere Kerne programmieren sondern der JIT verteilt automatisch den Bytecode auf mehrere Kerne und in Zukunft auch per Netzwerk und vielleicht auch auf GPUs. Theoretisch könnte Java auch auf total unterschiedlichen CPUs gleichzeitig laufen. Das ist alles noch Zukunftsmusik aber das wäre einer der Vorteile einer dynamischen Kompilierung wo irgendwann die alten statischen Kompilate nicht mehr mithalten können weil sie starr für ein System kompiliert wurden.
-
Also nochmal für die Dummen, nicht du aus Java arbeitest mit der GPU sondern der JIT.
-
HonkBuster schrieb:
Also nochmal für die Dummen, nicht du aus Java arbeitest mit der GPU sondern der JIT.
Das geht eben nicht! Da auf der GPU keinerlei Java Code laufen kann.
-
HonkBuster schrieb:
Du Honk es ging darum das der JIT zusätzlich zu der CPU auch vollautomatisch die GPUs mit nutzen könnte, was er natürlich nicht tut. Man muss ja in Java nicht explizit für mehrere Kerne programmieren sondern der JIT verteilt automatisch den Bytecode auf mehrere Kerne und in Zukunft auch per Netzwerk und vielleicht auch auf GPUs. Theoretisch könnte Java auch auf total unterschiedlichen CPUs gleichzeitig laufen. Das ist alles noch Zukunftsmusik aber das wäre einer der Vorteile einer dynamischen Kompilierung wo irgendwann die alten statischen Kompilate nicht mehr mithalten können weil sie starr für ein System kompiliert wurden.
Hör auf zu träumen und komm in die Realität wieder.
-
Gregor schrieb:
asfsafqetdg124 schrieb:
Der Thread ist mal wieder ein gutes Beispiel, dass die meiste Trollerei in diesem Forum tatsächlich von registrierten Mitgliedern ausgeht und nicht von Gästen. Das Thema war bereits auf Seite 1 erledigt, aber einige Mitglieder hier halten es wohl tatsächlich für angebracht ihr "Computer-Bild Wissen" - wie weiter oben so schön gesagt - verbreiten zu müssen...
Ich habe gerade mal nachgeguckt. 25 von 33 Beiträgen bis zu dieser Stelle in diesem Thread sind von Unregistrierten.
Richtig, das widerlegt aber meinen Punkt nicht, dafür musst du dir die Beiträge auch durchlesen und nicht nur zählen.
Siehe die letzten beiden Posts vor mir in diesem Thread: q.e.d.
-
Kein JITer der Welt wird es schaffen ein sequentiell geschriebene Programm auf mehrere Thread zu verteilen. Wer das Glaubt ist ein Träumer! Er solle bitte sich fragen, warum wir jetzt nicht die Software haben oder anfangen dies zu programmieren - Viel Spaß!
-
asfsafqetdg124 schrieb:
Der Thread ist mal wieder ein gutes Beispiel, dass die meiste Trollerei in diesem Forum tatsächlich von registrierten Mitgliedern ausgeht und nicht von Gästen. Das Thema war bereits auf Seite 1 erledigt, aber einige Mitglieder hier halten es wohl tatsächlich für angebracht ihr "Computer-Bild Wissen" - wie weiter oben so schön gesagt - verbreiten zu müssen...
Sicher?
Menschen machen Fehler und davon kann man in C++ jede Menge machen. Ist auch gut das selbst Microsoft von der Sprache so langsam abkommt.
[quote]
Schau dir mal die Stellenausschreibungen an für wie viele Leute Java kein Witz ist. Grob geschätzt wird doppelt so viel in Java entwickelt wie in C++ und das aus gutem Grunde. Nicht jeder Entwickler ist ein Geek und programmiert mit Retro-Sprachen, manche Menschen gehen mir der ZukunftIch persönlich nutze fast nur noch Java und nur ganz wenig C++ weil es für mich folgende Vorteile bietet:
...Wie schon hier geschrieben mit all den Vorteilen die Java dem Programmierer bietet.
Diese Beiträge haben eines gemeinsam: Sie sind offtopic, lenken das Thema in einen typischen Java vs C++ Flamewar und sind von Unregistrierten geschrieben. Komisch, dass dein Kommentar direkt in Anschluss an diese Beiträge kam. Der Rest ist doch eine Diskussion zum Thema. Ich habe noch keinen Trollpost von registrierten Nutzern gelesen. Zumindest hier nicht.
-
Java bietet ja u.a. auch den Vorteil, dass man dafür immer die Javaruntime Umgebung benötigt. Macht sich sicher sehr gut auf einen Mikrocontroller mit sehr wenig Speicher.
[Vorsicht Ironie]
-
Auf alten Handys macht es sich sehr gut...
-
Burkhi schrieb:
Java bietet ja u.a. auch den Vorteil, dass man dafür immer die Javaruntime Umgebung benötigt. Macht sich sicher sehr gut auf einen Mikrocontroller mit sehr wenig Speicher.
200 bis 250 kB sind dafür schon noch notwendig. Gut, vor 20 Jahren war das viel, heute ist es wenig.
-
JAVA ist das nicht die Sprache die:
- nicht standardisiert ist?
- jetzt einer Firma gehört wo sich das OpenOffice-Team und der Erfinder von Java verabschiedet haben?
- von der immer gesagt wird sie ist fast so schnell wie C++, aber jeder der was Performantes machen will doch wieder bei C++ landet?
- es trotz VM Sicherheitslecks und MemoryLeaks gibt?
- write once run überall nicht immer so ganz hinhaut?
- wo sie mal eine Java-CPU für rausbringen wollten?
- wo man nur halb für Programmieren lernen muss weil der Rest der GC macht, egal ob man das will oder nicht?