1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › Emscripten: LLVM-IR im…

Und wozu soll das gut sein?

Anzeige
  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


  1. Und wozu soll das gut sein?

    Autor Lala Satalin Deviluke 04.01.13 - 16:37

    Ich verstehe nicht so recht welche Vorteile das bringen kann.

    Grüße vom Planeten Deviluke!

    Benutzer wird von Ihnen ignoriert. Anzeigen

  2. Re: Und wozu soll das gut sein?

    Autor the_doctor 04.01.13 - 16:56

    Lala Satalin Deviluke schrieb:
    --------------------------------------------------------------------------------
    > Ich verstehe nicht so recht welche Vorteile das bringen kann.

    Warum muss denn alles gleich Vorteile bringen? Man kann ja auch einfach mal die Möglichkeiten ausloten und an die Grenzen des Machbaren gehen, also Grundlagenforschung/-entwicklung. Oder warum sollte man sonst z.B. gigantische Teilchenbeschleuniger bauen? Bringen doch auch keine direkten (geldwerten) Vorteile.

    Und wer weiss was aus dieser Technik sich noch alles heraus entwickelt, oder vielleicht kann man auch einzelne Teile sinnvoll weiterverwenden, evtl. zu ganz anderen Zwecken.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  3. Re: Und wozu soll das gut sein?

    Autor mha9172 04.01.13 - 17:11

    Das macht nichts. Ich nehme an, es gibt sehr, sehr viele Dinge, die du nicht verstehst.

    Ist bei mir und anderen nicht anders, aber "ich und andere" schreien nicht jedes mal, wenn uns mal wieder so was über den Weg läuft (was unbemerkt alle 0.00001 mikro-Sekunden passiert. Mindestens.).

    EDIT, Kommentar: Die Rechtschreibprüfung bestand auf einigen komischen aus einander Schreibungen... OMG.



    1 mal bearbeitet, zuletzt am 04.01.13 17:12 durch mha9172.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  4. Re: Und wozu soll das gut sein?

    Autor developer 04.01.13 - 17:21

    Lala Satalin Deviluke schrieb:
    --------------------------------------------------------------------------------
    > Ich verstehe nicht so recht welche Vorteile das bringen kann.

    Was ist das?
    Blaues Licht.
    Was macht es?
    Es leuchtet blau.

    Whatever you do, do it with: 5 + (sqrt(1-x^2(y-abs(x))^2))cos(30((1-x^2-(y-abs(x))^2))), x is from -1 to 1, y is from -1 to 1.5, z is from -100 to 4.5

    Benutzer wird von Ihnen ignoriert. Anzeigen

  5. Re: Und wozu soll das gut sein?

    Autor Sammie 04.01.13 - 17:56

    Statt C++ in Javascript umzuwandeln, wärs mir lieber, die Browser könnten kompilierte Scripte interpretieren, damit man von der lahmen Javascript-Performance mal weg kommt. Irgendwie klammert man sich viel zu sehr ans Javascript, statt auch mal alternative Methoden zu integrieren, die mehr Vorteile bringen könnten.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  6. Re: Und wozu soll das gut sein?

    Autor Thaodan 04.01.13 - 18:02

    Das frage ich mich auch.

    Wahrung der Menschenrechte oder Freie fahrt am Wochenende.
    -- Georg Schramm

    Benutzer wird von Ihnen ignoriert. Anzeigen

  7. Re: Und wozu soll das gut sein?

    Autor mha9172 04.01.13 - 18:24

    @Sammie

    Aha, du nutzt noch Netscape 4. Probier' doch mal einen Browser von mindestens 2012. Außerdem verwechselst du DOM-Performance mit Javascript Performance - die DOM ist die API des Browsers (zum angezeigten Dokument), das hat NICHTS mit irgendeiner Sprache zu tun. Wenn solche "nach JS compiliert" Sachen im Browser lahm sind, liegt das immer an der DOM, JS ist heutzutage sehr schnell, s.u.

    Javascript selbst konkurriert heutzutage mit compilierten Sprachen. Warum? Es WIRD kompiliert! On the fly. Sogar mehrfach - ändert sich was zur Laufzeit, wird die jeweilige Funktion neu compiliert!

    Das geht heute, die Zeiten, wo man eine .exe (oder binary) mit dem Compiler erzeugen musste, war, als Prozessoren 33 MHz hatten. Heute geht das ON THE FLY, zur Laufzeit. "Skript-Sprachen" vs. "Compiler-Sprachen" gibt es so nicht mehr. Eine JS Laufzeitumgebung hat in der Tat das, was man mal "Interpreter" nannte, aber auch einen compiler. Außerdem hat es das, was man früher nur als extra Werkzeug hatte, zB einen eingebauten Profiler, der die Ausführung beobachtet und immer wieder Code-Pfade NEU COMPILIERT. Ein statischer Compiler dagegen macht nur EINEN Durchgang, und das war's. Bei Javascript wird auf die reale Situation reagiert.

    Dein IT issen ist soooo 1995. Und du hast keine Ausreden: Auf "Du-Röhre" aber auch vimeo findet man genug Videos (Präsentationen von Konferenzen oft), wo Interna moderner Laufzeitumgebungen, zB Google's V8, erklärt werden.

    Ignorance is NOT bliss.



    4 mal bearbeitet, zuletzt am 04.01.13 18:32 durch mha9172.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  8. Re: Und wozu soll das gut sein?

    Autor Sinnfrei 04.01.13 - 18:52

    Jo, ist auch schnell genug ein Mini-Linux in einem JS-x86-Emulator auf einem lahmen PC in 10 Sekunden zu booten: http://bellard.org/jslinux/

    Da kann man grundsätzlich nicht meckern.

    __________________
    ...

    Benutzer wird von Ihnen ignoriert. Anzeigen

  9. Re: Und wozu soll das gut sein?

    Autor Lala Satalin Deviluke 04.01.13 - 19:24

    Solange man nicht H264-Videos in Javascript dekodieren will (was man schon tut oO) ist Javascript doch eigentlich heutzutage schnell genug.

    Grüße vom Planeten Deviluke!

    Benutzer wird von Ihnen ignoriert. Anzeigen

  10. Re: Und wozu soll das gut sein?

    Autor Thaodan 04.01.13 - 20:36

    Es gibt mittlerweile auch PGO für Sachen wie C/C++ und Co.

    Wahrung der Menschenrechte oder Freie fahrt am Wochenende.
    -- Georg Schramm

    Benutzer wird von Ihnen ignoriert. Anzeigen

  11. Re: Und wozu soll das gut sein?

    Autor Moe479 04.01.13 - 21:39

    das liegt wohl am immer wieder eneutem interpretieren/kompiliren von js und dom, durch den browser nicht an der scriptsprache selbst sondern am unclever eingesetzten interpretern/compilern.

    ein pythonscript wird bei erstausführung in einem c-compilat abgelegt, bei erneuter ausführung wird dieses c-compilat verwendet, selbiges wäre durchaus auch für js machbar.

    dem entgegen steht jedoch hochgradig dynamisch generierter code, sowohl beim dom als auch bei js, dieser führt in jedem fall zu einer nötigen neu interpretation duch den browser bei jedem seitenaufruf ...

    die neigung zu sogn. fatclients, also für jedes angebot/jeden service eine eigene applikation bereitzustellen, ob das nun ein browser plugin oder ein eigenständiges programm ist recht antquiert und macht nur bei tatsächlichen permance-engpässen durch allgemein gehaltene interpreter einen wirklich praktischen sinn.

    das bedeutetz keinens falls, dass jede site mit js optimal arbeitet, hier gibt es massiven optimierungsspielraum, anlagog zu der mehrheit aller applikationen egal in welcher sprache sie erstellt worden sind.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  12. Re: Und wozu soll das gut sein?

    Autor DuBistTodIchBinReich 05.01.13 - 00:27

    Wie wäre es mit dart von google? :p

    Das kann mittels Snapshots von geparstem sourcecode auch 5-10 mal schneller starten als javascript...

    Benutzer wird von Ihnen ignoriert. Anzeigen

  13. Re: Und wozu soll das gut sein?

    Autor flow77 05.01.13 - 00:56

    Er bekommt +2 auf das Talent "Epic Engineering".
    Warum sind Menschen auf den Mond geflogen, warum gibt es Menschen die den Mount Everest bestiegen sind, warum, warum. warum?

    Lala Satalin Deviluke schrieb:
    --------------------------------------------------------------------------------
    > Ich verstehe nicht so recht welche Vorteile das bringen kann.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  14. Leider

    Autor hutzlibu 05.01.13 - 01:00

    Leider kann man in Javascript aber immer noch keine Statischen Typen festlegen. Das ist ein großer Performanceverlust.
    Gut, immerhin gibt es inzwischen Typed Arrays ... das ist schon was Tolles für aufwendige 3D Dinge, aber für den Normalgebrauch eher nicht zu verwenden ...

    Benutzer wird von Ihnen ignoriert. Anzeigen

  15. Re: Leider

    Autor pythoneer 05.01.13 - 03:07

    hutzlibu schrieb:
    --------------------------------------------------------------------------------
    > Leider kann man in Javascript aber immer noch keine Statischen Typen
    > festlegen. Das ist ein großer Performanceverlust.
    > Gut, immerhin gibt es inzwischen Typed Arrays ... das ist schon was Tolles
    > für aufwendige 3D Dinge, aber für den Normalgebrauch eher nicht zu
    > verwenden ...

    Erkläre mir bitte den Zusammenhang zwischen "keine Statischen Typen" und "ein großer Performanceverlust" danke :)

    Benutzer wird von Ihnen ignoriert. Anzeigen

  16. Re: Leider

    Autor Moe479 05.01.13 - 06:00

    jup, versteht keine sau, das einzige was statische typen sparen können sind speicher, darüber hinaus rennt bei nicht einhaltung/überschreiten des adressierten speichers für eine variable eines typs die anwendung in einen fehler, dieses manchmal gewünschte verhalten lässt sich jedoch durch explizites casten auch in typen ungenauen sprachen erzwingen.

    ein guter interpreter/compiler einer untypisierten programmierung wird immer den zur laufzeit performantesten umsatz auf eine typisierte umgebung suchen, beim typwechsel einer variable muss er ja explizit casten und ggf. speicher neuadressieren, sofern an der alten stelle nicht genug platz für den neuen typ ist. was als performant gilt bestimmt die umgebung, z.B. ob speicherplatz knapp ist und dieser geschont werden soll oder man grossräumig adressieren kann um beim casten weniger neuadressierungsvorgänge zu provozieren.

    in diesem sinne können untypisierte anwendungen durch entsprechend 'intelligente' interpreter/compiler ihr laufzeitverhalten sogar allgemein besser an wechselnde umgebungen anpassen.



    1 mal bearbeitet, zuletzt am 05.01.13 06:04 durch Moe479.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  17. Re: Leider

    Autor bebbo 05.01.13 - 08:37

    Moe479 schrieb:
    --------------------------------------------------------------------------------
    > jup, versteht keine sau,

    zum Glueck bin ich keine...

    > das einzige was statische typen sparen können sind
    > speicher,

    Das Problem ist, dass in Javascript zur Laufzeit beliebige Attribute hinzugefuegt werden koennen.

    Bei solchen dynamischen Objekten werden die Attribute meist in einer HashMap gehalten.

    Bei jedem Zugriff auf ein Attribut muss in der HashMap nachgeschlagen werden.

    Und das ist deutlich langsamer, als ein Zugriff mittels Offset und Pointer.


    Bebbo

    Benutzer wird von Ihnen ignoriert. Anzeigen

  18. Re: Leider

    Autor DuBistTodIchBinReich 05.01.13 - 15:07

    Ich glaube hier wird eine dynamisches Typisierung mit dynamischen Objekten verwechselt.

    Dynamische Typen sind für die Performance nur sehr bedingt ausschlaggeben, da kann man in der VM viel optimieren für.

    Dynamische Objekte hingegen sind perfekt um die Performance einer app zu killen :D

    Benutzer wird von Ihnen ignoriert. Anzeigen

  19. Re: Und wozu soll das gut sein?

    Autor Gamma Ray Burst 05.01.13 - 19:58

    Spaß:

    "This was done mainly as a fun hacking project over the holidays, but I'm posting it here in case anyone thinks it might be useful for something - maybe to teach people LLVM IR in a simple way (no need to install anything, just visit a website). If it is potentially useful it can be optimized and polished etc."

    Vielleicht als Lernumgebung fuer LLVM? Ansonsten sehe ich da eher einen geringen Nutzen.

    Wozu sollte man C++ Code im Browser kompilieren, wenn man das viel besser vorher machen kann?

    "Die Website ist gleich oben! Warte nur auf das Ende des Compilevorganges! ....."

    Easy things made complicated....only because of boredom

    Benutzer wird von Ihnen ignoriert. Anzeigen

  20. Re: Und wozu soll das gut sein?

    Autor cronos3k 05.01.13 - 22:39

    Das ist eine gute frage, hab dazu eine Antwort, man könnte das ja dazu nutzen ein 3D FPS Game in Browser laufen zu lassen um mahl zu zeigen was jetzt damit so alles möglich ist und tatsächlich da gibt es auch ein Projekt „BananaBread 3D first person shooter game compiled to JS+WebGL“:

    https://developer.cdn.mozilla.net/media/uploads/demos/a/z/azakai/3baf4ad7e600cbda06ec46efec5ec3b8/bananabread_1348775105_demo_package/index.html

    Benutzer wird von Ihnen ignoriert. Anzeigen

  1. 1
  2. 2

Neues Thema Ansicht wechseln


Entschuldigung, nur registrierte Benutzer dürfen in diesem Forum schreiben. Klicken Sie hier um sich einzuloggen


Anzeige

Haben wir etwas übersehen?

E-Mail an news@golem.de


Programmcode: Ist das Kunst?
Programmcode
Ist das Kunst?
  1. Shamu Hinweise auf neues Nexus-Smartphone verdichten sich
  2. Translate Community Nutzer sollen Google-Übersetzungen verbessern
  3. Google-Suchergebnisse EU-Datenschützer verlangen weltweite Löschung

Nokia Lumia 930 im Test: Das Beste zum Schluss
Nokia Lumia 930 im Test
Das Beste zum Schluss
  1. Lumia 930 Nokias Windows-Phone-Referenz ab kommender Woche erhältlich
  2. Nokia Lumia 930 Windows-Phone-Referenzklasse kommt im Juli
  3. Smartphone Das schnellere 64-Bit-Déjà-vu

Destiny angespielt: Schöne Grüße vom Master Chief
Destiny angespielt
Schöne Grüße vom Master Chief
  1. Bungie Beta von Destiny für alle Spieler
  2. Bungie Drei Betakeys für Destiny
  3. Activison Destiny ungeschnitten "ab 16" und mit US-Tonspur

  1. Orbit: Runtastic präsentiert neuen Fitness-Tracker
    Orbit
    Runtastic präsentiert neuen Fitness-Tracker

    Mit dem Orbit hat Runtastic ein neues Fitness-Wearable vorgestellt, das am Arm und als Clip an der Kleidung getragen werden kann. Orbit verfügt über eine eigene Auswertungs-App, ist aber auch mit Runtastics verbreiteter Lauf-Anwendung kompatibel.

  2. Accelerated Processing Unit: Drei 65-Watt-Kaveri im Handel erhältlich
    Accelerated Processing Unit
    Drei 65-Watt-Kaveri im Handel erhältlich

    AMD hat sein Desktop-Portfolio um drei neue Kaveri-APUs erweitert: Der A10-7800 ist das schnellste 65-Watt-Modell, die beiden kleineren Varianten A8-7600 und A6-7400K runden das Angebot ab.

  3. F1 2014: New-Gen-Konsolen fahren hinterher
    F1 2014
    New-Gen-Konsolen fahren hinterher

    Codemasters kündigt zwei Formel-1-Rennspiele an: Bereits im Oktober 2014 erscheint eines für Playstation 3, Xbox 360 und PC. Die neuen Konsolen bekommen erst im Lauf des nächsten Jahres ein neues Programm.


  1. 15:29

  2. 14:36

  3. 14:32

  4. 14:02

  5. 13:32

  6. 13:28

  7. 13:09

  8. 13:00