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


Raspberry B+ im Test: Sparsamer Nachfolger für mehr Bastelspaß
Raspberry B+ im Test
Sparsamer Nachfolger für mehr Bastelspaß
  1. Erweiterungsplatinen Der Raspberry Pi bekommt Hüte
  2. Odroid W Raspberry Pi-Klon für Fortgeschrittene
  3. Eric Anholt Langsamer Fortschritt bei Raspberry-Pi-Grafiktreiber

Banana Pi im Test: Bananen sind keine Himbeeren
Banana Pi im Test
Bananen sind keine Himbeeren
  1. Eric Anholt Freier Grafiktreiber für Raspberry Pi von Broadcom
  2. Raspberry Pi Compute Module ist lieferbar
  3. PiUSV im Test Raspberry Pi per USV sauber herunterfahren

Grey Goo angespielt: Echtzeit-Innovation mit grauer Tentakel-Schmiere
Grey Goo angespielt
Echtzeit-Innovation mit grauer Tentakel-Schmiere
  1. Dead Island 2 angespielt Nur ein kopfloser Zombie ist ein guter Zombie
  2. No Man's Sky Wie aus einer Telefonnummer ein Universum entsteht
  3. Cryengine für Oculus Rift Eichhörnchen-Jagd im virtuellen Crysis-Dschungel

  1. EU-Datenschutzreform: Einigung auf Öffnungsklauseln für die Verwaltung
    EU-Datenschutzreform
    Einigung auf Öffnungsklauseln für die Verwaltung

    Im Streit um die EU-Datenschutzreform gibt es der Regierung zufolge "große Fortschritte". Unklar sei noch, wie das "Recht auf Vergessen" geregelt werden soll.

  2. Abzocke: Unbekannte kopieren deutsche Blogs
    Abzocke
    Unbekannte kopieren deutsche Blogs

    Mehrere deutsche Blogs werden von Unbekannten kopiert und unter ähnlichen Domainnamen veröffentlicht. Offenbar sind die Täter auf die Klicks auf Werbebanner aus. Betroffene sollten schnell reagieren.

  3. Digitale Agenda: Ein Papier, das alle enttäuscht
    Digitale Agenda
    Ein Papier, das alle enttäuscht

    Die große Koalition hat am Mittwoch ihr 36-seitiges "Hausaufgabenheft" für den digitalen Wandel vorgestellt. Doch nicht einmal für die Grundvoraussetzung, den Breitbandausbau, finden sich darin konkrete Handlungsschritte. Netzgemeinde, Opposition und Wirtschaft lehnen es gleichermaßen ab.


  1. 19:29

  2. 18:36

  3. 18:21

  4. 17:13

  5. 17:07

  6. 16:45

  7. 16:31

  8. 15:34